Filare la cache DNS su Ubuntu

Filare la cache DNS su Ubuntu
La forma completa di DNS è il sistema di nomi di dominio. Viene utilizzato per tradurre i nomi di dominio in indirizzi IP. Sembra davvero semplice, ma senza di esso Internet non sarà quello che è oggi. Riesci a immaginare di memorizzare migliaia di indirizzi IP? Riesci a immaginare un mondo senza Google.com o yourwebsite.com? DNS rende tutto molto facile su Internet.

Questo articolo riguarda il lavaggio di DN su Ubuntu. Ma per capire perché è necessario, prima devi capire come funziona DNS e un po 'sulla memorizzazione nella cache DNS.

Come funziona DNS:

Semplicemente, DNS può essere pensato a una tabella di nomi di dominio e indirizzi IP come indicato di seguito:

Nome del dominio Indirizzo IP
Linuxhint.com 1.2.3.4
supporto.Linuxhint.com 3.4.5.7
Google.com 8.9.5.4
www.Google.com 8.9.5.4

Si prega di sapere che nessuno dei dati in questa tabella è reale. È solo a scopo di dimostrazione. Quindi torniamo al nostro argomento originale.

Quando visiti, diciamo, Linuxhint.com, Il browser chiede al server DNS (impostato sul tuo computer) alcune domande.

Il tuo computer: Ehi, lo sai Linuxhint.com?

Server DNS: No, non lo faccio. Ma il server DNS 4.4.4.4 potrebbe saperlo.

Il tuo computer: Contatta il server DNS 4.4.4.4 e chiede: "Ehi, lo sai Linuxhint.com?"

DNS Server 2: Sì, certamente. Cosa posso fare per lei?

Il tuo computer: Ho bisogno dell'indirizzo IP di Linuxhint.com. Posso averlo?

DNS Server 2: Nessuna paura, ecco perché sono qui. Ecco l'indirizzo IP di Linuxhint.com 1.2.3.4.

Il tuo computer: Sei un salvavita. Grazie.

Ora il tuo computer si collega a 1.2.3.4 e il tuo sito Web preferito Linuxhint.com si presenta. È stato davvero difficile, non era vero?

La prossima volta che visiti Linuxhint.com, La stessa cosa succede di nuovo.

Caching DNS:

Nella sezione precedente, hai visto come un nome di dominio viene risolto in indirizzi IP. Questo viaggio attraverso i server DNS richiede del tempo e fino a quando è completo e un nome di dominio può essere risolto in indirizzi IP, non sarai in grado di connetterti a nessun sito Web o server su Internet.

Per risolvere questo problema, viene utilizzata la memorizzazione nella cache DNS. Qui, quando provi a risolvere un nome di dominio agli indirizzi IP per la prima volta, ci vuole un po 'più di tempo. Ma una volta risolto il nome di dominio, gli indirizzi IP sono archiviati nel tuo computer. Quindi, la prossima volta che devi risolvere lo stesso nome di dominio, non ci vorrà tanto tempo come la prima volta.

Problemi con la memorizzazione nella cache DNS:

La memorizzazione nella cache DNS è buona. Come è come se la memorizzazione nella cache DNS è problematica? Bene, il mondo di Internet è così dinamico che le informazioni DNS stanno cambiando costantemente. Potrebbe essere cambiato alcune volte anche mentre scrivo questo articolo.

Quindi, cosa succede quando le informazioni DNS cambiano e stiamo utilizzando le informazioni DNS memorizzate nella cache sul nostro computer? Bene, è lì che diventa problematico. In tal caso, useremo le vecchie informazioni DNS. Potremmo avere problemi di connettività, falsi problemi di reindirizzamento e molti altri problemi.

Per risolvere questo problema, dobbiamo eliminare la cache (chiamata anche DNS Flushing) e ricostruirlo. Questo è l'argomento di questo articolo.

Verifica se la memorizzazione nella cache DNS è abilitata:

Puoi verificare se la memorizzazione nella cache DNS è abilitata molto facilmente su Ubuntu. Devi avere il nslookup O scavare Utilità installata sul tuo computer affinché questo funzioni.

nslookup O scavare Il comando potrebbe non essere disponibile per impostazione predefinita sulla macchina Ubuntu. Ma puoi facilmente installarlo dal repository di pacchetti ufficiali di Ubuntu.

Innanzitutto, aggiorna la cache del repository del pacchetto APT con il seguente comando:

$ sudo apt update

La cache del repository del pacchetto APT deve essere aggiornata.

Ora installa il nslookup E scavare con il seguente comando:

$ sudo apt install dnsutils

Ora premi y e poi premere continuare.

nslookup E scavare I comandi dovrebbero ora essere disponibili.

Ora per testare se la memorizzazione della memorizzazione nella cache è abilitata, eseguire il comando seguente:

$ nslookup Google.com

Come puoi vedere, il server DNS utilizzato per risolvere il nome di dominio è 127.0.0.53, che è un indirizzo IP loopback. Quindi la cache DNS è abilitata. Se lo hai disabilitato, il server DNS dovrebbe essere qualcosa di diverso da 127.0.0.X.

Puoi controllare la stessa cosa con il scavare comando e segue:

$ Dig Google.com

Come puoi vedere, gli indirizzi IP loopback vengono utilizzati anche come indirizzi del server DNS qui. Quindi, la memorizzazione nella cache DNS è abilitata.

Flushing DNS su Ubuntu 18.04 LTS:

Ubuntu 18.04 LTS utilizza un server DNS locale e cache DNS query per impostazione predefinita. Ubuntu 18.04 LTS usa SystemD per questo scopo.

È possibile eseguire il seguente comando per verificare quante voci DNS sono memorizzate nella cache e molte altre informazioni su Ubuntu 18.04 LTS:

$ sudo Systemd-Resolve --statistic

Come puoi vedere, le informazioni sulla cache DNS sono elencate nella sezione contrassegnata dello screenshot seguente.

Per scaricare la cache DNS su Ubuntu 18.04 LTS, eseguire il seguente comando:

$ sudo Systemd-Resolve--Flush-Caches

Puoi anche riavviare il SystemD-risolto Servizio per scaricare le cache DNS su Ubuntu 18.04 LTS.

Per riavviare il SystemD-risolto Servizio, eseguire il seguente comando:

$ sudo SystemCtl Riavvia Systemd-Resolted

Come puoi vedere, le cache vengono cancellate.

$ sudo Systemd-Resolve --statistic

Flushing DNS Cache su Ubuntu 16.04:

Su Ubuntu 16.04 LTS, la cache DNS non è abilitata per impostazione predefinita. Ma ad alcune applicazioni piace legamento, dnsmasq, NSCD eccetera. può memorizzarlo nella cache.

Se stai usando NSCD Per la memorizzazione nella cache delle query DNS, è possibile scaricare la cache DNS semplicemente riavviando il NSCD servizio.

Puoi riavviare il NSCD Servizio su Ubuntu 16.04 LTS per sciacquare DNS cache con il seguente comando:

$ sudo systemctl riavviare nscd

Se stai usando dnsmasq Per la memorizzazione nella cache DNS, quindi riavviare dnsmasq Il servizio con il seguente comando dovrebbe eliminare la cache DNS.

$ sudo systemctl riavvio dnsmasq

Quindi, è così che scarichi la cache DNS su Ubuntu 18.04 LTS e 16.04 LTS. Grazie per aver letto questo articolo.