DNS-Fehler in einer HTTP-Proxy-Kette: Welche Station löst den Namen auf?
Trennen Sie beim Diagnostizieren eines verketteten Forward-Proxys das Erreichen des lokalen Proxys, das Auflösen des Parent und das Auflösen der Website.
client → local forward proxy → HTTP parent → websiteBeginnen Sie mit dem fehlschlagenden Namen, statt zu sagen, alles DNS gehöre „dem Proxy“:
| Benötigter Name | Station, die ihn erreichen muss |
|---|---|
| Endpunkt des lokalen Proxys | Der Client |
| Endpunkt des HTTP-Parent | Der lokale Forward-Proxy |
| Endpunkt der Website | Der Parent, wenn er die endgültige Verbindung öffnet |
Diese Stationen können unterschiedliche Resolver verwenden, wenn die Endpunkte Hostnamen sind. Bei HTTPS kann ein Forward-Proxy Zielhost und Port von CONNECT an den Parent weitergeben, der die endgültige Verbindung herstellt. Der ursprüngliche Client muss die Website nicht zuerst auflösen. Auch die einfache HTTP-Weiterleitung trägt Zielinformationen weiter.
Das ist kein Versprechen, dass genau eine Maschine jeden Namen abfragt. ACL-Auswertung, Caching, Richtlinien und Implementierungsdetails können zusätzliche Lookups verursachen.
Prüfen Sie die Fallback-Richtlinie, wenn der Parent nicht verfügbar ist. Ist direkter Zugriff erlaubt, kann der lokale Proxy zur websitezugewandten Station werden, mit eigenen Resolver- und Quelladress-Entscheidungen. Allein die Konfiguration eines Parent belegt nicht, dass jede Anfrage ihn genutzt hat.
Bei einem Fehler identifizieren Sie den Namen und den Prozess, der ihn auflösen will, bevor Sie eine hosts-Datei bearbeiten. Eine Änderung auf Clientseite kann nicht jede nachgelagerte Entscheidung reparieren. Die endgültige öffentliche Quelle gehört zur Station, die die Website-Verbindung öffnet; diese Quelle zu beobachten ist nicht dasselbe wie zu messen, wo DNS stattfand.