Tre motivi per cui lo stesso dominio risponde in modo diverso
Geo-routing
Un server edge diverso per regione
Caching
TTL indipendenti, cache indipendenti
Split-horizon
Una risposta diversa, di proposito
Perché le risposte DNS cambiano in base alla posizione
Un dominio può restituire risposte DNS diverse a persone in luoghi diversi senza che nessuna delle due sia sbagliata. I provider DNS e le CDN possono usare un routing geografico o basato sulla latenza per indirizzare gli utenti verso l'infrastruttura regionale. I resolver ricorsivi possono inoltre avere in cache valori differenti, e le reti aziendali possono usare lo split-horizon DNS per dare ai dipendenti una risposta interna mentre Internet pubblico ne riceve un'altra. L'indirizzo che vedi è quindi il risultato di hostname, tipo di record, resolver, posizione e momento. Un singolo lookup non può rappresentare ogni possibile punto di vista, perciò i confronti devono conservare questo contesto.
DNS geografico e basato sulla latenza
Un provider con routing geografico valuta ogni query e sceglie una risposta in base a regioni configurate, misurazioni di rete o policy. Può restituire un edge CDN vicino oppure un endpoint applicativo regionale. In genere il provider vede il resolver ricorsivo che ha inviato la query, e quel resolver può trovarsi lontano dall'utente finale o servire molti utenti. Alcuni sistemi usano EDNS Client Subnet per includere un contesto di rete parziale, ma il supporto e il comportamento in termini di privacy variano. Di conseguenza, un lookup eseguito da una posizione non descrive sempre ciò che riceve una persona in quella posizione tramite l'ISP o il resolver aziendale che ha scelto.
| Causa | Perché la risposta può cambiare |
|---|---|
| DNS geografico | Il provider seleziona i record in base al resolver o alla regione di rete |
| CDN | Per posizioni di query diverse possono essere pubblicati edge diversi |
| Cache | I resolver si aggiornano in momenti diversi in base al TTL |
| Split horizon | I client interni e quelli pubblici ricevono viste distinte della zona |
| Failover | Il provider modifica le risposte dopo eventi di health check o di policy |
Il caching è un'altra fonte di variazione. Un resolver può avere ancora in cache la risposta precedente mentre un altro ha già recuperato quella nuova. Abbassare un TTL non accorcia retroattivamente un valore già in cache con un TTL più vecchio. Anche i sistemi operativi locali e le applicazioni possono aggiungere un proprio comportamento di cache. Se un record è stato modificato di recente, annota il TTL precedente e il momento in cui la modifica è stata pubblicata. Dai alle cache il tempo di scadere e interroga i nameserver autorevoli per verificare la zona stessa prima di concludere che un aggiornamento è fallito.
Come indagare su una discrepanza
Confronta lo stesso identico hostname e tipo di record tramite resolver con nome noto e annota dove e quando è stata eseguita ogni query. Controlla i nameserver autorevoli per vedere cosa pubblica attualmente la zona. Se a differire sono solo le risposte ricorsive, considera l'età della cache, la policy del resolver o la geografia. Se sono i server autorevoli a non concordare, esamina la sincronizzazione del provider e la delega. Se utenti interni ed esterni vedono valori diversi, chiediti se lo split-horizon DNS sia intenzionale. Infine, testa l'endpoint del servizio stesso: indirizzi DNS diversi possono portare entrambi a copie sane dell'applicazione, mentre risposte identiche possono fallire entrambe per ragioni estranee al DNS.
- Registra resolver, posizione della query, hostname, tipo di record, risposta e timestamp.
- Confronta i dati autorevoli prima di modificare di nuovo i record.
- Tieni conto del caching dei TTL e del caching negativo dopo le modifiche DNS.
- Verifica la presenza di regole CDN e di routing geografico che variano intenzionalmente le risposte.
- Testa lo stato di salute effettivo del servizio, indipendentemente dalla risoluzione dei nomi.
Cosa non dimostrano le risposte diverse
Risposte pubbliche diverse non significano di per sé che il DNS sia stato dirottato, che un dominio sia compromesso o che un server di origine si sia spostato. Possono essere un comportamento normale previsto dalla progettazione. Allo stesso modo, risposte identiche non dimostrano che tutti i visitatori seguano lo stesso percorso, perché cache e livelli applicativi possono differire. Cerca prove a conferma: configurazione del provider, avvisi di manutenzione pubblicati, intervalli noti delle CDN e telemetria applicativa. Descrivi i risultati in modo circoscritto, soprattutto quando l'indirizzo è un'infrastruttura condivisa che serve molti clienti.
Per capire i meccanismi dietro le risposte distribuite, leggi come le CDN usano il DNS e il load balancing DNS. Lo strumento di lookup dei domini offre un'utile istantanea del DNS pubblico; se stai confrontando punti di vista diversi, ripeti la stessa query da un secondo resolver. Conservare il contesto della query insieme al risultato trasforma una contraddizione apparente in una prova sul routing, sul caching o sulla configurazione.
Confrontare le risposte senza perdere il contesto
Una buona tabella di confronto dovrebbe includere orario della query, indirizzo del resolver, posizione o rete, hostname, tipo di record, codice di risposta, TTL e valori della risposta. Se i risultati differiscono, aggiungi se il resolver è pubblico, aziendale o gestito dal provider e se il dominio usa una CDN. Ripeti la query più tardi per capire se la differenza è una policy stabile o una divisione temporanea della cache. Se lo stesso resolver restituisce risposte diverse in momenti diversi, verifica la presenza di load balancing e di failover basato sulla salute degli endpoint. Se due resolver differiscono in modo costante, indaga sulle impostazioni di geolocalizzazione o di split-horizon. Questo contesto trasforma «il DNS è incoerente» in un'osservazione specifica che il provider DNS può riprodurre e spiegare. Quando riporti il confronto, evita di dire che una risposta sia globalmente corretta, a meno di aver confermato la policy di routing del dominio. Spiega se ogni risposta proviene da un server autorevole o da una cache ricorsiva e conserva il TTL mostrato insieme ad essa. Se una CDN restituisce intenzionalmente endpoint regionali, la domanda giusta è se ogni endpoint sia sano per la propria regione, non se ogni resolver restituisca un unico indirizzo identico. Questa distinzione evita di far passare per un'interruzione del DNS un design di routing previsto.
Devi controllare gli indirizzi DNS pubblici di un dominio? Usa lo strumento Domain IP Lookup.
Per approfondire
Quattro livelli, da controllare in ordine
DNS
risolve il nome
Trasporto
TCP si connette
TLS
il certificato è valido
Applicazione
HTTP risponde
Come diagnosticare l'errore «Impossibile raggiungere il sito»
Quel generico errore del browser copre diverse cause non correlate: il DNS è spesso il modo più rapido per confermarne o escluderne una per prima.
La «propagazione» è solo la scadenza delle cache
0 min
salvi la modifica
0-5 min
il provider DNS si aggiorna
fino al TTL
vecchia risposta ancora in cache
dopo il TTL
tutti vedono la nuova
Nulla viene inviato in giro: ogni cache smette semplicemente di riusare la propria copia
Cosa fare quando le modifiche DNS non hanno effetto
Hai aggiornato un record, hai aspettato e sembra ancora sbagliato. Prima di pensare che qualcosa sia rotto, controlla questi punti in ordine.
Quanto tempo dovrebbe richiedere un lookup
Risolvere i problemi di risoluzione DNS lenta
Un sito lento a caricarsi è a volte un lookup DNS lento sotto mentite spoglie. Ecco come capire la differenza e quali sono le cause più comuni.