Sonntag, 8. Januar 2012

The IP Address is not a valid DNS address ...

Diesmal ein Phänomen aus dem Bereich DHCP/DNS.
Beim Hinzufügen eines DNS Servers in den Bereichsoptionen des DHCP Servers erscheint folgende Fehlermeldung:

"The IP Address x.x.x.x is not a valid DNS address, do you still want to add it ?"





Bei dieser Fehlermeldung kommen einem erst einmal folgende Gedanken in den Sinn:

  • Wurde eine falsche IP-Adresse angegeben?
  • Ist der DNS Server vom DHCP Server aus erreichbar?
  • Lassen sich Adressen per nslookup auflösen?
  • Liegt eine Fehlkonfiguration am DNS Server vor?
  • Blockiert eine Firewall ggf. den Netzwerkverkehr?
Nachdem alle diese Fragen geklärt sind und der Server aber sich dennoch nicht ohne Fehlermeldung hinzufügen lässt, stellt sich letztendlich noch die Frage:
  • Wie ermittelt der DHCP Server ob es sich um einen gültigen DNS Server handelt? 
Gute Frage. Innerhalb der Technet-Pages finden sich keine relevanten Informationen. Auch sonst nur wenige Suchergebnisse die sich mit diesem Thema befassen.

Deshalb, schauen wir doch einmal was hier passiert.
Dazu hier ein Mitschnitt mittels WireShark:




Nach einer kurzen Analyse lässt sich feststellen, es wird folgende Abfrage ausgeführt: "Standard Query SOA".
Vermeintlich wird also der "Start of Authority" Eintrag abgefragt.
Ok, vielleicht fehlt dieser DNS Eintrag auf dem betreffenden Server.
Dies lässt sich per DNS SnapIn ermitteln oder per nslookup:

nslookup -type=soa domain.local dnsserver.domain.local

Auch das scheint nicht der Fehler zu sein.
Der SOA Record ist vorhanden.
Fehlen ggf. noch andere DNS Einträge?
Die benötigten DNS-Records für das Active Directory lassen sich mittels
dnslint /ad prüfen:

http://support.microsoft.com/kb/321045/de

Auch hier, soweit keine Fehler ersichtlich.
Ok, nun also noch einmal ein Blick auf den WireShark Mitschnitt.

Recursion desired: Do query recursively.
Recursion available: Server can do recursive queries.


In einigen Mitschnitten erscheint auch:

Recursion available: Server can't do recursive queries.


Es scheint also eine Prüfung stattzufinden, ob der angegebene DNS Server
"recursion queries" durchführen kann.


Als "recursion query" bezeichnet man den Vorgang, wenn ein Client Anfragen an den DNS Server stellt, dieser die Anfragen aber nicht beantworten kann und deshalb die Anfragen an einen weiteren DNS Server weiterreicht.
Ok, nun sind wir also wieder einen Schritt weiter.

Üblicherweise werden die recursion queries and die "Root Hints" weitergegeben.
Zumindest dann, wenn keine Forwarder eingerichtet wurden.

Hier die Liste der default Root Hints:



Die recursion lässt sich auch direkt am DNS Server testen:



In diesem Falle schlägt diese, wie erwartet, fehl.
Ein Blick in die Firewall des Unternehmens verrät, dass diese Anfrage dort geblockt wird. Nachdem eine Ausnahmeregel definiert wurde, lässt sich der DNS Server ohne Fehler im DHCP Server hinzufügen.
Der recursion test ist ebenfalls erfolgreich.

Fazit:
Beim Hinzufügen eines DNS Servers prüft der DHCP Server (besser gesagt das DHCP Snap-In) ob der DNS Server "recursion queries" ausführen kann.
Hat der DNS Server keine Verbindung zu den Root Hints bzw. die Verbindung ist vorhanden aber die vorhandenen Firewall Richtlinien verhindern die Kommunikation, lässt sich der DNS Server nicht hinzufügen.




Keine Kommentare:

Kommentar veröffentlichen