From c889b1dcfaba2bd700f38a3d99f2225719dbf39b Mon Sep 17 00:00:00 2001 From: Meo597 Date: Sat, 22 Feb 2025 12:07:22 +0800 Subject: [PATCH] Sniff: SniffingObject.ignoreClientIp, If the client is requesting a domain name, it can only be overridden to an IPv4 address --- app/dispatcher/default.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) 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 {