Windows: DNS löst nicht richtig auf

Achtung! Dieser Artikel ist älter als ein Jahr. Der Inhalt ist möglicherweise nicht mehr aktuell!

Vorgeschichte

In meinem Heimnetzwerk, bestehend zur Zeit aus Handy, Tablet, Raspberry Pi und meinem PC ist jedem Gerät eine feste IP und ein Hostname zugewiesen. Beispiel: pi.velonetwork.lan = 192.168.1.103.

ipreservation

Auf dem Raspberry Pi ist ein DNS Server aufgesetzt, der nur die velonetwork.lan Adressen auflösen soll. Alle anderen Adresse sollen geforwarded werden an den DNS-Server des Routers und als letzte Instanz den Google DNS Server (8.8.8.8 bzw. 8.8.4.4). In den DHCP Einstellungen wird als (primärer) DNS Server die IP des Pi übergeben.

dhcpsettings

Somit kann der DNS Server die velonetwork.lan Adressen und die „richtigen“ Adressen auflösen. Aber es gibt ein Problem: Alle Geräte konnten nach dem neu verbinden problemlos die Adressen perfekt auflösen, lediglich Windows hat Spuchten gemacht.

ping, nslookup und die Kommandozeile

Wie jeder kennt ist die Kommandozeile auf Windows nicht sehr mächtig. Für Netzwerkdiagnosen ist sie aber dennoch tauglich. Während nslookup die Adresse richtig auflösen konnte (auch ohne explizite Angabe, welcher DNS Server abgefragt werden soll) ist ein ping ins leere gelaufen.

Beispiel:

Befehl:

nslookup pi.velonetwork.lan

Antwort:

Server:  UnKnown
Address:  192.168.1.103

Name:    pi.velonetwork.lan
Address:  192.168.1.103

Die Ausgabe stimmt, aber nun kommt der Ping.

Befehl:

ping pi.velonetwork.lan

Antwort:

Zeitüberschreitung

Sehr schön Windows. Nach einigem Googeln und Suchbegriffen wie „ping nein nslookuop ja“ (das komischerweise einen Lösungshinweis brachte :-D ) habe ich die endgültige Lösung hier gefunden.

Die Lösung

Folgende Schritte sollten gemacht werden:

ipconfig /flushdns

Damit leert man (angeblich) den DNS Cache. Sollte das nichts helfen kann man nich die ARP Tabelle löschen:

arp -d *

Und wenn die oberen beiden Befehle einfach nicht helfen schaltet man den DNS Cache Service einfach aus. Diesen Befehl habe ich in einer CMD mit Administratorrechten ausgeführt und muss jedes mal beim neustart ausgeschaltet werden. Man kann den Dienst auch dauerhaft in msconfig (ebenfalls in die CMD) ausschalten:

net stop dnscache

Danach hat bei mir alles einwandfrei funktioniert.


Du hast einen Kommentar, einen Wunsch oder eine Verbeserung? Schreib mir doch eine E-Mail! Die Infos dazu stehen hier.

🖇️ = Link zu anderer Webseite
🔐 = Webseite nutzt HTTPS (verschlüsselter Transportweg)
Zurück