Il DNS, o un Domain Name System, è responsabile della risoluzione dei nomi dei siti Web nei rispettivi indirizzi IP. Quindi, se hai problemi di connessione a un sito Web, o se desideri semplicemente che una modifica DNS venga vista dalla tua macchina Ubuntu, dovresti provare a svuotare la cache DNS. Puoi anche svuotare la cache DNS in Ubuntu se hai apportato modifiche al file hosts e vuoi che venga "visto" dal tuo sistema senza doverlo riavviare. Bene, se ti trovi in una di queste situazioni e vuoi svuotare la cache DNS, ecco come svuotare la cache DNS in Linux:
Nota : sto usando un sistema Ubuntu 16.10 "Yakkety Yak" per dimostrare questi metodi. Tuttavia, il processo dovrebbe essere simile nella maggior parte delle distribuzioni Linux.
Verifica se la memorizzazione nella cache DNS è abilitata
Tutte le distribuzioni Linux non si comportano allo stesso modo, quando si tratta di cose come il caching DNS. Ad esempio, Ubuntu, per impostazione predefinita, non memorizza nella cache il DNS. Prima di provare a svuotare la cache DNS su una macchina Linux, controlliamo se la memorizzazione nella cache è abilitata. Per fare ciò su un sistema Ubuntu, puoi seguire i seguenti passi:
1. Avvia Terminal e digita " ps ax | grep dnsmasq ".
2. Nell'output del comando, sarà possibile visualizzare un campo chiamato " cache-size ". Controlla il suo valore. Se il valore è zero, significa che la memorizzazione nella cache è disabilitata sul sistema.
Nota: se si desidera abilitare il caching DNS su Linux, è possibile farlo utilizzando il comando "sudo dnsmasq -c 150". È possibile utilizzare qualsiasi numero al posto di 150, che è sostanzialmente il numero di voci che dnsmasq può memorizzare nella cache.
Svuota la cache DNS in Ubuntu
Se il tuo sistema Linux memorizza nella cache le voci DNS, puoi provare a svuotare la cache DNS per eliminare eventuali problemi relativi al DNS. Per svuotare la cache DNS in Ubuntu, puoi seguire i seguenti passaggi:
1. Avvia Terminal (ctrl + alt + T) e digita " sudo /etc/init.d/dns-clean restart ".
2. Successivamente, digita il comando " sudo /etc/init.d/networking force-reload "
Questo cancellerà la tua cache DNS in Ubuntu, e se i problemi che stavi riscontrando fossero dovuti a problemi di DNS, ora dovrebbero sparire.
Svuota la cache DNS nei servizi DNS su Linux
Come ho detto, Ubuntu non memorizza nella cache le voci DNS per impostazione predefinita, tuttavia, se hai installato manualmente un servizio DNS come nscd, puoi svuotare la cache. Di seguito sono riportati i metodi per svuotare la cache per alcuni servizi DNS comuni:
Svuota la cache DNS di nscd
- sudo /etc/init.d/nscd restart
Flush dnsmasq DNS Cache
- sudo /etc/init.d/dnsmasq restart
Flush BIND DNS Cache
Se utilizzi BIND, puoi svuotare la cache DNS utilizzando uno dei seguenti comandi:
- sudo /etc/init.d/named restart
- sudo rndc restart
- sudo rndc exec
BIND versione 9.3.0 e successive, supportano il flushing della cache DNS per un particolare dominio, così come per la LAN o la WAN. È possibile utilizzare i seguenti comandi per utilizzare questa funzione:
- Per svuotare la cache DNS per un determinato dominio, utilizzare " sudo rndc flushname beebom.com "
- Per svuotare la cache DNS per LAN, utilizzare " sudo rndc flush lan "
- Per svuotare la cache DNS per WAN, utilizzare " sudo rndc flush wan "
Bonus: modifica le impostazioni DNS in Ubuntu
Abbiamo parlato di svuotamento della cache DNS in Ubuntu, tuttavia, potrebbero esserci casi in cui si desidera apportare una modifica alle impostazioni DNS in Ubuntu. Se si desidera modificare le impostazioni DNS in Ubuntu, è possibile farlo utilizzando la GUI o tramite il terminale.
Cambia le impostazioni DNS usando la GUI
L'utilizzo della GUI per modificare le impostazioni DNS è più semplice rispetto all'utilizzo del Terminale. Tuttavia, se si utilizzano più connessioni, sarà necessario modificare le impostazioni DNS per ognuna di esse. Per modificare le impostazioni DNS utilizzando la GUI, procedi nel seguente modo:
1. Apri Impostazioni di sistema e fai clic su Rete.
2. Fai clic sulla freccia accanto al nome della rete a cui sei connesso.
3. Ora, fare clic su "Impostazioni". Questo aprirà le impostazioni per quella connessione.
4. Passa alla scheda IPv4 e vedrai un'opzione chiamata " Server DNS aggiuntivi ". È possibile inserire i server DNS che si desidera utilizzare in questo campo. Se vuoi inserire più di un server DNS, separali con le virgole.
Cambia le impostazioni DNS usando il terminale
Se non si desidera utilizzare la GUI e si preferisce modificare le impostazioni DNS utilizzando il terminale, è possibile farlo aggiungendo i server dei nomi al file di configurazione dnsmasq. Tuttavia, dnsmasq non viene installato di default nei sistemi Ubuntu (dnsmasq-base, does). Quindi, per prima cosa dovrai installare dnsmasq lanciando un terminale e usando " sudo apt-get install dnsmasq ".
- Una volta installato dnsmasq. È possibile modificare il file di configurazione con " sudo nano /etc/dnsmasq.conf ".
- Qui puoi aggiungere gli indirizzi IP dei tuoi server DNS dove dice " Aggiungi altri server dei nomi qui ".
Cancellare la cache DNS in Linux utilizzando questi metodi
È possibile utilizzare uno qualsiasi di questi metodi per cancellare la cache DNS in un sistema Linux. Problemi con la cache DNS possono causare problemi come una pagina web che non si carica, cambiamenti del server dei nomi non riconosciuti dal sistema e molto altro. Una volta svuotata la cache DNS, questi problemi molto probabilmente andranno via.
Quindi, hai mai dovuto svuotare la cache DNS sul tuo sistema Linux? Se sì, quale metodo hai usato? Se conosci qualche altro metodo per svuotare la cache DNS sul tuo sistema Linux, faccelo sapere nella sezione commenti qui sotto.