La cache DNS รจ una porzione di “memoria” in cui il sistema memorizza gli indirizzi IP dei siti web visitati di recente. La funzione della cache del DNS รจ quella di velocizzare i tempi di accesso alle pagine web evitando continue (ed inutili) chiamate ai server DNS remoti. In pratica, per la risoluzione di un hostname nel relativo indirizzo IP, il sistema verificherร prima nella cache se dispone giร della risposta e solo in caso negativo andrร ad interrogare il server DNS remoto.
Indice
Premessa: cos’รจ il DNS?
Per chi non lo sapesse il DNS (acronimo di Domain Name System) รจ il sistema che consente di “tradurre” gli hostname (ad esempio il nome di dominio “mrwebmaster.it”) nel corrispondente indirizzo IP.
Quando navighiamo su Internet, infatti, per creare una comunicazione tra il nostro computer ed un server web, abbiamo bisogno di conoscerne l’indirizzo IP. Materialmente, tuttavia, รจ molto raro che l’utente contatti un server digitando nel browser il suo indirizzo IP, molto piรน di frequente ciรฒ avverrร digitando nella barra degli indirizzi un nome di dominio (seguito, eventualmente, dal percorso fisico della risorsa voluta).
Attraverso il sistema dei DNS, appunto, questo nome (o, piรน correttamente, hostname) viene tradotto in un indirizzo IP: in pratica il nostro sistema, non conoscendo l’indirizzo IP della risorsa remota, dovrร preventivamente contattare il giusto server DNS (in base ad alcune regole gerarchiche predefinite il ns. sistema sa quale server DNS deve contattare) che gli fornirร , in risposta alla specifica richiesta, il giusto indirizzo IP col quale instaurare la comunicazione attraverso le regole del protocollo di rete in uso (HTTP, FTP, ecc.).
Come funziona la cache del DNS
Quando ciรฒ avviene, nei sistemi dotati di una cache DNS, l’associazione tra hostname e IP viene salvata localmente per un certo periodo di tempo, per un uso futuro piรน veloce ed immediato. In questo modo, la prossima volta che si vorrร accedere a quel dato sito web, il nostro computer non avrร piรน bisogno di “sprecare” risorse per effettuare interrogazioni di server remoti avendo giร memorizzato in locale l’indirizzo IP di destinazione.
In base a quanto detto possiamo cosรฌ schematizzare:
La logica di questo sistema, basata su criteri di ottimizzazione, รจ ineccepibile, tuttavia, in talune situazioni, puรฒ capitare di voler svuotare la cache del DNS per avere risultati “freschi”: ad esempio, se siamo i gestori di un sito web e lo abbiamo recentemente spostato presso un nuovo hosting provider, puรฒ essere utile “forzare” il sistema a cercare il nuovo server.
Ma come possiamo fare a svuotare la cache del DNS del nostro sistema? La procedura รจ piuttosto semplice. Vediamo come procedere sulla base dei diversi sistemi operativi.
Visualizzare il contenuto della cache DNS su Windows
E’ possibile visualizzare i record memorizzati all’interno della cache DNS accedendo al Prompt dei comandi e digitando:
ipconfig/displaydns
In risposta otterremo una serie di informazioni relative a siti web visitati di recente e dei corrispondenti indirizzi IP.
Svuotare la cache DNS su Windows
Windows 10
Per svuotare la cache DNS di Windows 10 รจ sufficiente fare click sul pulsante Start e selezionare il Prompt dei Comandi. All’interno del prompt digitare:
ipconfig/flushdns
e premere invio. Il buon esito dell’operazione dovrebbe essere confermato dal seguente messaggio di risposta: Windows IP Configuration. Successfully flushed the DNS Resolver Cache.
Volendo รจ anche possibile disattivare del tutto la cache DNS su Windows: per farlo, sempre all’interno del Prompt รจ sufficiente digitare:
net stop dnscache
Se cambiate idea e volete riattivare la cache DNS sarร sufficiente lanciare il comando contrario, cioรจ:
net start dnscache
Vediamo di seguito come svuotare la cache DNS su sistemi Windows un po’ piรน datati…
Windows 8
- Sulla tua tastiera clicca Win + X per aprire il Menu
- Clicca con il destro su Prompt dei Comandi e sceglie “Esegui come Amministratore”
- All’interno del prompt digita: ipconfig/flushdns e premi invio
Windows Vista / Windows 7
- Clicca su Start e seleziona Tutti i Programmi, poi Accessori
- Clicca con il destro su Prompt dei Comandi e sceglie “Esegui come Amministratore”
- All’interno del prompt digita: ipconfig/flushdns e premi invio
Svuotare la cache DNS di Mac OS X
Tramite Spotlight cercare ed aprire il Terminale. All’interno della console digitare la seguente istruzione:
dscacheutil -flushcache
Svuotare la cache DNS di Linux
Diversamente da Windows e Mac, non tutti i sistemi Linux integrano nativamente un servizio per la gestione di una cache DNS. Su Ubuntu รจ possibile verificare se la cache DNS รจ presente digitando nel terminale (per aprirlo: ctrl + alt + T) il seguente comando:
ps ax | grep dnsmasq
Per verificare se la cache รจ attiva bisogna controllare, nell’output prodotto dal sistema, se il valore di cache-size รจ maggiore di zero. In caso affermativo la cache DNS รจ attiva.
In tal caso, quindi, รจ possibile procedere al flush della cache digitando il seguente comando:
sudo /etc/init.d/dns-clean restart
e premere invio. Successivamente digitare:
sudo /etc/init.d/networking force-reload
Conclusioni
La cache del DNS รจ uno strumento utilissimo per velocizzare la fruizione delle pagine web, tuttavia in certe circostanze puรฒ essere utile avervi accesso per rimediare a situazioni di obsolescenza dei risultati senza dover attendere la scadenza naturale dei risultati in essa memorizzati.