Ich hatte diese Woche einen Supportfall bei einem meiner Kunden. Es fing damit an, dass wir auf einem Windows DNS Server eine neue DNS-Zone erstellen wollten. Dies schlug fehl mit der sehr unscheinbaren Fehlermeldung
Die Zone kann nicht erstellt werden. Ein serverfehler ist aufgetreten.
Nach einer kurzen Suche gab es den Tipp, die Zone als Windows 2000-kompatible Zone zu erstellen. Das hat funktioniert, löst aber natürlich das dahinter liegende Problem. Ein weiteres Problem war, dass keine Reverse Lookup-Zonen erstellt werden konnten und dass vorhandene Zonen nicht in AD-integrierte Zonen höher als Windows 2000 umgewandelt werden konnten.
Das Problem
Nachdem wir uns das Problem ein bisschen weiter und ausführlicher angeschaut haben mussten wir feststellen, dass in der AD zwischen den unterschiedlichen Sites Fehler gemeldet wurden (wir haben in unserem Fall die üblichen Tools repadmin und das Eventlog verwendet). Unter anderem tauchte in einem Abstand von genau 15 Minuten im Eventlog Warnungen auf:
Event Type: Warning
Event Source: NTDS KCC
Event Category: Knowledge Consistency Checker
Event ID: 1801
Date: 06/06/2020
Time: 11:21:43
User: NT AUTHORITY\ANONYMOUS LOGON
Computer: SERVERNAME
Description:
The partition DC=DomainDnsZones,DC=domain,DC=LOCAL should be hosted at site CN=site,CN=Sites,CN=Configuration,DC=domain,DC=LOCAL, but has not been instantiated yet. However, the KCC could not find any hosts from which to replicate this partition.
Ein Blick in das DNS zeigte, dass die Standard-Einträge DomainDnsZones und ForestDnsZones nicht angezeigt wurden. Zum Vergleich die Ansicht von meinem Firmen-DNS-Server:
Nach einigem Suchen habe ich mehrere Seiten, Foren und Blogs gefunden, die das Problem ein wenig näher beleuchtet haben. Die besten und wichtigsten sind die folgenden Seiten:
- https://regierdad.wordpress.com/2006/11/24/active-directory-domaindnszones-and-forestdnszones-missing/
- https://www.cbfive.com/are-your-dns-application-partitions-corrupt/
- https://social.technet.microsoft.com/Forums/windowsserver/en-US/b5551ad5-65ec-48f7-81b2-2a00bbd93def/msdcs-doesnt-exist?forum=winserverNIS&prof=required
Ein bisschen mehr Hintergrund
Die Umgebung, von der ich hier spreche, hat mehrere AD Standorte (Sites). Auf keinem der AD Controller wurden im DNS die entsprechenden Zones angezeigt, auch nicht auf dem DC mit den FSMO Rollen.
Eine Empfehlung ist es, dass man über die DNS Managementkonsole die Standard-Einträge anlegen lässt. Dies geht wie folgt:
Es erscheint eine Abfrage, ob man die Einträge komplett in einer einzelnen Partition erzeugen möchte, dies muss man mit „Ja“ bestätigen.
Nun erscheint an dieser Stelle allerdings eine Fehlermeldung und sagt, dass die Einträge bereits existieren.
Man kann sich mit dem Tool ADSIEdit.msc anschauen, ob die Einträge für die beiden DNS-Zonen vorhanden sind. Dies geht über Configuration => CN=Configurations => CN=Partitions und dann sollten dort zwei Einträge mit jeweils einer langen GUID sichtbar sein.
Wie man das Problem löst
Um die Einträge wieder sauber anzeigen zu lassen, hat in unserem Fall die folgende Vorgehensweise geholfen (weitere Infos unterhalb der Schritte):
- Auf dem AD Controller mit den FSMO-Rollen werden die beiden markierten Einträge über ADSIEdit.msc gelöscht
- Nun muss abgewartet werden, bis diese Änderung an alle AD-Controller in allen Sites repliziert wurde. Zeit für nen Kaffee 😉
- Falls man nicht warten möchte, kann natürlich auch manuell eine Replikation angestoßen werden. In diesem Fall entfällt aber der Kaffee 🙁
- Man kann auf jedem AD-Controller per ADSIEdit.msc prüfen, ob die Änderungen repliziert wurden. Ist dies der Fall, zeigen die Server die beiden Einträge nicht mehr an. Dies kann, je nach Größe und Art der Anbindung, ein bisschen dauern.
- Haben alle AD-Controller keine Einträge mehr, können wir in der DNS Konsole die Standard-Werte wieder anlegen. Dies geschieht mit einem Klick auf
Dieses Mal wird die Abfrage nicht mit einer Fehlermeldung quittiert, sondern (in meinem Fall) mit der Meldung, dass die Einträge erfolgreich angelegt wurden.
Weitere Infos
In diversen Anleitungen war von einem Neustart der DNS-Dienste die Rede. Wir haben dies gemacht, dies hat aber dazu geführt, dass die Einträge wieder erzeugt und in der AD eingetragen wurden. Die Einträge waren anscheinend die gleichen IDs, das Problem wurde dadurch nicht gelöst.
Nach dieser ersten Runde haben wir die erzeugten Einträge wieder gelöscht, die Replikation abgewartet bzw. erzwungen (Kaffee 😛 ) und dann die Einträge wieder gelöscht. Nun habe ich ohne einen Neustart von einem DNS Dienst die Standard-Einträge erzeugt, dieses Mal wurden sie dann erzeugt und hatten, soweit wir das prüfen konnten, auch andere IDs.
Nun haben wir gewartet, bis alle Server diese Einstellungen wieder erfolgreich repliziert hatten. Danach war es möglich, neue Zonen im DNS anzulegen sowie vorhandene Windows 2000-Zonen umzuwandeln in ein neueres Format.
Hallo Jan,
ich habe genau das beschriebenen Problem. Ich habe wie von Dir beschrieben die zwei einträge gelöscht. Aber die Neuanlage wird trozdem mit dem gleichen Fehler quitiert, dass die Einträge vorhanden wären.
Es gibt in der Domäne aber nur einen DC.