Come funziona la cache DNS?
Una cache DNS conserva le risposte recenti, così non serve ripetere a ogni richiesta una ricerca completa lungo la gerarchia dei nomi. Le cache possono trovarsi in un'applicazione, nel sistema operativo e nel resolver ricorsivo. Rimuovere una risposta da una di esse non sostituisce immediatamente le copie presenti altrove.
Cosa determina la durata
Un record DNS ha un TTL: il numero di secondi per cui una risposta ricevuta può essere riutilizzata dalla cache. Di norma un resolver conta alla rovescia la durata residua mentre conserva il record. Se il proprietario di un dominio cambia un indirizzo, una risposta già in cache può restare valida finché il vecchio TTL non scade. Abbassare il TTL contemporaneamente alla modifica dell'indirizzo non può accorciare la durata delle copie ottenute in precedenza.
Anche le risposte negative possono essere memorizzate nella cache. Un resolver potrebbe aver ricevuto NXDOMAIN per un nome non ancora creato. Dopo l'aggiunta del record, alcuni utenti possono continuare a vedere per un certo tempo quella risposta negativa precedente. La RFC 2308 definisce il relativo comportamento del caching negativo.
Individua la risposta obsoleta
Interroga, in quest'ordine, il server autoritativo del dominio, un resolver ricorsivo pubblico a tua scelta e il tuo dispositivo. Se la risposta autoritativa è ancora vecchia, correggi la zona o la sua delega; svuotare la cache locale non servirà. Se la risposta autoritativa è nuova ma quella locale è vecchia, esamina il TTL residuo e riprova dopo la scadenza. Puoi esaminare i record del dominio con lo strumento Verifica configurazione dominio.
Interroga esattamente il tipo di record che ti serve. Un record A in cache non può spiegare una risposta MX errata, mentre un record AAAA può indirizzare il traffico IPv6 verso un server diverso da quello IPv4. Controlla il nome host completo, compreso l'eventuale sottodominio. Un browser può usare un proprio resolver DoH, quindi il suo risultato può differire da quello di un'utilità di sistema. Per un riscontro ulteriore c'è anche lo strumento Verifica tempo di risposta DNS di 2IP.
Quando svuotare la cache locale
Svuotare la cache locale può aiutare dopo una correzione quando solo il tuo dispositivo continua a usare il risultato precedente. Il comando esatto dipende dal sistema operativo e dal resolver attivo; individua prima quel componente. L'operazione non può svuotare la cache di un provider, di un resolver pubblico o del computer di un'altra persona.
Non confondere la cache DNS con la cache delle pagine del browser. La prima contiene informazioni sui nomi; la seconda contiene i contenuti dei siti. Anche un indirizzo IP corretto non dimostra che HTTP, HTTPS o un servizio di posta funzionino. Individua il livello che fornisce la risposta inattesa prima di modificare le impostazioni.
Un esempio concreto
Un sito si sposta da 192.0.2.10 a 192.0.2.20. Il suo server autoritativo fornisce il nuovo indirizzo, mentre un router domestico restituisce ancora il vecchio valore in cache. Una query diretta al server autoritativo mostra il nuovo record; una query tramite la rete domestica mostra quello precedente e il suo TTL residuo. Dopo la scadenza, le risposte dovrebbero coincidere, a meno che non rimanga un altro problema di configurazione.
Questi indirizzi sono riservati alla documentazione, non a un sito reale. In pratica, annota l'ora della modifica, i valori vecchi e nuovi, il TTL e le risposte di server specifici. Dati come questi servono molto più che aspettare un momento imprecisato in cui il DNS si sarebbe “propagato del tutto”.