Menu

25 november 2016

macOS: DNS cache geforceerd verversen

DNS icoon

Op het moment dat je een website wilt bezoeken dan wordt allereerst de DNS server van je internet provider geraadpleegd om het IP adres van de webserver te herleiden.

De DNS server is een soort van database waarin alle url’s zijn opgeslagen met de bijbehorende IP adressen. Je webbrowser zal hierna proberen verbinding te maken met het IP adres. Als een website is bezocht dan wordt de URL en het IP adres tijdelijk aan de lokale DNS cache van je Mac toegevoegd.

Hierdoor hoeft niet iedere keer opnieuw de DNS server op het internet te worden benaderd en wordt de verbinding met een website sneller opgezet. Het kan voorkomen dat de DNS cache corrupt raak of dat het DNS record van een website is geupdate op de DNS server terwijl jij nog gebruik maakt van de lokale DNS cache met daarin het ‘oude’ of verkeerde IP adres. Dit is vaak het probleem als één bepaalde website opeens niet meer bereikbaar is terwijl hij op een ander apparaat zonder problemen te bezoeken is.

DNS terminal

Je kunt dit probleem verhelpen door de lokale DNS cache te verversen, hierdoor wordt de lokale DNS cache leeg gemaakt en wordt de DNS server (geforceerd) benaderd voor het juiste IP adres van de website.

DNS cache verversen (clear/flush) in macOS en OS X

Onder OS X is het commando om de cache te legen al meerdere malen gewijzigd (ook recentelijk in macOS Sierra 10.12), hieronder kun je per OS X en macOS versie het Terminal commando terugvinden.

• Open Terminal via Programma’s ▸ Hulpprogramma’s
• Kopieer onderstaand commando
• Plak deze in een leeg terminal venster
• Druk op enter
• Vul je wachtwoord in en druk weer op enter
Het is normaal dat je geen letters, cijfers, bolletjes, etc. ziet bij het invoeren van je wachtwoord

macOS Sierra 10.12
sudo killall -HUP mDNSResponder

OS X 10.11
sudo dscacheutil -flushcache

OS X 10.10.4 (of hoger)
sudo dscacheutil -flushcache

OS X 10.10
sudo discoveryutil udnsflushcaches

OS X 10.9
dscacheutil -flushcache; sudo killall -HUP mDNSResponder

OS X 10.7  – 10.8
sudo killall -HUP mDNSResponder

OS X 10.5 – 10.6
sudo dscacheutil -flushcache

Geupdate artikel voor macOS Sierra

Lees ook: Het Mac-adres van een netwerkkaart aanpassen







Reacties


  • Kor 10 november 2015 om 12:14

    Bij 10.10.5 heeft men Discoveryd weer vervangen door (the good old) mDNSResponder en krijg je als je bovenstaand commando in de terminal geeft:
    sudo: discoveryutil: command not found

    sudo dscacheutil -flushcache werkt in 10.10.5 ook.

  • Wesley Fabry 10 november 2015 om 12:21

    Kor, ontzettend bedankt voor het melden! Ik heb het toegevoegd aan het artikel..

  • Kor 10 november 2015 om 12:28

    Sorry, het moet zijn vanaf 10.10.4. Toen kwam mDNSResponder weer terug.

  • Wesley Fabry 10 november 2015 om 12:29

    Opgelost 😄

  • flup 14 november 2015 om 17:46

    Volgens de officiële Apple support pagina hierover zijn een aantal hier genoemde opties niet juist: https://support.apple.com/en-us/HT202516

    Voor 10.7, 10.8, 10.9, 10.10.4, 10.10.5 is het: sudo killall -HUP mDNSResponder. Dat is dus heel wat anders dan het hier gemelde dscacheutil.

    Voor 10.10.0 t/m 10.10.3 moet je weer sudo discoveryutil mdnsflushcache gebruiken.

    Helaas hebben ze het artikel op dit moment nog niet geupdate naar El Capitan. Je mag er echter vanuit gaan dat je in 10.11 de dns op dezelfde manier moet resetten als in de voorgaande versie (in dit geval 10.10.4 en 10.10.5) aangezien ze hier ook gebruik maken van mDNSResponder.

  • Lei 25 november 2016 om 15:22

    Bij mij werkte het niet in een leeg venster in Terminal, wel via Nieuw commando!
    Heb bovenstaand commando voor Sierra 10.12 ingevoerd in nieuwcommando (+enter) hierna opent een new venster waar mijn wachtwoord gevraagd werd, (wachtwoord invoeren+ enter) hierna melding : voltooit..!

  • Enno 29 november 2016 om 7:35

    Als mijn wachtwoord gevraagd wordt zie ik een sleutel, en weet niet hoe ik mijn wachtwoord ingevoerd krijg. Iemand?

  • Wesley Fabry 29 november 2016 om 8:19

    @Enno dat klopt, kun je zo oplossen: https://www.appletips.nl/terminal-wachtwoord-sterretjes-activeren/

  • Enno 29 november 2016 om 10:23

    Dank Wesley, ik had al begrepen dat de sterretjes niet zichtbaar zijn, dat vind ik ook niet erg, maar het commando werd niet uitgevoerd. Zojuist weer geprobeerd en nu is het volgens mij wel gelukt. Ik bezoek graag deze website: https://www.theguardian.com/international, maar de afbeeldingen laden niet en er verschijnt een “vraagtekentje”, Tevens meldt Safari dat het certificaat verlopen is, en de website niet vertrouwd wordt. Ik had gehoopt het met jullie tip op te kunnen lossen, maar dat lukt dus niet. Zou je me verder kunnen helpen?

  • Wesley Fabry 29 november 2016 om 12:00

    @Enno Hmm je kunt proberen de cache van safari te legen via deze stappen: https://www.appletips.nl/de-cache-bestanden-verwijderen-in-safari-6/ of de gehele geschiedenis in Safari te wissen: https://www.appletips.nl/yosemite-een-kortere-periode-van-de-safari-geschiedenis-wissen/

  • Enno 29 november 2016 om 12:58

    Dat doe ik heel regelmatig Wesley. Het is de enige site waar dit voorkomt. Ik ga maar een andere krant lezen! Dank voor je reacties.

Een reactie toevoegen: