Wie man den DNS-Cache unter Linux leert [Terminal-Anleitung]

Melden

Hier ist ein kompaktes Tutorial, wie du den DNS-Cache unter Linux über die Kommandozeile leeren kannst.

Der DNS-Cache speichert die IP-Adressen von besuchten Webseiten, um den nächsten Aufruf zu beschleunigen. Manchmal ist dieser Cache jedoch veraltet oder fehlerhaft, was zu Verbindungsproblemen führen kann. In diesem Fall hilft ein „Flush“ (Leeren) des Caches.

Da Linux keinen einheitlichen DNS-Dienst nutzt, hängt der Befehl von deiner Distribution und dem verwendeten Dienst ab.


1. Prüfen, welcher DNS-Dienst aktiv ist

Bevor du startest, kannst du prüfen, ob ein lokaler Cache-Dienst läuft:

sudo lsof -i :53

Falls du dort systemd-resolved oder dnsmasq siehst, weißt du, welchen Abschnitt du unten wählen musst.


2. DNS leeren mit systemd-resolved

Die meisten modernen Distributionen (wie Ubuntu, Debian, Fedora, Arch Linux) nutzen standardmäßig systemd-resolved.

Verwende diesen Befehl, um den Cache zu leeren:

sudo resolvectl flush-caches

Alternative für ältere Versionen: Sollte der obige Befehl nicht funktionieren, versuche es mit:

sudo systemd-resolve --flush-caches

Erfolg überprüfen: Du kannst dir die Statistiken anzeigen lassen, um zu sehen, ob der Cache geleert wurde:

sudo resolvectl statistics

3. DNS leeren mit nscd (Name Service Cache Daemon)

Einige ältere Systeme oder Server nutzen den Dienst nscd. Um diesen Cache zu leeren, muss der Dienst neu gestartet werden:

sudo systemctl restart nscd

Oder falls dein System kein systemctl nutzt:

sudo service nscd restart

4. DNS leeren mit dnsmasq

dnsmasq wird oft auf Routern, in lokalen Netzwerken oder auf Desktops eingesetzt, die als DNS-Server fungieren. Um den Cache zu leeren, musst du den Dienst neu starten:

sudo systemctl restart dnsmasq

5. DNS leeren mit BIND (Named)

Falls du einen eigenen DNS-Server mit BIND betreibst, kannst du den Cache mit folgendem Befehl leeren:

sudo rndc flush

Um nur eine bestimmte Domain zu leeren, tippe:

sudo rndc flushname example.com

6. Zusätzlicher Hinweis: Browser-Cache

Manchmal liegt das Problem nicht am Betriebssystem, sondern am Browser (Chrome, Firefox, Edge), da diese einen eigenen internen DNS-Cache besitzen.

  • Google Chrome / Brave / Edge: Gib chrome://net-internals/#dns in die Adresszeile ein und klicke auf den Button "Clear host cache".
  • Firefox: Tippe about:config in die Adresszeile, suche nach network.dnsCacheExpiration und setze den Wert kurzzeitig auf 0.

Zusammenfassung

In 90 % der Fälle auf modernen Linux-Systemen ist dieser Befehl die Lösung: sudo resolvectl flush-caches

0