diff --git a/route/router.go b/route/router.go index adbdbd20..226fffea 100644 --- a/route/router.go +++ b/route/router.go @@ -779,7 +779,7 @@ func (r *Router) RouteConnection(ctx context.Context, conn net.Conn, metadata ad if sniffMetadata != nil { metadata.Protocol = sniffMetadata.Protocol metadata.Domain = sniffMetadata.Domain - if metadata.InboundOptions.SniffOverrideDestination && M.IsDomainName(metadata.Domain) { + if metadata.InboundOptions.SniffOverrideDestination && M.IsDomainName(metadata.Domain) && !metadata.FakeIP { metadata.Destination = M.Socksaddr{ Fqdn: metadata.Domain, Port: metadata.Destination.Port, @@ -906,7 +906,7 @@ func (r *Router) RoutePacketConnection(ctx context.Context, conn N.PacketConn, m if sniffMetadata != nil { metadata.Protocol = sniffMetadata.Protocol metadata.Domain = sniffMetadata.Domain - if metadata.InboundOptions.SniffOverrideDestination && M.IsDomainName(metadata.Domain) { + if metadata.InboundOptions.SniffOverrideDestination && M.IsDomainName(metadata.Domain) && !metadata.FakeIP { metadata.Destination = M.Socksaddr{ Fqdn: metadata.Domain, Port: metadata.Destination.Port,