Clash: [Frage] Die Rolle des Fallbacks in DNS

Erstellt am 17. Apr. 2020  ·  6Kommentare  ·  Quelle: Dreamacro/clash

Konfigurieren Sie dies beispielsweise in der Konfiguration wie folgt

dns:
  enable: true
  listen: :53
  enhanced-mode: redir-host
  nameserver:
    - 223.5.5.5
  fallback:
    - 8.8.8.8

Meine Frage ist, was macht Fallback?

Ich habe diesen Artikel gelesen: Die Auswirkungen der DNS-Verschmutzung auf Clash (für Windows)

In dem Artikel heißt es, dass gleichzeitige Anforderungen vom DNS im Nameserver und im Fallback gestellt werden und das erste Antwortergebnis im Nameserver als Benchmark ausgewählt wird. Verwenden Sie GEOIP, um den Bereich dieser IP zu bestimmen. Wenn sie zum Land (CN) oder zu einer reservierten Adresse gehört, antwortet sie direkt auf den Client In diesem Fall wird das Ergebnis im Fallback an den Client beantwortet

In dem Artikel heißt es jedoch auch, dass Clash zu diesem Zeitpunkt immer noch normal funktionieren kann, wenn festgestellt wird, dass für die verschmutzte IP ein Proxy erforderlich ist. Dies liegt daran, dass Clash diese IP-Adresse nicht tatsächlich an den Proxyserver sendet, sondern den Host direkt an den Proxyserver sendet. Die DNS-Auflösung wird auf dem Proxyserver durchgeführt, damit die Anforderung eine geeignetere IP-Adresse erhalten und die CDN-Ressourcen besser nutzen kann.

Ich bin verwirrt, dass, da der Nameserver die verschmutzte IP direkt bestimmen kann, die verschmutzte IP den Host direkt an den Proxyserver sendet und der Proxyserver die korrekte und CDN-freundliche IP auflöst. Ist kein Fallback erforderlich?

Ich weiß, ich muss etwas falsch denken, ich bin hier, um um Rat zu bitten, lach mich nicht aus ...

question

Hilfreichster Kommentar

Die verschmutzte IP kann nicht beurteilt werden, aber wenn die vom ersten DNS zurückgegebene GeoIP nicht CN ist, wird der Wert der Fallback-DNS verwendet. Da sich die verschmutzte GeoIP ausschließlich in Übersee befindet, kann ein Konflikt eine Verschmutzung von diesem Niveau verhindern. Natürlich ist dies die Voraussetzung Stellen Sie den DNS vor der Fallback-Gruppe ein (z. B. verschmutzungsfreies DNS (Grundauslöschung in der Wand) über nicht standardmäßige Ports, DNS über TLS / HTTPS).
Sie können auf folgende Adresse verweisen: https://github.com/Dreamacro/clash/issues/621#issuecomment -614702773

Selbst wenn das cfw-Wiki kontaminiert ist, bedeutet dies, dass wenn die aktuelle Verbindungsabgleichsregel zu einem Proxy führt, durch einen Konflikt die von der IP initiierte Verbindung in ihren ursprünglichen Hostnamen geändert und an den Remote-Knoten gesendet wird, also sogar an den Client / Browser erhält die verschmutzte IP und hat keinen Einfluss auf die endgültige Verbindung, da die verschmutzte IP verworfen wurde, wenn sie per Konflikt an den Remote-Proxy gesendet wird und der ursprüngliche Hostname erneut angewendet wird, der umgeleitet wird. Der Ursprung des Namens des Hostmodus.
Siehe auch: Informationen zum DNS-Auflösungsverhalten in der Proxy-Umgebung | Sukkas Blog

Alle 6 Kommentare

Die eingebaute DNS dient zur Lösung des DNS-Auflösungsproblems des transparenten Proxys. Es ist nicht erforderlich, sie für den normalen Gebrauch zu öffnen

Die verschmutzte IP kann nicht beurteilt werden, aber wenn die vom ersten DNS zurückgegebene GeoIP nicht CN ist, wird der Wert der Fallback-DNS verwendet. Da sich die verschmutzte GeoIP ausschließlich in Übersee befindet, kann ein Konflikt eine Verschmutzung von diesem Niveau verhindern. Natürlich ist dies die Voraussetzung Stellen Sie den DNS vor der Fallback-Gruppe ein (z. B. verschmutzungsfreies DNS (Grundauslöschung in der Wand) über nicht standardmäßige Ports, DNS über TLS / HTTPS).
Sie können auf folgende Adresse verweisen: https://github.com/Dreamacro/clash/issues/621#issuecomment -614702773

Selbst wenn das cfw-Wiki kontaminiert ist, bedeutet dies, dass wenn die aktuelle Verbindungsabgleichsregel zu einem Proxy führt, durch einen Konflikt die von der IP initiierte Verbindung in ihren ursprünglichen Hostnamen geändert und an den Remote-Knoten gesendet wird, also sogar an den Client / Browser erhält die verschmutzte IP und hat keinen Einfluss auf die endgültige Verbindung, da die verschmutzte IP verworfen wurde, wenn sie per Konflikt an den Remote-Proxy gesendet wird und der ursprüngliche Hostname erneut angewendet wird, der umgeleitet wird. Der Ursprung des Namens des Hostmodus.
Siehe auch: Informationen zum DNS-Auflösungsverhalten in der Proxy-Umgebung | Sukkas Blog

  • nameserver der Server in nicht verschmutzt ist (z. B. ein lokal erstellter, umweltfreundlicher DNS-Server), muss fallback nicht festgelegt werden
  • Wenn die Regeln mit Proxy übereinstimmen, verwenden sie einfach nicht die aufgelöste IP und senden den Domänennamen direkt an den Proxyserver, wodurch das CDN-Problem gelöst wird.
  • Wenn die Regel mit DIRECT übereinstimmt, wird direkt eine Verbindung zur aufgelösten IP hergestellt

