diff --git a/app/dispatcher/default.go b/app/dispatcher/default.go index 58c6a05c..a7269434 100644 --- a/app/dispatcher/default.go +++ b/app/dispatcher/default.go @@ -293,8 +293,8 @@ func (d *DefaultDispatcher) Dispatch(ctx context.Context, destination net.Destin ob.RouteTarget = destination if sniffingRequest.IgnoreClientIp { ips, err := d.dns.LookupIP(domain, dns.IPOption{ - IPv4Enable: ob.OriginalTarget.Address.Family().IsIPv4(), - IPv6Enable: !ob.OriginalTarget.Address.Family().IsIPv4(), + IPv4Enable: ob.OriginalTarget.Address.Family().IsIPv4() || ob.OriginalTarget.Address.Family().IsDomain(), + IPv6Enable: ob.OriginalTarget.Address.Family().IsIPv6(), FakeEnable: false, }) if len(ips) == 0 || err != nil { @@ -360,8 +360,8 @@ func (d *DefaultDispatcher) DispatchLink(ctx context.Context, destination net.De ob.RouteTarget = destination if sniffingRequest.IgnoreClientIp { ips, err := d.dns.LookupIP(domain, dns.IPOption{ - IPv4Enable: ob.OriginalTarget.Address.Family().IsIPv4(), - IPv6Enable: !ob.OriginalTarget.Address.Family().IsIPv4(), + IPv4Enable: ob.OriginalTarget.Address.Family().IsIPv4() || ob.OriginalTarget.Address.Family().IsDomain(), + IPv6Enable: ob.OriginalTarget.Address.Family().IsIPv6(), FakeEnable: false, }) if len(ips) == 0 || err != nil {