DNS oder ein Domain Name System ist für die Auflösung von Website-Namen in ihre jeweiligen IP-Adressen verantwortlich. Wenn Sie also Probleme haben, eine Verbindung zu einer Website herzustellen oder wenn Sie möchten, dass eine DNS-Änderung von Ihrem Ubuntu-Computer angezeigt wird, sollten Sie versuchen, den DNS-Cache zu leeren. Sie können den DNS-Cache in Ubuntu auch löschen, wenn Sie Änderungen an der Hosts-Datei vorgenommen haben und möchten, dass er von Ihrem System "gesehen" wird, ohne dass er neu gestartet werden muss. Wenn Sie sich in einer dieser Situationen befinden und den DNS-Cache löschen möchten, können Sie den DNS-Cache in Linux leeren:
Hinweis : Ich verwende ein Ubuntu 16.10-System „Yakkety Yak“, um diese Methoden zu demonstrieren. Der Prozess sollte jedoch auf den meisten Linux-Distributionen ähnlich sein.
Überprüfen, ob DNS-Caching aktiviert ist
Nicht alle Linux-Distributionen verhalten sich in Bezug auf das DNS-Caching anders. Beispielsweise zwischenspeichert Ubuntu DNS standardmäßig nicht. Bevor wir versuchen, den DNS-Cache auf einem Linux-Computer zu löschen, prüfen wir, ob die Zwischenspeicherung überhaupt aktiviert ist. Um dies auf einem Ubuntu-System auszuführen, können Sie die folgenden Schritte ausführen:
1. Starten Sie das Terminal und geben Sie " ps ax |" ein grep dnsmasq “.
2. In der Ausgabe des Befehls wird ein Feld mit der Bezeichnung „ Cache-Größe “ angezeigt . Überprüfen Sie den Wert. Wenn der Wert Null ist, bedeutet dies, dass die Zwischenspeicherung auf dem System deaktiviert ist.
Hinweis: Wenn Sie das DNS-Caching unter Linux aktivieren möchten, verwenden Sie den Befehl „sudo dnsmasq -c 150“. Sie können eine beliebige Zahl anstelle von 150 verwenden. Dies ist im Wesentlichen die Anzahl der Einträge, die dnsmasq zwischenspeichern kann.
DNS-Cache in Ubuntu leeren
Wenn Ihr Linux-System DNS-Einträge zwischenspeichert, können Sie versuchen, den DNS-Cache zu leeren, um alle DNS-Probleme zu beseitigen. Um den DNS-Cache in Ubuntu zu löschen, können Sie die folgenden Schritte ausführen:
1. Starten Sie das Terminal (Strg + Alt + T) und geben Sie " sudo /etc/init.d/dns-clean restart " ein.
2. Geben Sie als Nächstes den Befehl " sudo /etc/init.d/networking force-reload " ein.
Dadurch wird der DNS-Cache in Ubuntu gelöscht. Wenn die Probleme, die Sie hatten, auf DNS-Probleme zurückzuführen sind, sollten diese nun verschwunden sein.
Leeren Sie den DNS-Cache in den DNS-Diensten unter Linux
Wie gesagt, Ubuntu speichert DNS-Einträge nicht standardmäßig zwischen. Wenn Sie jedoch einen DNS-Dienst wie nscd manuell installiert haben, können Sie dessen Cache leeren. Nachfolgend sind die Methoden zum Löschen des Cache für einige gängige DNS-Dienste aufgeführt:
Leeren Sie den nscd-DNS-Cache
- sudo /etc/init.d/nscd neu starten
Löschen Sie den DNS-Cache von dnsmasq
- sudo /etc/init.d/dnsmasq neu starten
BIND DNS-Cache leeren
Wenn Sie BIND verwenden, können Sie den DNS-Cache mit einem der folgenden Befehle löschen:
- sudo /etc/init.d/named restart
- sudo rndc neu starten
- sudo rndc exec
BIND Version 9.3.0 und höher unterstützt das Leeren des DNS-Caches für eine bestimmte Domäne sowie für das LAN oder das WAN. Sie können die folgenden Befehle verwenden, um diese Funktion zu verwenden:
- Um den DNS-Cache für eine bestimmte Domäne zu löschen, verwenden Sie „ sudo rndc flushname beebom.com “.
- Um den DNS-Cache für LAN zu löschen, verwenden Sie " sudo rndc flush lan ".
- Um den DNS-Cache für WAN zu löschen, verwenden Sie „ sudo rndc flush wan “.
Bonus: Ändern Sie die DNS-Einstellungen in Ubuntu
Wir haben darüber gesprochen, den DNS-Cache in Ubuntu zu leeren. Es kann jedoch Fälle geben, in denen Sie nur die DNS-Einstellungen in Ubuntu ändern möchten. Wenn Sie die DNS-Einstellungen in Ubuntu ändern möchten, können Sie dies über die GUI oder über das Terminal tun.
Ändern Sie die DNS-Einstellungen über die GUI
Die Verwendung der GUI zum Ändern der DNS-Einstellungen ist einfacher als die Verwendung des Terminals. Wenn Sie jedoch mehrere Verbindungen verwenden, müssen Sie die DNS-Einstellungen für jede einzelne ändern. Um die DNS-Einstellungen über die GUI zu ändern, führen Sie einfach die folgenden Schritte aus:
1. Öffnen Sie die Systemeinstellungen und klicken Sie auf Netzwerk.
2. Klicken Sie auf den Pfeil neben dem Namen des Netzwerks, mit dem Sie verbunden sind.
3. Klicken Sie nun auf "Einstellungen". Dadurch werden die Einstellungen für diese Verbindung geöffnet.
4. Wechseln Sie zur Registerkarte IPv4, und Sie sehen eine Option mit der Bezeichnung " Zusätzliche DNS-Server ". In dieses Feld können Sie die DNS-Server eingeben, die Sie verwenden möchten. Wenn Sie mehr als einen DNS-Server eingeben möchten, trennen Sie sie einfach durch Kommas.
Ändern Sie die DNS-Einstellungen mithilfe des Terminals
Wenn Sie die GUI nicht verwenden möchten und die DNS-Einstellungen lieber über das Terminal ändern möchten, können Sie dies tun, indem Sie die Nameserver der dnsmasq-Konfigurationsdatei hinzufügen. In Ubuntu-Systemen ist dnsmasq jedoch nicht standardmäßig installiert (dnsmasq-base tut dies). Zuerst müssen Sie dnsmasq installieren, indem Sie ein Terminal starten und „ sudo apt-get install dnsmasq “ verwenden.
- Nachdem Sie dnsmasq installiert haben. Sie können die Konfigurationsdatei mit „ sudo nano /etc/dnsmasq.conf “ bearbeiten .
- Hier können Sie die IP-Adressen Ihrer DNS-Server hinzufügen, wobei dort " Weitere Nameserver hinzufügen" angegeben ist.
Löschen Sie den DNS-Cache in Linux mit diesen Methoden
Sie können jede dieser Methoden verwenden, um den DNS-Cache in einem Linux-System zu löschen. Probleme mit dem DNS-Cache können zu Problemen führen, z. B. dass eine Webseite nicht geladen wird, Nameserver-Änderungen von Ihrem System nicht erkannt werden, und vieles mehr. Wenn Sie den DNS-Cache leeren, werden diese Probleme höchstwahrscheinlich behoben.
Hatten Sie jemals den DNS-Cache auf Ihrem Linux-System zu leeren? Wenn ja, welche Methode haben Sie verwendet? Wenn Sie über eine andere Methode zum Löschen des DNS-Caches auf Ihrem Linux-System Bescheid wissen, teilen Sie uns dies im Kommentarbereich mit.