Beim Hinzufügen eines neuen Windows Server 2008 R2 Domänencontrollers zu einer bestehenden Domäne (Gesamtstruktur- und Domänenfunktionsebene Windows Server 2003) brachte das Kommandozeilen-Tool dcdiag den folgenden Fehler:

Starting test: NCSecDesc
Error NT AUTHORITY\ENTERPRISE DOMAIN CONTROLLERS doesn’t have
Replicating Directory Changes In Filtered Set
access rights for the naming context:
DC=DomainDnsZones,DC=[Domain],DC=[TLD]

Laut Microsoft Knowledge Base KB967482 ist die Ursache für diesen Fehler das nicht erweiterte Active Directory Schema für den Einsatz eines Read-Only-Domänencontrollers (RODC). Dies wird mit dem Kommandozeilen-Tool adprep erledigt:

adprep /rodcprep

Selbiger Befehl lieferte allerdings die folgende Fehlermeldung:

Adprep could not contact a replica for partition DC=DomainDnsZones,DC=[Domain],DC=[TLD]. Adprep encountered an LDAP error. Error code: 0×0. Server extended error code: 0×0, Server error message: (null).

Lösung

Auch für diesen Fehler hat Microsoft aber eine Erklärung im Knowledge Base Artikel KB949257: Das Tool adpred versucht für jede Anwendungspartition innerhalb der Gesamtstruktur den Infrastrukturmaster zu aktualisieren -

  1. ist die Partition nicht mehr vorhanden,
  2. oder der Infrastrukturmaster wurde herabgestuft oder ist offline,

so schlägt der Versuch fehl. Ist die Partition vorhanden, so lässt sich der Fehler durch Korrektur des Attributes fSMORoleOwner via ADSI-Edit beheben:

  • Verbindung mit Standardmäßiger Namenskontext herstellen
  • Eigenschaften des Objektes CN=Infrastructure, DC=[Domain],DC=[TLD] aufrufen

Im Attribut fSMORoleOwner muss nun der verfügbare, aktive Domänencontroller nach folgenden Schema eingetragen werden (Server, Standort, Domain und TLD entsprechend abändern):

CN=NTDS Settings,CN=[Server],CN=Servers,CN=[Standort],CN=Sites,CN=Configuration,DC=[Domain],DC=[TLD]

In meinem (Fehler-)Fall enthielt der eingetragene Wert die Zeichenkette “\0ADEL:…”, welche auf eine gelöschte Replikationsverbindung verwies. (Tatsächlich hatte ich eine ursprünglich manuell erstellte Replikationsverbindung in den Active Directory-Standorte und Dienste gelöscht, da zwei weitere automatisch generierte Verbindungen bestanden.)

Dieser Wert ist innerhalb von ADSI-Edit auch rückwärts kontrollierbar: Im Namenskontext Konfiguration muss dieser Eintrag unter CN=Sites, CN=<Standort>,CN=Servers,CN=<Server>,CN=NTDS Settings zu finden sein.

Alternativ lässt sich auch das im KB-Artikel 949257 enthaltene VBS-Skript fixfsmo.vbs nutzen, welches nach dem Abspeichern wie folgt aufgerufen werden muss:

cscript /nologo fixfsmo.vbs DC=DomainDnsZones,DC=[Domain],DC=[TLD]

In meinem Fall wurde im Anschluss adprep /rodcprep fehlerfrei durchgeführt, der Aufruf von dcdiag lieferte ebenfalls keine Fehler mehr.