La tua esperienza di navigazione su Internet è lenta sul tuo dispositivo Linux o i siti Web che stai visitando obsoleti o il sito Web sbagliato sono del tutto? Discutiamo di scaricare la cache DNS su Linux e come sapere se è necessario davvero.
Cosa sono le cache DNS?
Il tuo computer utilizza una cache DNS locale?
Recensione della tua cache DNS
Come cancellare la cache DNS su Linux
Come scaricare la cache DNSmasq su Linux
Arrossato, con successo
Cosa sono le cache DNS?
IL Servizio di nomi di dominio è il pezzo di magia che converte i nomi in numeri. Prende i nomi della rete di dispositivi e i nomi dei siti Web e cerca i loro indirizzi IP. La rete può quindi utilizzare l'indirizzo IP per instradare correttamente il traffico verso tali dispositivi o siti.
Queste ricerche, note come richieste , Non accadere istantaneamente . C'è un piccolo periodo di tempo finito. Le richieste di Internet DNS possono richiedere query sui server DNS precursori, server dei nomi root, server di dominio di alto livello e server di nome autorevole. Le richieste DNS sono veloci, ma per renderle ancora più veloci, le risposte alle recenti richieste DNS sono memorizzate nella cache sui server precursori DNS.
Se la risposta a una richiesta DNS viene trovata nella cache del server precursore, non è necessario contattare altri server. La risposta viene inviata dalla cache del server precursore. Allo stesso modo, una piccola cache viene mantenuta dal router a banda larga a casa. Se si chiede un dispositivo di rete locale utilizzando il nome del dispositivo di rete, il router fornisce l'indirizzo IP. Può anche memorizzare nella cache le risposte che ha ricevuto dai server DNS esterni.
Di solito, le reti e i computer Linux sono configurati per utilizzare i servizi DNS esterni, forniti dal fornitore di servizi Internet o da un servizio gratuito come Opendns O Google DNS . Ci sono buone ragioni per cui Alcune persone eseguono il proprio server DNS , ma la maggior parte di noi non lo fa. Tuttavia, il tuo computer Linux, anche se non esegue un server DNS, può facoltativamente la cache dei risultati della richiesta DNS.
Il problema con l'utilizzo dei dati memorizzati nella cache è che il tutto si basa sul presupposto che nessuno dei dettagli memorizzati nella cache è cambiato da quando sono stati memorizzati nella cache. Se i dettagli sono cambiati, le informazioni che riceverai saranno aggiornate.
Se una voce di cache o l'intera cache diventa corrotta, riceverai al massimo prestazioni traballante e nel peggiore dei casi le vulnerabilità di sicurezza. Questo è quando vorrai esaminare il "lavaggio" o cancellare la cache DNS.
Il tuo computer utilizza una cache DNS locale?
Alcuni dei nostri computer di prova avevano acceso cache DNS locali e altri lo avevano spento. Era fuori dal nostro Manjaro 21 computer, ma è stato acceso per impostazione predefinita Fedora 37 E Ubuntu 22.10 .
Per determinare se il tuo computer Linux sta cachinando le richieste DNS, utilizzare il
è attivo
Opzione del
SystemCtl
comando. Il daemon che gestisce la cache DNS è il gestore della risoluzione dei nomi di rete Systemd, noto come
SystemD-risolto
.
Se la risposta è "attiva", si sta svolgendo la memorizzazione nella cache DNS. Se la risposta è "inattiva", non lo è. Su questo particolare computer, è attivo. Possiamo usare il
Resolvectl
Comando con l'opzione statistica per vedere quanti record ci sono nella cache.
Possiamo vedere che ci sono 330 voci nella cache DNS di questo computer.
Recensione della tua cache DNS
Rivedere le voci della cache DNS non è un prerequisito per scaricare la cache e se non hai interesse a farlo, puoi Salta l'intero passaggio . A volte, tuttavia, può essere informativo. Potresti vedere voci strapazzate che indicano la corruzione o potresti vedere messaggi di errore relativi ai problemi di indirizzamento del dispositivo sulla tua rete.
Ora, non esiste un modo semplice per vedere queste voci. Possiamo farlo ma dobbiamo essere un po 'creativi.
Usr1
, O
Il segnale numero uno definito dall'utente
, è un
segnale
che può essere inviato dal
uccisione
E
uccidi tutti
comandi. Questo segnale non ha un significato predefinito. Le applicazioni sono libere di ignorare questo segnale o di reagire in qualunque modo gli sviluppatori abbiano implementato.
IL
SystemD-risolto
Il daemon reagisce a
Usr1
Scrivendo la sua cache sui registri di sistema. Possiamo quindi usare il
Journalctl
Comando per filtrare le voci DNS.
Useremo il
uccidi tutti
comando con
Usr1
Per inviare il segnale al file
SystemD-risolto
demone. Si noti che sebbene stiamo usando il
uccidi tutti
comando, il
SystemD-risolto
Il daemon continua a correre. Questo non è un segnale di terminazione che stiamo inviando.
Ora useremo il
Journalctl
comando con il
-u
(Filtro di
SystemD
unità) Opzione per estrarre le voci del registro generate da
SystemD-risolto
. Reindirizzeremo quell'output in un file di testo chiamato "dns.txt".
Useremo
IL
meno
file visualizzatore
Per visualizzare il contenuto del file.
Sarai in grado di trovare le mappature memorizzate nella cache tra i nomi di dominio e Indirizzi IP scorrendo e cercando attraverso il testo.
Possiamo vedere una voce per Google che ha un indirizzo IP di 216.58.212.196. Puoi verificarlo inserendo l'indirizzo IP in un browser Web. Dovresti vedere la home page di Google Search.
Come cancellare la cache DNS su Linux
Il lavaggio della cache rimuove tutte le voci e ricomincia il processo di raccolta. Se ce ne sono, ciò rimuove forzatamente le voci errate e corrotte dalla cache.
Il comando è semplice; noi usiamo
Resolvectl
con il
cache a filo
opzione.
Siamo tornati silenziosamente alla riga di comando. Per confermare che è successo qualcosa, controlleremo di nuovo le statistiche sulla cache DNS.
Possiamo vedere che la dimensione della cache viene eliminata a zero. Aumento nel tempo in quanto accumula nuove voci.
Come scaricare la cache DNSmasq su Linux
IL
dnsmasq
L'applicazione fornisce una cache DNS e un server DHCP. È popolare tra gli utenti che vogliono eseguire il proprio server DNS, specialmente
installazioni non systemd
.
Sciacquare il
dnsmasq
La cache DNS è facile. Dobbiamo inviare il
Sighup
segnale, che dice il
dnsmasq
Daemon per reinitializzare efficacemente. In questo modo cancella la sua cache DNS. Per inviare il segnale utilizziamo il
uccidi tutti
comando con il
-Hup
Flag e il nome dell'applicazione.
Arrossato, con successo
Naturalmente, se il tuo computer non è affatto memorizzata nella cache, non c'è nulla che devi controllare.
Se è memorizzazione nella cache delle richieste DNS ma tutto funziona bene, puoi ignorarlo anche tu. Ma se stai vivendo aggiornamenti di pagine Web lente o sporadiche quando navighi sul Web o vedi del tutto le pagine Web sbagliate, è probabilmente un buon momento per cancellare la cache DNS.