- Home
- Windows ed altri Sistemi Operativi
- Cache DNS: perché pulirla, va ...
Internet funziona grazie allo scambio di dati tra un richiedente (il Client o Utente) ed il Server di origine della risorsa (o sito), questo scambio di dati serve a scaricare i contenuti dal Server e riproporli sotto forma di sito (immagini, video, testi, …) a chi ne ha richiesto la visualizzazione, oppure quando scarico un file interrogo il Server dove il file è ospitato che mi restituisce l’acceso al Download dello stesso. Qualunque attività Web quindi, funziona grazie a un sistema complesso ma efficiente che permette ai dispositivi di trovarsi e comunicare tra loro.
I Server sono identificabili per Indirizzo IP, ad ogni Indirizzo IP corrisponde un Server. Quando digito l’indirizzo di un sito o di una risorsa digito un “testo” www.example.com
e non un indirizzo IP. Per fare in modo che quel “testo” raggiunga il Server corretto devo passare per un DNS per tradurre i nomi di dominio (come www.example.com
) in un indirizzo IP associato al Server che deve rispondere alla mia richiesta. Utilizzando il Browser digito l’indirizzo del sito che voglio raggiungere ed il dispositivo attraverso la connessione fa una “ricerca DNS” per ottenere l’indirizzo IP associato. (esempio 123.456.78.90
). Lo scambio di dati avviene solamente tra indirizzi IP
Per accelerare questo processo e migliorare l’efficienza della navigazione, i dispositivi come, PC, Smartphone, Tablet, Console di gioco, miniPc (insomma qualunque dispositivo che possa connettersi ad Internet) memorizzano una copia temporanea di queste traduzioni DNS. Questa memorizzazione locale è la cache DNS.
Quindi quando visito un sito Web per la prima volta, il dispositivo invia una richiesta a un server DNS per ottenere l’indirizzo IP del dominio. Una volta ricevuta la risposta, il dispositivo oltre ad utilizzare l’indirizzo IP per la sessione corrente, ne salva una copia nella sua cache DNS locale.
Lo scopo principale è permettere al dispositivo di accedere rapidamente a siti web già visitati, recuperando l’indirizzo IP direttamente dalla memoria locale senza dover interrogare nuovamente il server DNS esterno. In questo modo riduco la latenza e velocizzo i tempi di caricamento delle pagine/risorse/siti…
Se i dati memorizzati nella cache diventano “vecchi o deprecati” possono essere compromessi e risultare errati nella risoluzione di uno o più indirizzi web memorizzati. Una cache non attualizzata o recente può fornire accessi ad attività di Hackeraggio o di attacco al dispositivo.
Questi problemi legati ai DNS, non sono quasi mai individuabili soprattutto a chi “non è del mestiere” perché il processo di risoluzione DNS avviene in background. Quando la risoluzione fallisce o fornisce informazioni errate, i sintomi sono generici e vengono attribuiti a molte altre cause, come problemi di connessione Internet, problemi del server o malfunzionamenti del Browser o del Modem/Router.
Potrebbero apparire nel Browser errori come: ERR_SPDY_PROTOCOL_ERROR
o vari errori 304
, generalmente sono sintomatici di problemi di risoluzione DNS generati da conflitti con i dati memorizzati nella cache.
Se ho cambiato il fornitore di servizi Internet (ISP), ho fatto l’aggiornamento del firmware del modem/router, ho modificato manualmente le impostazioni DNS del dispositivo (ad esempio, ho sostituito i DNS dell’ISP con i DNS pubblici come Google DNS o Cloudflare DNS o Quad9….), la cache DNS del dispositivo potrebbe ancora contenere record basati sulla vecchia configurazione, ed in un certo senso rendere vane le nuove configurazioni.
La mancata pulizia della cache in questi scenari può portare anche a problemi di connessione persistenti, il dispositivo continuerà a tentare di utilizzare percorsi di rete o server DNS “vecchi”. Nel momento in cui invece pulisco la cache, il dispositivo si adatterà e memorizzerà le nuove impostazioni di rete.
Tabella riassuntiva degli errori più comuni e soluzioni apportate con la pulizia della Cache DNS
Tipo di Errore/Problema | Descrizione Breve | Come la Pulizia della Cache DNS Aiuta | Esempio Pratico / Scenario |
Errori “Sito Non Trovato” / Accesso Negato | Impossibilità di raggiungere un sito web, messaggio di errore. | Forza il recupero dell’indirizzo IP corretto e aggiornato. | Tentativo di accesso a un sito web dopo una migrazione del server. |
Connessioni Lente o Inconsistenti | Navigazione lenta, siti che impiegano troppo tempo a caricare. | Elimina i record obsoleti o errati che causano ritardi. | Internet che sembra lento senza una causa apparente. |
Redirezione a Siti Malevoli (DNS Spoofing / Cache Poisoning) | Essere reindirizzati a siti web falsi o di phishing. | Rimuove i dati DNS malevoli, ripristinando la connessione al sito legittimo. | Cliccare su un link e finire ad esempio su di una pagina di login sospetta |
Problemi di Caricamento di Contenuti Specifici (es. immagini, CSS) | Elementi di una pagina web (immagini, stili) che non si caricano correttamente. | Assicura che il dispositivo risolva correttamente i domini dei contenuti. | Il caso del cliente Kinsta con errori 404 sul CDN. |
Errori Specifici del Browser (es. ERR_SPDY_PROTOCOL_ERROR, 304) | Codici di errore tecnici visualizzati nel browser. | Risolve conflitti con dati DNS corrotti o obsoleti. | (Scenario implicito dal tipo di errore) |
Difficoltà dopo Cambiamenti di Rete (ISP, DNS) | Problemi di connessione dopo aver cambiato provider internet o impostazioni DNS. | Permette al dispositivo di acquisire e utilizzare le nuove configurazioni di rete. | Dopo aver installato un nuovo router o cambiato ISP. |
Oltre alle soluzioni tecniche ai problemi riscontrati c’è un aspetto importante da valutare ed è quello della sicurezza e Privacy online. La cache DNS può essere un bersaglio per attacchi malevoli, in particolare il “DNS spoofing” o “avvelenamento della cache”. In questi attacchi, gli aggressori iniettano dati falsi o malevoli nella cache del dispositivo, reindirizzando l’utente verso siti web fraudolenti anche quando digita il nome di dominio corretto.
Ti piace TivuStream? Ti è utile? Desideri sostenere TivuStream e partecipare un poco al mantenimento? ..ti va di offrirci un caffè? !!
Questi siti falsi sono spesso progettati per rubare credenziali di accesso o dati personali (phishing) o per distribuire malware. La pulizia regolare della cache DNS è fondamentale anche per questo aspetto. La pulizia rimuove qualsiasi dato/record potenzialmente compromesso o malevolo dalla cache, garantendo che il dispositivo recuperi sempre informazioni DNS pulite e legittime direttamente dal server, migliorando così la sicurezza e la privacy online.
Un malware installato sul dispositivo può specificamente alterare la cache DNS all’interno del browser di un utente dopo aver cliccato su link malevoli, significa che, anche se il server DNS principale è sicuro, la cache locale di un utente può essere compromessa individualmente.
La pulizia regolare non è solo una questione di “igiene” di rete generale, ma una difesa proattiva e diretta contro la manipolazione DNS lato client, che potrebbe altrimenti passare inosservata dalle misure di sicurezza a livello di server.
Quindi la pulizia della cache DNS oltre ad una semplice fase di risoluzione dei problemi diventa anche una pratica di Cybersecurity essenziale per gli utenti individuali, un pò come un aggiornamento regolare del software o l’esecuzione di scansioni antivirus.
ipconfig /flushdns
La procedura è leggermente più complessa e varia a seconda della versione di macOS. Apri il Terminale (lo trovi in Applicazioni > Utility).
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
ti verrà chiesta la password del tuo utente. Inseriscila e premi Invio.sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
(lo stesso comando delle versioni più recenti)sudo killall -HUP mDNSResponder
Su Linux, la gestione della cache DNS è spesso gestita dal servizio systemd-resolved
o nscd
.
systemd-resolved
(comune sulle distribuzioni recenti come Ubuntu, Fedora): sudo systemctl restart systemd-resolved
oppure sudo resolvectl flush caches
nscd
: sudo /etc/init.d/nscd restart
oppure sudo systemctl restart nscd
Android non ha un comando diretto per svuotare la cache DNS come su PC, ma le soluzioni elencate sotto sono funzionanti
Impostazioni > App > Chrome (o altro browser) > Memoria > Svuota cache
Non esiste una frequenza fissa o una programmazione rigorosa per la pulizia della cache DNS, è necessaria ogni volta che si incontrano uno o più problemi di quelli elencati, quando si sospetta una compromissione della sicurezza e quando si fanno modifiche alla rete. Il resto è buonsenso ed abitudine a tenere aggiornato il proprio dispositivo, dipende ovviamente anche dalla frequenza di utilizzo del Browser per la navigazione.
Va da se che se uso o navigo nel Web per ore al giorno e tutti i giorni la quantità di dati che andrà a “riempire” la cache sarà importante ed una pulizia più frequente è sicuramente consigliata.
In mancanza di una pulizia manuale va specificato che i record DNS (tutti indistintamente) hanno un TTL (Time To Live) che ne determina la scadenza automatica. Il TTL è progettato per l’efficienza generale, ma non può prevedere o reagire a cambiamenti improvvisi, come un indirizzo IP di un sito che cambia prima della scadenza del TTL o l’iniezione di dati malevoli.
Significa che anche se ci dimenticassimo di pulire la Cache il TTL fa il lavoro per noi ma per i motivi sopra non garantisce che la Cache venga ottimizzata e rigenerata. Ecco perchè la pulizia manuale agisce come un “override” del processo automatico del TTL, forzando un aggiornamento immediato indipendentemente dalla scadenza programmata. .