.

  • Bei Verwendung des Socks5 / Http (s) -Proxys muss das System die Ziel-IP-Adresse für die Verbindung nicht kennen. Senden Sie einfach die Domänennamenanforderung an den Proxyserver.
  • Bei Verwendung eines transparenten Proxys enthält das Paket, das Clash erhält, keine Domänennameninformationen, da es sich um eine Standard-TCP / IP-Implementierung handelt. Daher muss Clash die integrierte DNS-Funktion verwenden, um eine IP <-> -Domänennamenzuordnung durchzuführen, damit Clash das System senden kann Die DST-IP im TCP / UDP-Paket wird auf den Domänennamen zurückgesetzt und die Regel wird abgeglichen

.
Mein Verständnis sollte korrekt sein? @Dreamacro
ps: Clashs Dokumentation ist wirklich nicht sehr detailliert, überprüfe die Informationen überall ...

  • nameserver der Server in nicht verschmutzt ist (z. B. ein lokal erstellter, umweltfreundlicher DNS-Server), muss fallback nicht festgelegt werden
  • Wenn die Regeln mit Proxy übereinstimmen, verwenden sie einfach nicht die aufgelöste IP und senden den Domänennamen direkt an den Proxyserver, wodurch das CDN-Problem gelöst wird.
  • Wenn die Regel mit DIRECT übereinstimmt, wird direkt eine Verbindung zur aufgelösten IP hergestellt

.

  • Bei Verwendung des Socks5 / Http (s) -Proxys muss das System die Ziel-IP-Adresse für die Verbindung nicht kennen. Senden Sie einfach die Domänennamenanforderung an den Proxyserver.
  • Bei Verwendung eines transparenten Proxys enthält das Paket, das Clash erhält, keine Domänennameninformationen, da es sich um eine Standard-TCP / IP-Implementierung handelt. Daher muss Clash die integrierte DNS-Funktion verwenden, um eine IP <-> -Domänennamenzuordnung durchzuführen, damit Clash das System senden kann Die DST-IP im TCP / UDP-Paket wird auf den Domänennamen zurückgesetzt und die Regel wird abgeglichen

.
Mein Verständnis sollte korrekt sein? @Dreamacro
ps: Clashs Dokumentation ist wirklich nicht sehr detailliert, überprüfe die Informationen überall ...

Entschuldigen Sie, wenn es nicht als transparenter Proxy, sondern nur als Client verwendet wird, hat die Verwendung von Redir-Host eine Auflösung mehr als der gefälschte IP-Modus (vorausgesetzt, es gibt sogar einen Proxy-Domain-Namen), oder sind alle gleich?

@ akw5454521
Der Fake-IP-Modus beinhaltet eigentlich keine DNS-Auflösung. Nachdem der Konflikt die DNS-Anforderung empfangen hat, sendet er die reservierte IP direkt an den Benutzer und stellt über den Domänennamen in der DNS-Anforderung eine Verbindung zum Remote-Server direkt über socks5 her und geht dann über die reservierte IP-Adresse und zurück Der Benutzer stellt die eigentliche Verbindung her
Der Redir-Host-Modus muss analysiert werden, und das analysierte Ergebnis ist nur dann von Bedeutung, wenn es mit der Regel für direkte Verbindungen übereinstimmt (stellt direkt eine Verbindung her). Es spielt keine Rolle, ob das analysierte Ergebnis des Domainnamens, der als Proxy verwendet werden muss, gefälscht ist, da dieser Schritt mit dem obigen Fake-IP identisch ist Der zu erreichende Zweck ist der gleiche, nur für den Benutzer und den Konflikt, um die Entsprechung zwischen dem Domänennamen und der IP herzustellen. Die Anforderung an den Remote-Server ist der Domänenname anstelle der aufgelösten IP.

Was das Geschwindigkeitsproblem betrifft, fälschen Sie die IP-Adresse so lange wie möglich

Ich möchte fragen, ob im Redir-Host-Modus, wenn GeoIP feststellt, dass es sich nicht um CN handelt, es zurückfällt und wenn es gleichzeitig die Proxy-Bedingungen erfüllt, der Host direkt zur Analyse an die Fernbedienung gesendet wird, dh ob die vom Client empfangene IP Es spielt keine Rolle, ob es wahr ist (denn wenn festgestellt wird, dass der Agent vom Remote-Ende aufgelöst werden muss), möchte ich fragen, was die Bedeutung der Fallback-Gruppe ist. Es ist besser, die Verschmutzung direkt im Nameserver zu verwenden. Sie muss jedoch vom Remote-Ende aufgelöst werden.
(Ps: Ich persönlich denke, dass der Fallback nur dann wirklich funktioniert, wenn ein Domain-Name kontaminiert ist und festgestellt wird, dass es sich nicht um einen Proxy handelt.)

Darüber hinaus kann es bei der Anforderung der DNS im Fallback zu einer sehr hohen Verzögerung kommen (z. B. tls: //dns.google usw. ), sodass der Client zu lange wartet.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen