Odpytywanie JSON API Google Public DNS przez proxy HTTP
Pobieraj rekordy DNS przez żądanie HTTPS przechodzące przez proxy, zachowując API resolwera oddzielnie od własnego wyszukiwania nazwy hosta przez proxy.
Proxy HTTP może przenieść żądanie do usługi DNS-over-HTTPS. Dla interfejsu JSON Google Public DNS jawne zapytanie może wyglądać tak:
curl --fail --proxy http://proxy.example.net:8080 --noproxy "" \
--get --data-urlencode "name=example.net" \
--data-urlencode "type=A" \
https://dns.google/resolve
Proxy przenosi połączenie HTTPS do dns.google. Lista proxy HTTP to jedno z miejsc, w których można wybrać kandydata do tego publicznego zapytania, gdy dostęp przez publiczne proxy jest dozwolony. Resolver Google odpowiada na parametr name. Nie jest to prośba do proxy o zwrócenie własnego cache DNS ani zmiana konfiguracji DNS używanej przez inne aplikacje.
Czytaj Status w JSON i zwrócone rekordy, nie tylko status HTTP. Poprawnie dostarczona odpowiedź HTTP może opisywać błąd DNS. Zmień type na potrzebny rekord, na przykład AAAA lub MX; jedno zapytanie A nie jest pełnym wykazem wszystkich typów rekordów.
Format JSON tego punktu końcowego to udokumentowane API Google. Standardowe klienty DoH w formacie przewodowym używają zamiast tego komunikatów DNS i application/dns-message. Zwykłe wywołanie nslookup nie uzyskuje żadnego z tych dwóch interfejsów HTTP tylko dlatego, że ustawiono HTTPS_PROXY.