Damit die Zugriffe nach Änderungen von Server- oder Clientnamen wieder funktionieren, muss man unter Umständen den DNS-Cache löschen. Obwohl die DNS-Einträge auch automatisch aktualisiert werden, lässt sich durch einen manuellen Eingriff die Wartezeit oft extrem verkürzen.
DNS-Cache löschen per PowerShell
Zunächst muss unterschieden werden, zwischen dem Cache des DNS-Servers und dem des DNS-Clients. Der DNS-Server ist der Punkt im Netzwerk, an dem die Hostnamen in IP-Adressen aufgelöst werden. Jeder Client im Netzwerk sendet seine Anfragen an diesen DNS-Server und bekommt von diesem schließlich die Informationen. Diese Zuordnung (Name und IP-Adresse) wird bei erfolgreichen Anfragen für 24 Stunden gespeichert.
Eine Besonderheit stellt der eigentliche DNS-Server (meist der Domänencontroller) dar. Dieser hat nämlich einen Client Cache und einen Server Cache. Das liegt darin begründet, dass der Windows Server, also das Betriebssystem zunächst genauso ein Client ist, wie alle anderen auch. Der DNS-Server ist ein installierter Rollendienst und muss daher separat betrachtet werden.
DNS-Cache leeren am Windows Client
Der DNS Client-Cache eines Windows Betriebssystems ist also immer der Cache des lokalen Computers und ist nur für das jeweilige System da. Wenn sich nun beispielsweise die IP-Adresse eines Servers geändert hat, steht im Cache zunächst weiter die alte IP-Adresse. Im ungünstigsten Fall für 24 Stunden. Um die alten Daten zu löschen und somit eine neue Anfrage an den DNS-Server zu starten, können wir manuell den DNS-Cache löschen.
Alles was benötigt wird, ist eine administrative PowerShell Konsole und der Befehl Clear-DnsClientCache. Der Cache wird daraufhin sofort geleert.
Der DNS-Cache der Clients kann auch mittels der Windows Eingabeaufforderung gelöscht werden.
Der dazugehörige Befehl lautet: ipconfig /flushdns.
Cache des DNS-Servers löschen
Kommen wir nun zum DNS-Server. Auch dieser speichert seine Ergebnisse in einen Cache und liefert diese standardmäßig für 24 Stunden an die anfragenden Clients aus. Daher ist es wichtig, bei Änderungen auch diesen Cache zu leeren. Bei mehreren DNS-Servern muss man den Cache jedes einzelnen DNS-Servers löschen.
Über die Windows PowerShell lässt sich diese Aufgabe über den folgenden Befehl erledigen:
Clear-DnsServerCache -Computername -Force
DNS-Cache löschen per GUI
Wer die PowerShell nicht nutzen möchte, kann den Cache auch direkt am DNS-Server über die GUI löschen. Hierfür musst Du das DNS-Server SnapIn in der Management Console öffnen (Server-Manager -> DNS-Server). Nun kannst Du mit der rechten Maustaste auf den Namen des DNS-Servers klicken und die Option „Cache löschen“ auswählen.
Wie Du siehst, ist das Löschen des DNS Cache schnell erledigt und kann längere Wartezeiten (auf Aktualisierung) durchaus verkürzen. Das Leeren dieser Zwischenspeicher ist vollkommen gefahrlos und kann auch im laufenden Betrieb erfolgen. Durch den Neuaufbau des Caches entstehen zwar minimale Verzögerungen (bei den ersten Anfragen), diese sind allerdings kaum messbar und somit auch nicht wirklich spürbar.
Ebenfalls interessant:
Dieser Artikel ist wie alle anderen auf dieser Seite kostenlos für Dich und ich hoffe, ich konnte Dir weiterhelfen. Wer möchte, kann diesem Blog eine kleine Aufmerksamkeit in Form einer kleinen Spende (PayPal) oder über die Amazon Wunschliste zukommen lassen.
Hinterlasse einen Kommentar