Come svuotare la cache DNS in Mac OS X e macOS

Questo breve articolo descrive come svuotare (o ripristinare) la cache DNS. Le query DNS (indirizzi IP) sono generalmente memorizzate nella cache, ma a volte può essere necessario svuotare e svuotare la cache DNS. La cancellazione della cache (o "flushing") aggiorna questi dati. Ad esempio, se si verificano molti codici di errore 404 (impossibile trovare il server) o si riscontrano problemi in cui il server indicato non si risolve correttamente, è possibile ripristinare la cache DNS. Fortunatamente, questo processo è davvero semplice.

Informazioni sulla cache DNS del tuo Mac

macOS e OS X mantengono una cache locale di query DNS risolte per un periodo di tempo specificato dal server DNS. A volte è necessario ripristinare immediatamente la cache e interrogare nuovamente un server DNS. Ad esempio, se il server DNS è stato modificato di recente, potrebbe essere necessario eseguire questa operazione.

Se il tuo Mac non utilizza le ultime voci DNS dal tuo server, il riavvio del Mac di solito aggiorna le informazioni memorizzate nella cache. Se si desidera aggiornare le voci DNS e non è possibile riavviare il Mac o il server utilizzando macOS o OS X, utilizzare i comandi di terminale seguenti (a seconda della versione di macOS o OS X).

Svuota la cache DNS in macOS Sierra e diverse versioni di Mac OS X.

macOS Sierra

Apri Terminale e inserisci il comando seguente. Questo comando cancella le cache MDNS e UDNS. Il DNS in macOS viene gestito tramite mDNSResponder, uccidere il processo è il modo più semplice per ripristinare la cache DNS su un Mac oltre a riavviare e modificare manualmente le impostazioni DNS. Ricorda che quando ti viene richiesto di inserire una password, inserisci la password di accesso del Mac e premi Invio.

 sudo killall -HUP mDNSResponder Il comando sudo dscacheutil -flushcache funziona anche 

OS X 10.10 Yosemite ed El Capitan

Utilizzare il seguente comando Terminale per reimpostare la cache DNS in OS X v10.10.4 o successive

 sudo killall -HUP mDNSResponder 

Utilizzare il seguente comando Terminale per ripristinare la cache DNS in OS X da v10.10 a v10.10.3

 sudo discoveryutil mdnsflushcache 

Immettere la password dell'amministratore quando viene richiesto di eseguire il flush.

OS X 10.9 Mavericks

Apri Terminale e inserisci:

 dscacheutil -flushcache; sudo killall -HUP mDNSResponder 

OS X Mountain Lion o Lion (10.7 e 10.8)

Avvia l'app Terminale (Applicazioni> Utilità> Terminale) e inserisci (inserisci la password dell'amministratore quando richiesto):

 sudo killall -HUP mDNSResponder 

Mac OS X 10.6 e 10.5

Apri Terminale e digita:

 sudo dscacheutil -flushcache 

Mac OSX 10.4 e precedenti

Avvia Terminal ed inserisci:

 lookupd -flushcache 

Verifica che i tuoi problemi DNS siano risolti

Per verificare se il tuo DNS ora funziona normalmente, usa il comando "dig". Rimani nel Terminale e digita " dig appletoolbox.com ". O il nome di qualsiasi sito Web che visiti regolarmente, assicurati di digitare dig prima dell'indirizzo web.

Il comando dig viene utilizzato per eseguire query sui server dei nomi DNS per informazioni su indirizzi host, scambi di posta, nameserver e informazioni correlate. Se la velocità è il tuo problema, cerca la SEZIONE RISPOSTA per il tempo della query.

Se quel numero risulta troppo elevato, il che significa che il caricamento del sito richiede troppo tempo, modifica le impostazioni DNS del tuo computer, dispositivo o router in Server DNS aperti (208.67.222.222 e 208.67.220.220) o Server DNS pubblici di Google (8.8. 8.8 e 8.8.4.4.)

Salvare un file .scpt sul desktop per un accesso rapido

  • Apri "Script Editor" e aggiungi il seguente comando e poi salva sul desktop (copia e incolla la seguente riga tra virgolette)
    • Per macOS Sierra, esegui lo script di shell "sudo killall -HUP mDNSResponder"
    • Per El Capitan, esegui lo script di shell “sudo dscacheutil-flushcache; sudo killall -HUP mDNSResponder ”
  • Fare doppio clic su quel file ogni volta che è necessario svuotare il DNS
  • Se vuoi un messaggio nel Terminale che ti informi che il DNS è stato scaricato, aggiungi il seguente comando alla tua linea
    • ; dire che la cache DNS è stata svuotata correttamente