diff --git a/adapter/outbound/util.go b/adapter/outbound/util.go index 0b859630..d5219131 100644 --- a/adapter/outbound/util.go +++ b/adapter/outbound/util.go @@ -104,7 +104,7 @@ func resolveUDPAddrWithPrefer(network, address string, prefer C.DNSPrefer) (*net ip = fallback } default: - // C.IPv4Prefer, C.DualStack and other + // C.IPv4Prefer, C.DualStack and other var ips []netip.Addr ips, err = resolver.ResolveAllIPProxyServerHost(host) var fallback netip.Addr @@ -119,7 +119,10 @@ func resolveUDPAddrWithPrefer(network, address string, prefer C.DNSPrefer) (*net } } } - ip = fallback + + if !ip.IsValid() && fallback.IsValid() { + ip = fallback + } } }