Confrontare i risultati dei server DNS su iPhone
Ricerca DNS in Linkalyst può inviare la stessa domanda al DNS di sistema e a un massimo di altri quattro resolver contemporaneamente. Questa guida spiega come impostare un confronto e come leggere le risposte, compresi i punti in cui è facile trarre conclusioni affrettate.
Che cosa fa un confronto
Un confronto invia una sola query, con lo stesso nome di dominio e lo stesso tipo di record, a più resolver nello stesso istante: il DNS di sistema, cioè il resolver che il dispositivo usa sulla rete attuale, e fino a quattro resolver scelti da te. Ognuno ha il proprio protocollo: UDP o TCP per il DNS standard, DNS over HTTPS (DoH) o DNS over TLS (DoT) per il DNS cifrato.
Tra i resolver preimpostati ci sono Cloudflare, Google e DNSPod, oppure puoi inserire un server tuo. Un server DoH personalizzato richiede un indirizzo senza credenziali che termini con /dns-query o /; per il DoT imposti l’host a cui connetterti e il nome con cui verificarne il certificato.
Le query partono solo da Linkalyst. Le impostazioni DNS del dispositivo restano come sono.
Imposta un confronto
Bastano pochi tocchi:
- Apri Ricerca DNS e scegli «Confronta» in alto.
- Inserisci un dominio, per esempio quello di un sito che si carica lentamente, e scegli un tipo di record. A chiede indirizzi IPv4, AAAA indirizzi IPv6.
- Lascia selezionato «DNS di sistema» per includere il tuo resolver attuale. Puoi deselezionarlo, ma un confronto richiede almeno due resolver.
- In «Protocollo per i provider aggiunti» scegli UDP, TCP, DoH o DoT, poi tocca il cerchio accanto a un provider per aggiungerlo. «Server personalizzato» aggiunge il tuo; tocca la freccia di un resolver aggiunto per modificarlo.
- Avvia il confronto. Un’esecuzione comprende fino a cinque resolver.
Puoi combinare protocolli diversi, per esempio lo stesso provider via UDP e via DoH, per vedere se il protocollo fa differenza sulla tua rete.
Leggi i tempi di risposta
Ogni riga mostra quanto ha impiegato quel resolver in questa esecuzione. «Il più veloce di questo turno» indica il resolver più rapido tra quelli che hanno risposto. Vale solo per questa esecuzione: Linkalyst non sceglie un server migliore, e un solo turno dice poco.
Inoltre i tempi non sono misurati allo stesso modo per tutti i resolver. Per un resolver che aggiungi, ogni query apre una nuova connessione, quindi il suo tempo include l’apertura della connessione e, per DoH e DoT, l’handshake TLS. Il DNS di sistema non indica come ha raggiunto il suo server e può rispondere da una cache: un tempo molto breve del DNS di sistema per un nome comune potrebbe quindi riguardare una query che non è mai uscita dal dispositivo. Espandi una riga e apri «Risposta completa» per vedere queste condizioni.
Come contesto generale: nell’uso quotidiano il DNS cifrato di solito mantiene aperta la connessione tra una query e l’altra, perciò un tempo misurato su una connessione nuova ne sovrastima il costo.
Quando le risposte sono diverse
Se i resolver restituiscono record diversi, Linkalyst mostra «I resolver hanno restituito record diversi» e segna con «Diverso» le righe che si discostano dalla risposta più comune. L’ordine dei record non conta come differenza.
Risposte diverse sono spesso normali. I grandi siti e le reti di distribuzione dei contenuti rispondono con indirizzi vicini al punto da cui sembra arrivare la query, e ogni resolver interroga dalla propria posizione, quindi due risposte corrette possono essere diverse. Le risposte differiscono anche quando un resolver filtra certi domini, quando un record è appena cambiato e le cache non sono ancora aggiornate, o quando una rete riscrive le risposte DNS.
Per verificare un indirizzo, passa a «Query», cerca il nome con il resolver in questione e inserisci un indirizzo del risultato in Test di latenza o in Verifica porta.
Nessun record, oppure un errore
Un resolver che risponde senza record è diverso da uno che non si è potuto raggiungere. Espandi una riga per sapere quale dei due:
- NXDOMAIN, mostrato come «Il dominio non esiste»: il resolver indica che il nome non esiste.
- NODATA: il nome esiste ma non ha record del tipo richiesto, per esempio una query AAAA per un nome che ha solo indirizzi IPv4.
- Un timeout: nessuna risposta completa entro cinque secondi; per un resolver che hai aggiunto, questo tempo include la connessione. Un timeout non significa che il nome non esista.
- Un errore. «Risposta completa» ne mostra il «Livello dell’errore»: «Connessione» quando il server non è raggiungibile, TLS quando la connessione sicura non si è potuta stabilire o verificare, HTTP quando un server DoH ha risposto con uno stato di errore o con qualcosa che non è DNS, e DNS quando la risposta era malformata o segnalava un errore del server.
Il DNS di sistema non fornisce il codice di risposta: per lui vedi solo che non c’erano record, non se si trattava di NXDOMAIN o di NODATA.
Se DoH o DoT non riescono mentre UDP verso lo stesso provider funziona, la rete potrebbe bloccare o intercettare il DNS cifrato. Alcune reti pubbliche, scolastiche e aziendali lo fanno, e il DoT, che usa una porta propria (853 per impostazione predefinita), è il più facile da bloccare. Linkalyst in quel caso non ripiega sul DNS non cifrato né cambia provider, quindi l’errore viene mostrato così com’è.
Ripeti e conserva i risultati
I tempi dei resolver cambiano con l’ora del giorno, la rete in cui ti trovi e ciò che è già in cache. Ripeti lo stesso confronto qualche volta, poi più tardi o su un’altra rete, prima di decidere qualcosa. Un resolver che una volta è il più veloce potrebbe non esserlo la volta dopo.
I confronti precedenti sono elencati in «Ultimi 5», e ogni esecuzione viene salvata come report in «Cronologia», dove puoi rivederla o condividerne i risultati DNS in CSV.
Se vuoi cambiare DNS
Linkalyst non modifica mai le impostazioni DNS del dispositivo; un confronto invia solo query dall’app. Se i risultati ti spingono a provare un altro resolver, la modifica si fa fuori da Linkalyst: in iOS, per esempio per una sola rete Wi-Fi, tramite un profilo o un’app del provider DNS, oppure sul router, che poi passa l’impostazione a ogni dispositivo della rete.
Dopo, ripeti lo stesso confronto. Il nuovo resolver ora risponde come «DNS di sistema», e puoi vedere se qualcosa è cambiato.
Domande
Devo passare al resolver che è risultato più veloce?
Non sulla base di una sola esecuzione. I tempi variano da un turno all’altro, i resolver che aggiungi pagano ogni volta una connessione nuova, e il DNS di sistema può rispondere da una cache. Un resolver costantemente più rapido in più esecuzioni, con risposte che funzionano, è un segnale migliore. La velocità poi è solo un fattore: contano anche filtraggio, privacy e affidabilità, e Linkalyst non li valuta.
Quale server è il «DNS di sistema»?
Il resolver che il dispositivo usa sulla rete attuale, di solito assegnato dal router o dal provider, oppure impostato da una VPN o da un profilo DNS. Il sistema non dice alle app quale server a monte ha risposto, con quale protocollo né con quale codice di risposta. Questo dispositivo elenca gli indirizzi dei server DNS indicati dal sistema.
Perché DoH o DoT non riescono quando UDP funziona?
Di solito perché la rete blocca o intercetta il DNS cifrato, oppure perché la pagina di accesso di una rete pubblica non è ancora stata completata. Un errore TLS compare anche quando il certificato del server non si può verificare per il nome inserito. Ripeti lo stesso confronto su un’altra rete: se lì funziona, la causa è la prima rete.
Perché ottengo indirizzi diversi ogni volta?
Molti siti alternano più indirizzi o rispondono in base a posizione e carico, quindi una risposta che cambia di solito è normale. I record con un TTL breve vengono richiesti spesso. Linkalyst mostra ogni record con il suo TTL così come è stato ricevuto.