Een DNS-cache is een klein geheugen dat onthoudt welk IP-adres bij een domeinnaam hoort. Elke keer dat je een website bezoekt of een mail verstuurt, moet je computer eerst opzoeken achter welk nummer die naam schuilgaat. Dat opzoeken kost tijd. Door het antwoord even te onthouden, hoeft die vraag niet telkens opnieuw gesteld te worden. Caches zitten op meerdere plekken tegelijk: in je browser, in je computer, in je router en bij je internetprovider.
Het voordeel merk je vooral in snelheid: sites openen sneller en je netwerk wordt minder belast. Het nadeel merk je bij verandering. Verhuis je je website of pas je een mailinstelling aan, dan blijven caches nog even het oude antwoord geven. Daarom kan het gebeuren dat een collega de nieuwe site al ziet en jij nog de oude. Dat is geen storing, maar een cache die nog niet vernieuwd is.
Hoe lang een antwoord bewaard blijft, bepaal je zelf met de TTL, de houdbaarheidstijd die je bij een DNS-record instelt. Zet je die vóór een geplande verhuizing tijdelijk laag, dan gaat de omschakeling veel sneller. Loopt iets vast, dan kun je de cache legen: op Windows met een enkele opdracht, in je browser via de instellingen. Merk je dat één werkplek een site niet kan bereiken terwijl de rest wel werkt, dan is een vervuilde DNS-cache een van de eerste dingen om uit te sluiten.
Hoe leeg je de DNS-cache?
Elk besturingssysteem doet dat op zijn eigen manier, maar het zijn steeds een paar stappen. Op Windows open je de Opdrachtprompt en typ je ipconfig /flushdns; je krijgt daarna een bevestiging dat de DNS-resolvercache leeg is. Op een Mac gebruik je Terminal met sudo dscacheutil -flushcache, gevolgd door sudo killall -HUP mDNSResponder. Op Linux draai je meestal sudo systemd-resolve –flush-caches.
Je browser houdt daarnaast een eigen cache bij. In Chrome en Edge leeg je die handmatig via chrome://net-internals/#dns, in andere browsers vind je het terug bij de privacy-instellingen. Helpt dat niet, dan staat het oude antwoord nog in je router of bij je provider. Die verlopen automatisch, meestal binnen een uur tot een dag, afhankelijk van de TTL die op het record staat.
Wanneer is een vervuilde DNS-cache het probleem?
Meestal merk je er niets van: caches verversen zichzelf en je hoeft er niets voor te doen. Het wordt pas zichtbaar rond een wijziging. Verhuis je je website naar een nieuwe host, dan ziet de een de nieuwe site en de ander nog de oude. Verander je een mailrecord, dan blijft mail nog even naar de oude server gaan.
Een tweede signaal is een verschil tussen apparaten. Kan een computer bepaalde websites niet openen terwijl de rest van het kantoor gewoon werkt, dan is de lokale cache een van de eerste dingen die je uitsluit. Dezelfde site of Google testen op een tweede werkplek kost een minuut en geeft meteen antwoord. Levert dat niets op, dan zit het probleem ergens anders: in de DNS-instellingen zelf, in de firewall of bij je provider.
Veelgestelde vragen
Wat is een DNS-cache in het kort?
Een tijdelijk geheugen dat bijhoudt welk IP-adres bij een domeinnaam hoort, zodat je computer dat niet elke keer opnieuw hoeft op te vragen. Dat scheelt tijd bij het openen van websites en verlaagt het aantal aanvragen op je netwerk.
Hoe vaak wordt de DNS-cache automatisch geleegd?
Dat bepaalt de TTL van het DNS-record: de houdbaarheidstijd die de eigenaar van het domein instelt. Vaak is dat een uur tot 24 uur. Daarna vervalt het antwoord en wordt het opnieuw opgehaald.
Is het legen van de DNS-cache gevaarlijk?
Nee. Je verwijdert alleen opgeslagen antwoorden, geen instellingen of gegevens. Het enige effect is dat de eerste aanvragen daarna iets trager zijn, omdat de cache opnieuw wordt opgebouwd.
Waarom ziet een collega de nieuwe website al en ik nog niet?
Omdat jullie werkplekken elk een eigen cache gebruiken, met een eigen moment waarop het oude antwoord verloopt. Leeg je eigen cache, of wacht tot de TTL is verstreken.
Wat OkayICT hierin doet: Wij beheren je DNS-instellingen en plannen wijzigingen zo dat je website en mail zonder onderbreking overgaan.
Meer lezen: Wat is DNS? · Wat is DNS over HTTPS (DoH)?
