Awarie DNS w łańcuchu proxy HTTP: który przeskok rozwiązuje nazwę?
Przy diagnozie łańcuchowego proxy przekazującego rozdziel dotarcie do lokalnego proxy, rozwiązanie rodzica i rozwiązanie witryny.
client → local forward proxy → HTTP parent → websiteZacznij od nazwy, która zawodzi, zamiast twierdzić, że cały DNS należy „do proxy”:
| Wymagana nazwa | Przeskok, który musi do niej dotrzeć |
|---|---|
| Punkt końcowy lokalnego proxy | Klient |
| Punkt końcowy rodzica HTTP | Lokalne proxy przekazujące |
| Punkt końcowy witryny | Rodzic, gdy otwiera końcowe połączenie |
Te przeskoki mogą używać różnych resolverów, gdy punkty końcowe są nazwami hostów. W HTTPS proxy przekazujące może podać rodzicowi host i port celu z CONNECT, a rodzic nawiązuje końcowe połączenie. Pierwotny klient nie musi najpierw rozwiązywać witryny. Zwykłe przekazywanie HTTP również przenosi informacje o celu dalej.
To nie jest obietnica, że każdej nazwy pyta dokładnie jedna maszyna. Ocena ACL, buforowanie, polityka i szczegóły implementacji mogą powodować dodatkowe zapytania.
Sprawdź politykę awaryjną, gdy rodzic jest niedostępny. Jeśli dostęp bezpośredni jest dozwolony, lokalne proxy może stać się przeskokiem zwróconym do witryny, z własnymi decyzjami dotyczącymi resolvera i adresu źródłowego. Sama konfiguracja rodzica nie dowodzi, że każde żądanie go użyło.
Przy awarii ustal nazwę i proces, który próbuje ją rozwiązać, zanim zmodyfikujesz plik hosts. Zmiana po stronie klienta nie naprawi każdej późniejszej decyzji. Końcowe publiczne źródło należy do przeskoku, który otwiera połączenie z witryną; obserwowanie tego źródła nie jest tym samym co pomiar, gdzie doszło do DNS.