Un proxy HTTP può trasportare una richiesta verso un servizio DNS-over-HTTPS. Per l'interfaccia JSON di Google Public DNS, una query esplicita può essere:

curl --fail --proxy http://proxy.example.net:8080 --noproxy "" \
  --get --data-urlencode "name=example.net" \
  --data-urlencode "type=A" \
  https://dns.google/resolve

Il proxy trasporta la connessione HTTPS verso dns.google. L'elenco di proxy HTTP è un luogo in cui scegliere un candidato per questa query pubblica, dove l'accesso tramite proxy pubblici è consentito. Il resolver di Google risponde al parametro name. Non è una richiesta al proxy di restituire la propria cache DNS, né una modifica alla configurazione DNS usata da altre applicazioni.

Leggi lo Status nel JSON e i record restituiti, non solo lo stato HTTP. Una risposta HTTP consegnata correttamente può descrivere un errore DNS. Cambia type nel record necessario, ad esempio AAAA o MX; una singola query A non è un inventario completo di ogni tipo di record.

Il formato JSON di questo endpoint è un'API Google documentata. I client DoH standard in formato wire usano invece messaggi DNS e application/dns-message. Una normale chiamata nslookup non ottiene nessuna delle due interfacce HTTP solo perché HTTPS_PROXY è impostata.

Articoli correlati