So beheben Sie Probleme mit der Active-Directory-Replikation
Probleme mit der Active-Directory-Replikation lassen sich oft nur schwer beheben. Wir bieten eine Schritt-für-Schritt-Anleitung.
Eine der am frustrierendsten Erfahrungen für einen Active-Directory-Administrator ist es, einen nicht-replizierenden Domänen-Controller zu reparieren. Wenn der Server dann auch noch in eine Richtung repliziert, jedoch nicht in die andere, wird es wirklich anstrengend. Dieser Fehler kann bei vorhandenen Domänen-Controllern auftreten, aber auch bei Servern, die Sie neu installieren und dann als Domänen-Controller definieren. Wenn die Replikation in beide Richtungen nicht funktioniert, können Sie von einer unterbrochenen Netzwerkverbindung oder einem DNS-Problem ausgehen. Solche Probleme sind meist relativ einfach zu beheben. Schwieriger dagegen wird es, wenn die Replikation in nur eine Richtung nicht funktioniert.
Ein Hinweis vorweg: Replikationen sind immer eingehend. Eine „ausgehende Replikation“ ist ein Replikationsvorgang, bei dem ein anderer Domänen-Controller seine Daten vom aktuellen Domänen-Controller bezieht. Wenn zum Beispiel Domänen-Controller 1 und 2 Replikationspartner sind, dann repliziert der erste vom zweiten. Genauso repliziert aber auch der zweite vom ersten. Outbound-Replikation des ersten Domänen-Controllers bezieht sich also auf die eingehende Replikation des zweiten Controllers, der seine Daten vom ersten bezieht.
Problembeschreibung: Replikation zwischen Domänen-Controllern funktioniert nicht
Dieses Problem wird normalerweise vor allem dann verursacht, wenn Sie einen neuen Domänen-Controller in die Domäne aufnehmen, also einen neuen Server zum Domain Controller heraufstufen. Es gibt keine Fehler bis zum Neustart des Servers, aber die Netlogon- und SYSVOL-Ordner und -Freigaben werden nicht erstellt. Außerdem werden auch sonst keine Daten repliziert. Allerdings kann das auch jederzeit bei aktiven Domänen-Controllern auftreten.
Hinweise auf einen nicht-replizierenden Domänen-Controller werden normalerweise durch Fehler der verschiedenen Monitoring-Tools angezeigt. Solche fehlerhaften Replikationsvorgänge zeigen sich vor allem bei der DCdiag-Ausgabe und im Repadmin/showreps-Bericht. Natürlich sehen Sie diese Fehler auch bei der Beobachtung von Fehlern im DS-Ereignisprotokoll. Sie können sich die Anzeige auch in eine Datei mit repadmin/showreps >c:\repl.txt umleiten lassen. Mit repadmin/showreps*/csv>reps.csv erhalten Sie die Replikationsinformationen als CSV-Datei.
Die Replikation zwischen Domain Controller können Sie auch in der Befehlszeile überprüfen.
Den Status der Replikation erfahren Sie auch über die PowerShell. Dazu verwenden Sie das Cmdlet Get-ADReplicationUpToDatenessVectorTable <Name des Servers>. Eine Liste aller Server erhalten Sie mit:
Get-ADReplicationUpToDatenessVectorTable * | Sort Partner,Server | ft Partner,Server,UsnFilter
Um die einzelnen Standorte und die Domain Controller der Standorte anzuzeigen, verwenden Sie die beiden Cmdlets:
Get-ADReplicationSite -Filter * | ft Name
Get-ADDomainController -Filter * | ft Hostname,Site
Microsoft stellt für die Diagnose der Replikation von Domain Controllern das Tool AD Replication Status kostenlos im Download Center zur Verfügung.
Weitere Indikatoren für diesen Fehler sind:
- Es werden keine automatischen Verbindungsobjekte erzeugt. Die ursprünglichen Domänen-Controller können keine Verbindungen auf dem defekten Domain Controller erstellen.
- Die Option Jetzt Replizieren funktioniert für eingehende Objekte auf Original-Domänen-Controllern aus dem nicht funktionierenden Domänen-Controller, aber nicht umgekehrt. Der defekte Domänen-Controller kann also Daten versenden, aber keine empfangen.
- Jetzt Replizieren von Objekten auf den nicht funktionierenden Domänen-Controller von funktionierenden Domänen-Controllern produziert Fehlermeldungen, die darauf hinweisen, dass die Verbindung nicht funktioniert.
- Das Überprüfen der Replikationstopologie auf dem fehlerhaften Domänen-Controller zeigt fehlende Active-Directory-Eigenschaften im Speicher und andere fehlende Daten an.
Normalerweise richten Domain Controller zur Replikation automatisch erstellte Replikationsverbindungen ein. Funktioniert eine Verbindung nicht, können Sie diese löschen lassen und erneut erstellen.
Mögliche Lösung bei nicht-replizierenden Domänen-Controllern
Bevor Sie mit Tools die Replikation genauer untersuchen, sollten Sie zunächst die gravierendsten und häufigsten Fehlerursachen ausschließen:
- Liegt auf dem Domain Controller, der sich nicht mehr replizieren lässt, ein generelles Problem vor, welches sich mit Dcdiag herausfinden lässt? Liegen also die Probleme überhaupt nicht in der Replikation, sondern hat vielleicht einfach der Domain Controller eine Funktionsstörung?
- Wurde auf dem Domain Controller eine Software installiert, welche die Replikation stören könnte? Beispielsweise Sicherheitssoftware wie Virenscanner, Firewall oder sonstiges?
- Ist auf dem Domain Controller, mit dem die Replikation nicht mehr stattfinden kann, die Hardware ausgefallen?
- Liegt unter Umständen nur ein Netzwerk-, Router- oder Firewall-Problem vor?
- Lässt sich der entsprechende Domain Controller noch anpingen und lässt sich der DNS-Name des Servers auflösen?
- Sind die Replikationsintervalle zwischen Standorten so kurz eingestellt, dass die vorherige Replikation noch nicht abgeschlossen ist, und die nächste bereits beginnt?
- Wurden Änderungen an der Routing-Topologie vorgenommen, die eine Replikation verhindern können?
Die meisten Administratoren werden versucht sein, eine manuelle Herabstufung des fehlerhaften Domänen-Controllers durchzuführen und diesen anschließend wieder herauf zu stufen. Dieser Vorgang funktioniert allerdings nicht immer und dauert darüber hinaus auch oft sehr lange. Allerdings gibt es eine sehr einfache Lösung für dieses Problem, die sehr zuverlässig funktioniert und der Herabstufung oder Neuinstallation des Servers vorzuziehen ist. Dieser Prozess beinhaltet die Verwendung des Befehls Repadmin, um einen Verbindungslink mit niedrigem Niveau manuell zu erstellen. Danach hat der Knowledge Consistency Checker (KCC) die Möglichkeit, das richtige Verbindungsobjekt hinzuzufügen.
Das Active Directory verwendet einen integrierten Dienst, der die Replikation innerhalb und zwischen Standorten automatisch steuert. Dieser Dienst zur Konsistenzprüfung, eben Knowledge Consistency Checker genannt, verbindet die Domain Controller der verschiedenen Standorte und erstellt automatisch eine Replikationstopologie auf Basis der definierten Zeitpläne und Standortverknüpfungen. Wenn in den Standorten mehr als nur ein Domain Controller zur Verfügung gestellt wird, werden zwischen den Standorten nicht alle Domain Controller repliziert.
Der Prozess ist ziemlich einfach. Zunächst müssen Sie den fehlerhaften Domain-Controller identifizieren und einen funktionierenden finden. In der hier beschriebenen Schritt-für-Schritt-Anleitung soll der Server DC1 der funktionsfähige Domain Controller sein, während DC2 nur eingehende Verbindungen replizieren kann. Allerdings kann DC2 keine Daten von DC1 replizieren. Natürlich müssen Sie den Domänennamen "Corp.net" mit Ihrem Domain-Namen ersetzen.
Beispiel für die Lösung mit Repadmin
1. Wir werden mit dem Befehl Repadmin /add und der Eingabe einer Server-GUID DC1 und DC2 miteinander verbinden. Daher müssen wir zunächst für jeden Server die Server-GUID bestimmen. Dieser kann durch Ausführen des Befehls repadmin /showreps angezeigt werden. Jeder Server zeigt in der ersten Zeilen in der Ausgabe dieses Befehls die objectGUID an. Diese müssen Sie später für das Hinzufügen einer Verbindung verwenden:
ATLANTA\ATL-DC01 DSA Options : IS_GC objectGUID : 1388A125-9318-4992-AA53-1A0519E24D0A
Die objectGUID wird dann mit dem Befehl Repadmin/Add verwendet.
2. Der Domänenname für dieses Beispiel ist Corp.net Die Server-GUIDs für die beiden DCs lauten:
DC1 GUID = 1388A125-9318-4992-AA53-1A0519E24D0A
DC2 GUID = A8413FDA-3131-4F0D-AFE0-C1E110321D25
Im Verwaltungsprogramm „Active Directory-Standorte und Dienste“ gehen Sie anschließend auf DC2, also den fehlerhaften Domain Controller, und löschen alle automatisch und manuell erstellten Verbindungsobjekte. Diese werden anschließend neu erstellt.
3. Erstellen Sie als nächstes eine neue Verbindung vom defekten Domain Controller zu einem funktionierenden. Dazu verwenden Sie das Tool Repadmin, das zu den Bordmitteln von Windows Server 2008 R2/2012/2012 R2 gehört. Auch in diesem Beispiel ist der funktionierende Domain Controller DC1, der defekte Domain Controller hat die Bezeichnung DC2. Der Befehl für die erfolgreiche Ausführung ist folgender:
C:\repadmin /add "cn=configuration,dc=Corp,dc=net" 1388A125-9318-4992-AA53-1A0519E24D0A._msdcs.corp.net A8413FDA-3131-4F0D-AFE0-C1E110321D25._msdcs.corp.net
In Ihrer Umgebung verwenden Sie natürlich Ihre eigenen Server-GUIDs und Ihren eigenen Domänennamen. Der Rest der Eingabe ist identisch. Testen Sie einfach ein bisschen, bis die Verbindung funktioniert.
Beachten Sie, dass die GUID des funktionierenden Domänen-Controllers (Ziel) als erstes und die GUID des defekten Domänen-Controller zuletzt verwendet werden. Dadurch entsteht eine Verbindung vom defekten Domain Controller zum funktionierenden.
Falls Sie während dieser Prozedur mit Repadmin/Add den Fehler 8441 (distinguished name already exists) erhalten, dann wurde die Verbindung bereits aufgebaut. Ignorieren Sie in diesem Fall die Fehlermeldung und fahren Sie mit den nächsten Schritten fort.
4. Führen Sie eine vollständige Replikation über die erstellte Verbindung durch. Verwenden Sie dazu den folgenden Befehl:
repadmin /sync cn=configuration,dc=enterprises,dc=compaq,dc=com DC1 A8413FDA-3131-4F0D-AFE0-C1E110321D25/force /full
In diesem Fall wird der Name des funktionierenden Domänen-Controllers zuerst (Ziel) und die GUID des defekten Controllers (Quelle) zuletzt verwendet. Dadurch wird eine Synchronisierung über die Verbindung erzwungen. Hier sollte eine Erfolgsmeldung angezeigt werden. Dadurch ist sichergestellt, dass die Replikation generell funktioniert.
5. Stellen Sie danach im Snap-In „Active Directory-Standorte und Dienste“ sicher, dass wieder automatisch generierte Verbindungsobjekte von der defekten Maschine zum funktionierenden DC erstellt wurden. Stellen Sie danach sicher, dass die Replikation in alle Richtungen fehlerfrei funktioniert, wenn Sie diese im Snap-In aktivieren. Auch ein Rechtsklick auf das NTDS-Einstellungsobjekt für jeden DC sollte funktionieren. Lassen Sie hier die Replikation und die Topologie überprüfen. Testen Sie danach in den verschiedenen Ereignisanzeigen, ob noch Fehler vorliegen. Überprüfen Sie auch mit dcdiag und repadmin /showreps, dass die Replikation fehlerfrei funktioniert. Lassen Sie über das Kontextmenü des NTDS-Objekts im Snap-In „Active Directory-Standorte und –Dienste“ über Alle Aufgaben die Replikationstopologie überprüfen, wie in der nächsten Abbildung zu sehen.
Im Snap-In Active Directory-Standorte und –Dienste können Sie die Replikationstopologie Ihrer Domain Controller überprüfen lassen.
Um sicherzustellen, dass die Replikation fehlerfrei arbeitet, erstellen Sie einen neuen Standort in „Active Directory-Standorte und –Dienste“ auf der defekten Maschine und testen Sie, ob der Standort auf den anderen DCs zu sehen ist, sobald sich die Server repliziert haben. Sie können Standorte auch in der PowerShell erstellen. Dazu verwenden Sie den Befehl New-ADReplicationSite <Standort>.
Erstellen Sie noch testweise ein Benutzer-Konto auf der defekten Maschine im Snap-In „Active Directory-Benutzer und –Computer“. Stellen Sie auch hier sicher, dass das Benutzerkonto auf den anderen Domain Controllern verfügbar ist. Diese Vorgehensweisen testen die Schema-und Konfigurationsnamenskontexte, sowie den Domain-Namenskontext und deren Replikation.
Folgen Sie SearchDataCenter.de auch auf Facebook, Twitter und Google+!