Explorar o código

Sniff: Fix fakedns+others

风扇滑翔翼 hai 1 ano
pai
achega
0616e92c25
Modificáronse 1 ficheiros con 2 adicións e 2 borrados
  1. 2 2
      app/dispatcher/default.go

+ 2 - 2
app/dispatcher/default.go

@@ -226,8 +226,8 @@ func (d *DefaultDispatcher) shouldOverride(ctx context.Context, result SniffResu
 		if strings.HasPrefix(protocolString, p) || strings.HasPrefix(p, protocolString) {
 		if strings.HasPrefix(protocolString, p) || strings.HasPrefix(p, protocolString) {
 			return true
 			return true
 		}
 		}
-		if fkr0, ok := d.fdns.(dns.FakeDNSEngineRev0); ok && protocolString != "bittorrent" && p == "fakedns" &&
-			fkr0.IsIPInIPPool(destination.Address) {
+		if fkr0, ok := d.fdns.(dns.FakeDNSEngineRev0); ok && protocolString != "bittorrent" && strings.HasPrefix(p, "fakedns") &&
+			(fkr0.IsIPInIPPool(destination.Address) || p == "fakedns+others") {
 			errors.LogInfo(ctx, "Using sniffer ", protocolString, " since the fake DNS missed")
 			errors.LogInfo(ctx, "Using sniffer ", protocolString, " since the fake DNS missed")
 			return true
 			return true
 		}
 		}