DCDiag

Gilt für: Windows Server 2022, Windows Server 2019, Windows Server 2016

DCDiag.exe analysiert den Zustand von Domänencontrollern (DC) in einer Gesamtstruktur oder einem Unternehmen und meldet Probleme, um Sie bei der Problembehandlung zu unterstützen. Als Berichtsprogramm für Endbenutzer*innen ist DCDiag ein Befehlszeilentool, das detaillierte Kenntnisse zum Identifizieren abnormalen Verhaltens im System kapselt.

DCDiag ist standardmäßig sofort verfügbar, wenn Sie bei einem DC angemeldet sind. Eine alternative Methode für den Zugriff auf DCDiag besteht darin, die Remoteserver-Verwaltungstools (Remote Server Administration Tools, RSAT) auf Ihrem Gerät zu installieren. DCDiag muss mit Administratorrechten von einer Eingabeaufforderung mit erhöhten Rechten (CMD) oder PowerShell ausgeführt werden.

DCDiag besteht aus einem Framework zum Ausführen von Tests und einer Reihe von Tests, um verschiedene Funktionsbereiche des Systems zu überprüfen. Dieses Framework wählt aus, welcher DC gemäß den Bereichsdirektiven des Benutzers getestet wird, z. B. Unternehmen, Standort oder Einzelserver. Das Testen der allgemeinen Konnektivität und Reaktionsfähigkeit des DC umfasst die Überprüfung von Folgendem:

  • Der DC kann sich in DNS befinden
  • Der DC antwortet auf ICMP-Pings (Internet Control Message Protocol)
  • Der DC ermöglicht die LDAP-Konnektivität (Lightweight Directory Access Protocol) durch Bindung an die Instanz
  • Der DC ermöglicht die Bindung an die AD RPC-Schnittstelle mithilfe der DsBindWithCred-Funktion.

Hinweis

Das Blockieren von ICMP verhindert, dass DCDiag wie beabsichtigt funktioniert. Während das Blockieren von ICMP am Internet-Edge Ihres Netzwerks empfohlen wird, führt die interne Blockierung von ICMP-Datenverkehr zu administrativen Problemen, die ältere Gruppenrichtlinien, die Erkennung von Black Hole Routern oder ineffiziente MTU-Größen aufgrund fehlender Ermittlungsoption unterbrechen. Problembehandlungstools wie ping.exe oder tracert.exe sind ebenfalls betroffen.

DCDiag-Syntax

dcdiag [/s:<DomainController>] [/n:<NamingContext>] [/u:<Domain>\<UserName> /p:{* | <Password> | ""}] [{/a | /e}] [{/q | /v}] [/i] [/f:<LogFile>] [/c [/skip:<Test>]] [/test:<Test>] [/fix] [{/h | /?}] [/ReplSource:<SourceDomainController>]

DCDiag verwendet die folgenden Parameter:

Parameter BESCHREIBUNG
/s:<DomainController> Gibt den Namen des Servers an, für den der Befehl ausgeführt werden soll. Wenn dieser Parameter nicht angegeben wird, werden die Tests für den lokalen Domänencontroller ausgeführt.

Dieser Parameter wird für DcPromo- und RegisterInDns-Tests ignoriert, die nur lokal ausgeführt werden können.
/n:<NamingContext> Verwendet NamingContext als zu testenden Namenskontext. Sie können Domänen im NetBIOS-, DNS- oder DN-Format (Domain Name System oder Distinguished Name) angeben.
/u:<Domain>\<UserName> /p:{<Password> | ""} Verwendet „Domäne\Benutzername“. Dcdiag verwendet die aktuellen Anmeldeinformationen des angemeldeten Benutzers (oder Prozesses). Wenn alternative Anmeldeinformationen erforderlich sind, verwenden Sie die folgenden Optionen, um diese Anmeldeinformationen für die Bindung mit Kennwort als Kennwort anzugeben: Verwenden Sie Anführungszeichen ("") für ein leeres oder NULL-Kennwort. Verwenden Sie das Platzhalterzeichen (*), um zur Eingabe des Kennworts aufzufordern.
/a Testet alle Server an diesem AD DS-Standort.
/e Testet alle Server im Unternehmen. Dadurch wird /a überschrieben.
/q Stiller Modus. Gibt nur Fehlermeldungen aus.
/v Ausführlich. Gibt erweiterte Informationen aus.
/fix Wirkt sich nur auf den MachineAccount-Test aus. Dieser Parameter bewirkt, dass der Test die Dienstprinzipalnamen (Service Principal Names, SPNs) für das Computerkontoobjekt des Domänencontrollers korrigiert.
/f:<LogFile> Leitet die gesamte Ausgabe an eine Protokolldatei um.
/c Umfassende Lösung. Führt alle Tests mit Ausnahme von DCPromo und RegisterInDNS aus, einschließlich nicht standardmäßiger Tests. Optional können Sie diesen Parameter mit dem /skip-Parameter verwenden, um angegebene Tests zu überspringen.

Die folgenden Tests werden nicht standardmäßig ausgeführt:
  • Topologie
  • CutoffServers
  • OutboundSecureChannels.
/h oder /? Zeigt die Hilfe an der Eingabeaufforderung an.
/test:<Test> Führt nur diesen Test aus. Der Verbindungstest kann nicht mit dem /skip-Parameter übersprungen werden.
/ReplSource:<SourceDomainController> Testet die Verbindung zwischen dem Domänencontroller, auf dem Sie den Befehl ausführen, und dem Quelldomänencontroller. (Dieser Parameter wird für den CheckSecurityError-Test verwendet.)

SourceDomainController ist der DNS-Name, NetBIOS-Name oder Distinguished Name eines echten oder potenziellen Servers, der der Quelldomänencontroller für die Replikation ist, wie durch ein echtes oder potenzielles Verbindungsobjekt dargestellt.

Bekannte DCDiag-Tests

In der folgenden Tabelle werden bekannte Tests angezeigt, die standardmäßig ausgeführt werden, sofern nicht anders angegeben.

Testen Beschreibung
Werbung Überprüft, ob sich jeder Domänencontroller in den Rollen ankündigt, die er ausführen kann. Dieser Test überprüft, ob die öffentliche DsGetDcName-Funktion, die von Computern zum Auffinden von Domänencontrollern verwendet wird, alle DCs korrekt findet.

Bei diesem Test tritt ein Fehler auf, wenn der Anmeldedienst beendet wurde oder nicht gestartet werden konnte. Wenn der Key Distribution Key (KDC)-Dienst beendet wird, schlägt der Advertising-Test fehl, da das von DsGetDcName zurückgegebene Flag keinen KDC enthält. Wenn Port 88 über TCP und UDP in einer Firewall blockiert wird, wird der Advertising-Test bestanden, obwohl der KDC keine Kerberos-Tickets-Anforderungen beantworten kann.
CheckSDRefDom Überprüft, ob alle Anwendungsverzeichnispartitionen über geeignete Sicherheitsbeschreibungs-Referenzdomänen verfügen.

Dieser Test verwendet LDAP und überprüft, ob Querverweisobjekte, die sich in cn=partitions,cn=configuration,dc=<forest root domain> befinden, die richtigen Domänennamen in ihren msDS-SDReferenceDomain-Attributen enthalten.
CheckSecurityError Der Test wird standardmäßig nicht ausgeführt. Führt verschiedene Sicherheitsprüfungen für Fehler im Zusammenhang mit den Sicherheitskomponenten des DC aus, z. B. Probleme mit der Sicherheitsrichtlinie oder der Sicherheitsdatenbank mithilfe von LDAP, RPC, RPC über SMB und ICMP. Er überprüft Folgendes:
  • Dass mindestens ein KDC für jede Domäne online und erreichbar ist.
  • Dass das Computerobjekt des DCs auf andere DCs repliziert wurde.
  • Wenn die Paketfragmentierung von Kerberos über UDP möglicherweise ein Problem auf der Grundlage der aktuellen MTU-Größe ist, indem nicht fragmentierte ICMP-Pakete gesendet werden.
  • Dass es keine Replikations- oder KCC (Knowledge Consistency Checker)-Verbindungsprobleme für verbundene Partner gibt, indem die Funktion DsReplicaGetInfo abgefragt wird, um sicherheitsbezogene Fehler zu erhalten.
  • Wenn das DCs-Computerkonto in Active Directory (AD) als Teil der Standard-„Domänencontroller“-OU zusammen mit den richtigen UserAccountControl-Flags für DCs vorhanden ist, werden die richtigen ServerReference-Attribute festgelegt und die mindestens erforderlichen Dienstprinzipalnamen (Service Principal Names, SPN) konfiguriert.

Wenn der Parameter /ReplSource hinzugefügt wird, überprüft der Partner außerdem Folgendes:
  • Die Zeitabweichung zwischen den Servern, um zu überprüfen, ob sie weniger als 300 Sekunden (5 Minuten) für Kerberos beträgt. Die Kerberos-Richtlinie wird nicht überprüft, um festzustellen, ob die zulässige Abweichung geändert wurde.
  • Berechtigungen für alle Namenskontexte (z. B. Schema, Konfiguration usw.) für den Quell-DC, der Replikations- und Verbindungsfunktionen zwischen DCs überprüft.
  • Konnektivität, um zu überprüfen, ob der Benutzer, der DCDiag ausführt, eine Verbindung mit SYSVOL- und NETLOGON-Freigaben ohne Sicherheitsfehler herstellen und lesen kann.
  • Die Berechtigung Zugriff auf diesen Computer über das Netzwerk auf dem DC wird überprüft, um zu verifizieren, ob die Gruppen Administratoren, Authentifizierte Benutzer und Alle über sie verfügen.
  • Das Computerobjekt des DCs wird überprüft, um sicherzustellen, dass es sich um die neueste Version auf den DCs handelt. Dies geschieht, um die Replikationskonvergenz zusammen mit der Überprüfung von Versionen, USNs, Ursprungsservern und Zeitstempeln zu beweisen.
Konnektivität Überprüft mithilfe von LDAP und RPC, ob DSA und DNS registriert und erreichbar sind.
CrossRefValidation Ruft eine Liste der Namenskontexte, die sich in cn=partitions,cn=configuration,dc=<forest root domain> befindet, mit ihren Querverweisen ab und überprüft sie dann ähnlich wie der CheckSDRefDom-Test mit LDAP. Dieser Test untersucht die Attribute „nCName“, „dnsRoot“, „nETBIOSName“ und „systemFlags“:
  • Stellen Sie sicher, dass DNs-Namen nicht ungültig oder Null sind.
  • Bestätigen Sie, dass DNs von CNF oder 0ADEL nicht geändert wurden.
  • Stellen Sie sicher, dass systemFlags für dieses Objekt korrekt sind.
  • Rufen Sie leere (verwaiste) Replikatgruppen auf.
CutoffServers Testet die AD-Replikation, um sicherzustellen, dass keine DCs ohne funktionierende Verbindungsobjekte zwischen Partnern vorhanden sind. Alle Server, die eingehende oder ausgehende Daten von DCs nicht replizieren können, gelten als „abgeschnitten“ mit der DsReplicaSyncAll-Funktion, die die Replikation auf den DCs auslöst. Verwenden Sie den /e-Parameter mit Vorsicht, wenn es schlecht implementierte WAN-Verbindungen gibt, die mithilfe von Zeitplänen sauber gehalten werden.

Wenn kein Server kontaktiert werden kann oder für LDAP im Netzwerk nicht verfügbar ist, werden keine Fehler- oder Testergebnisse bereitgestellt, auch wenn der /v-Parameter angegeben ist. Dieser Test verwendet RPC.
DcPromo Testet anhand des Servers, der in den Client-DNS-Einstellungen angegeben ist, ob die Infrastruktur die erforderlichen Anforderungen erfüllt, um Ihr Gerät auf einen DC hochzustufen. Dieser Test verwendet DNS im Netzwerk und überprüft:
  • Ob mindestens für einen Netzwerkadapter ein primärer DNS-Server festgelegt wurde.
  • Ob ein nicht zusammenhängender Namespace basierend auf dem DNS-Suffix vorhanden ist.
  • Diese vorgeschlagene autoritative DNS-Zone kann kontaktiert werden.
  • Ob dynamische DNS-Updates für den A-Eintrag des Servers möglich sind. Er überprüft sowohl die Einstellung für die autoritative DNS-Zone als auch die Clientregistrierungskonfiguration für DnsUpdateOnAllAdapters und DisableDynamicUpdate.
  • Ob ein LDAP-DClocator-Eintrag wie _ldap._tcp.dc._msdcs.<domain> zurückgegeben wird, wenn Sie vorhandene Gesamtstrukturen abfragen.

Folgende Argumente sind erforderlich:
  • /DnsDomain:<Active_Directory_Domain_DNS_Name>
    • Für die Verwendung dieses Parameters ist eines der folgenden Argumente erforderlich: /ChildDomain, /NewForest, /NewTree oder /ReplicaDC
  • Wenn /NewTree angegeben ist, ist das folgende Argument erforderlich:
    • /ForestRoot:<Forest_Root_Domain_DNS_Name>
DFSREvent Dieser Test überprüft die Integrität des DFSR-Diensts (Distributed File System Replication), indem die Warnung des DFSR-Ereignisprotokolls und Fehlereinträge aus den letzten 24 Stunden überprüft werden. Dieser Test verwendet RPC und EventLog Remoting-Protocol.
Domain Name System Testet unternehmensweite DNS-Integritätsprüfungen mithilfe von DNS-, RPC- und WMI-Protokollen. Wird nicht standardmäßig ausgeführt und muss explizit angefordert werden. Siehe DNS-Syntax.
FrsEvent Überprüft, ob Fehler im Ereignisprotokoll des Dateireplikationsdiensts (File Replication Service, FRS) aus den letzten 24 Stunden vorliegen, da die fehlerhafte Replikation der SysVol-Freigabe Richtlinienprobleme verursachen kann. Dieser Test verwendet RPC und EventLog Remoting-Protocol.
InterSite Überprüft auf Fehler, die die standortübergreifende Replikation verhindern oder vorübergehend anhalten würden, und sagt voraus, wie lange die Wiederherstellung der KCC dauern würde. Dieser Test verwendet DRS-Funktionen, um nach Bedingungen zu suchen, die eine standortübergreifende AD-Replikation innerhalb eines bestimmten Standorts oder aller Standorte verhindern würden. Dies geht folgendermaßen:
  • Suchen und Herstellen einer Verbindung mit den Intersite Topology Generators (ISTG).
  • Suchen und Herstellen einer Verbindung mit den Bridgeheadservern.
  • Melden von Replikationsfehlern nach dem Auslösen einer Replikation.
  • Die Überprüfung aller DCs innerhalb von Websites mit eingehenden Verbindungen zu dieser Website ist verfügbar.
  • Überprüfen der KCC-Werte auf IntersiteFailuresAllowed- und MaxFailureTimeForIntersiteLink-Außerkraftsetzungen innerhalb des Registrierungsschlüssels: KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters.

Der Parameter /a oder /e muss verwendet werden, da die fehlender Angabe einer Website die Ausführung des Tests ermöglicht, aber tatsächliche Tests überspringt. Dieser Test verwendet RPC über das Netzwerk, um die Replikationsaspekte zu testen und Registrierungsverbindungen aufzufordern, nach NTDS-Außerkraftsetzungseinträgen zu suchen. LDAP wird auch verwendet, um Verbindungsinformationen zu finden.
KccEvent Dieser Test fragt die KCC auf dem DC nach Fehlern und Warnungen ab, die in den letzten 15 Minuten im Ereignisprotokoll der Verzeichnisdienste generiert wurden. Der Schwellenwert von 15 Minuten ist unabhängig vom Registrierungswert der Repl-Topologieaktualisierung (s) auf dem DC.

Wenn Firewallregeln diesen Test nicht bestehen lassen, lesen Sie KB2512643, die die Aktivierung dieser Regeln abdeckt, damit der Test erfolgreich ausgeführt werden kann. Dieser Test verwendet RPC zusammen mit dem EventLog Remoting-Protokoll.
KnowsOfRoleHolders Dieser Test gibt die Kenntnisse der DCs über die fünf Rollen „Flexible Single Master Operation (FSMO)“ zurück, überprüft jedoch nicht alle DCs auf Konsistenz. Die Verwendung des /e-Parameters stellt Daten für den Vergleich bereit. Dieser Test verwendet RPC, um DSListRoles innerhalb der Funktionen des Verzeichnisreplikationsdiensts (Directory Replication Service, DRS) zurückzugeben.
MachineAccount Überprüft, ob das Computerkonto ordnungsgemäß registriert ist und ob die Dienste mit LDAP und RPC über SMB angekündigt werden, einschließlich de Überprüfung von Folgendem:
  • Das Computerkonto des DC ist in AD vorhanden.
  • Es befindet sich innerhalb der Domänencontroller-OU.
  • Es verfügt über die richtigen UserAccountControl-Flags für DCs.
  • Die richtigen ServerReference-Attribute werden festgelegt.
  • Die minimalen Dienstprinzipalnamen (Service Principal Names, SPN) werden festgelegt. Dieser Test ist identisch mit CheckSecurityError, da sie denselben internen Test verwenden.

Dieser Test verfügt auch über zwei Reparaturoptionen:
  • /RecreateMachineAccount - Erstellt ein fehlendes DC-Computerobjekt neu. Dies ist kein empfohlener Fix, da keine untergeordneten Objekte eines DC neu erstellt werden, z. B. FRS- und DFSR-Abonnements. Die bewährte Methode besteht darin, eine gültige SystemState-Sicherung zu verwenden, um das gelöschte Objekt und untergeordnete Objekte des DC autoritativ wiederherzustellen. Wenn Sie diese Option verwenden, muss der DC ordnungsgemäß herabgestuft und heraufgestuft werden, um alle fehlenden Beziehungen zu reparieren.
  • /FixMachineAccount – Fügt die UserAccountControl-Flags TRUSTED_FOR_DELEGATION und SERVER_TRUST_ACCOUNT zu einem Computerobjekt für DCs hinzu. Die Verwendung dieser Reparaturoption wird bevorzugt, statt zu versuchen, diese Flags selbst über ADSIEDIT oder andere LDAP-Editoren festzulegen.
NCSecDesc Überprüft Berechtigungen für alle Namenskontexte (z. B. Schema, Konfiguration usw.) auf dem Quell-DC, um zu überprüfen, ob die Replikation und Konnektivität zwischen DCs funktioniert. Es stellt sicher, dass Unternehmensdomänencontroller und Administratorengruppen über die richtigen Mindestberechtigungen verfügen, was derselbe Test ist, der innerhalb von CheckSecurityErrordurchgeführt wurde. Dieser Test verwendet LDAP.
NetLogons Überprüft, ob der Benutzer, der DCDiag ausführt, eine Verbindung mit SYSVOL- und NETLOGON-Freigaben ohne Sicherheitsfehler herstellen und diese lesen kann. Außerdem wird überprüft, ob die Gruppe Administratoren, Authentifizierte Benutzer und Alle den Zugriff auf diesen Computer über das Netzwerk-Berechtigung auf dem DC hat.
ObjectsReplicated Überprüft, ob das Computerkonto- und das DSA-Objekt (Directory System Agent) repliziert wurden. Zwei Objekte werden standardmäßig überprüft und sind in jedem DC vorhanden und auf allen anderen DCs auf dem neuesten Stand:
  • CN=NTDS-Einstellungen
  • CN=<DC-Name>

Sie können den /objectdn:dn-Parameter mit dem /n:nc-Parameter verwenden, um ein zusätzliches zu überprüfende Objekt anzugeben. Dieser Test erfolgt mithilfe von RPC mit DRS-Funktionen.
OutboundSecureChannels Dieser Test wird nicht standardmäßig ausgeführt. Überprüft, ob sichere Kanäle von allen Domänencontrollern in der Domäne zu den Domänen vorhanden sind, die durch den /testdomain-Parameter angegeben werden. Der /nositerestriction-Parameter verhindert, dass DCDiag den Test auf die Domänencontroller am Standort beschränkt.
RegisterInDNS Überprüft, ob der Verzeichnisserver die DNS-Einträge des Verzeichnisservers registrieren kann. Diese Einträge müssen im DNS vorhanden sein, damit andere Computer diesen Verzeichnisserver für die <Active_Directory_Domain_DNS_Name>-Domäne suchen können. Dies meldet auch, ob Änderungen an der vorhandenen DNS-Infrastruktur erforderlich sind. Der Parameter /DnsDomain:<Active_Directory_Domain_DNS_Name> muss verwendet werden. Dieser Test überprüft:
  • Ob die autorisierende DNS-Zone kontaktiert werden kann.
  • Ob mindestens für einen Netzwerkadapter ein primärer DNS-Server festgelegt wurde.
  • Wenn Sie einen nicht zusammenhängenden Namespace basierend auf dem DNS-Suffix haben würden.
  • Die vorgeschlagene autoritative DNS-Zone kann kontaktiert werden.
  • Ob dynamische DNS-Updates für den A-Eintrag des Servers möglich sind. Es überprüft Einstellungen für die autoritative DNS-Zone und die Clientregistrierungskonfiguration von DnsUpdateOnAllAdapters und DisableDynamicUpdate.
  • Ob ein LDAP-DClocator-Eintrag wie _ldap._tcp.dc._msdcs.<domain> zurückgegeben wird, wenn Sie vorhandene Gesamtstrukturen abfragen.
Replikationen Bei diesem Test werden alle AD-Replikationsverbindungsobjekte auf alle Benennungskontexte in angegebenen DC(n) überprüft, wenn:
  • Der letzte Replikationsversuch war erfolgreich oder gibt einen Fehler zurück.
  • Diese Replikation ist deaktiviert.
  • Die Replikationslatenz beträgt mehr als 12 Stunden.
RidManager Überprüft, ob auf den Master des relativen Bezeichners (RID) zugegriffen werden kann und ob:
  • Er die richtigen Informationen enthält.
  • Kann über einen DsBind gefunden und kontaktiert werden.
  • Verfügt über gültige RID-Poolwerte.

Der Rolleninhaber muss online und für DCs zugänglich sein, um Sicherheitsprinzipale (Benutzer, Computer und Gruppen) sowie weitere DCs zu erstellen, die innerhalb einer Domäne heraufgestuft werden sollen. Dieser Test verwendet LDAP und RPC.
Dienste Dieser Test überprüft, ob verschiedene AD-abhängige Dienste ausgeführt werden sowie, zugänglich und auf bestimmte Starttypen festgelegt sind. Diese Dienste werden automatisch gestartet und in einem freigegebenen Prozess ausgeführt, sofern nicht anders angegeben:
  • DFSR (wird in einem eigenen Prozess ausgeführt)
  • DNSCACHE
  • EVENTSYSTEM
  • IISADMIN (bei Verwendung der SMTP-basierten AD-Replikation)
  • ISMSERV
  • KDC
  • NETLOGON
  • NTDS
  • NTFRS (wird in einem eigenen Prozess ausgeführt)
  • RPCSS
  • SAMSS
  • SERVER
  • SMTPSVC (Bei Verwendung der SMTP-basierten AD-Replikation)
  • W32TIME (wird automatisch oder manuell gestartet)
  • ARBEITSSTATION

Diese Dienstnamen werden im Registrierungspfad HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services aufgeführt. Dieser Test verwendet RPC und das Remoteprotokoll Dienststeuerungs-Managers.
SysVolCheck Dieser Test liest den Registrierungsschlüssel „Netlogon SysVolReady“ vor, um zu überprüfen, ob SYSVOL bereit ist. Der Wertname muss mit dem Wert 1 vorhanden sein, um diesen Test zu bestehen, und funktioniert entweder mit FRS- oder DFSR-replizierten SYSVOLs. Es wird nicht überprüft, ob auf die SYSVOL- und NELOGON-Freigaben zugegriffen werden kann, da dies von CheckSecurityError ausgeführt wird. Dieser Test verwendet RPC über SMB.
SystemLog Überprüft die Integrität des Systemereignisprotokolls, indem Einträge aus den letzten 60 Minuten auf Fehler und Warnungen gelesen und geschrieben werden. Dieser Test verwendet RPC und das Remoteprotokoll Dienststeuerungs-Managers.
Topologie Überprüft, ob die generierte AD-Replikationstopologie für alle DSAs vollständig verbunden ist. Dieser Test wird nicht standardmäßig ausgeführt und muss explizit ausgeführt werden. Er überprüft Folgendes:
  • Ob die automatische Generierung der standortinternen Topologie deaktiviert ist.
  • Ob die automatische Websitetopologiegenerierung deaktiviert ist.
  • Bei getrennten Topologien (fehlende Verbindungsobjekte), sowohl upstream als auch downstream von jedem Referenz-DC.

Dieser Test verwendet RPC, LDAP und DsReplicaSyncAll mit dem Flag DS_REPSYNCALL_DO_NOT_SYNC, was bedeutet, dass die Replikationstopologie analysiert und überprüft wird, ohne Änderungen tatsächlich replizieren zu müssen. Dieser Test überprüft nicht die Verfügbarkeit von Replikationspartnern. Wenn ein Partner offline ist, treten in diesem Test keine Fehler auf. Außerdem wird nicht getestet, ob der Zeitplan geschlossen ist und die Replikation verhindert wird. Um diese aktiven Replikationsergebnisse anzuzeigen, verwenden Sie Test Replikationen oder CutoffServers.
VerifyEnterpriseReferences Überprüft, ob die angegebenen Systemverweise für die FRS- und Replikationsinfrastruktur in allen Objekten im Unternehmen auf jedem Domänencontroller intakt sind. Dazu gehören die folgenden DC-Websiteattribute und -Objekte:
  • frsComputerReference: cn=domain system volume (sysvol share),cn=ntfrs subscriptions,cn=<DC Name>,ou=domain controllers,DC=<domain>
  • frsComputerReferenceBL: cn=<DC Name>,cn=domain system volume (sysvol share),cn=file replication service,cn=system,dc=<domain>
  • hasMasterNCs: cn=ntds settings,cn=<DC Name>,cn=<site>,cn=sites,cn=configuration,dc=<domain>
  • msDFSR-ComputerReference: cn=<DC Name>,cn=topology,cn=domain system volume,cn=dfsr-blobalsettings,cn=system,dc=<domain>
  • msDFSR-ComputerReferenceBL: cn=<DC Name>,ou=domain controllers,dc=<domain>
  • nCName: cn=<partition name>,cn=partitions,cn=configuration,dc=<domain>
  • ServerReference: cn=<DC name,cn>=<site,cn>=sites,cn=configuration,dc=<domain>
  • ServerReferenceBL: cn=<DC Name,ou>=Domänencontroller,dc=<domain>

Die beiden DFSR-Tests werden nur ausgeführt, wenn die Domänenfunktionsebene Windows Server 2008 oder höher ist. Dies bedeutet, dass ein erwarteter Fehler auftritt, wenn DFSR nicht zu SYSVOL migriert wurde. Dieser Test verwendet LDAP und nur die angegebenen DCs werden kontaktiert.
VerifyReferences Überprüft, ob bestimmte Systemverweise für die FRS- und Replikationsinfrastruktur intakt sind. Dieser Test überprüft Computerreferenzattribute für einen einzelnen DC, einschließlich der folgenden DC-Websiteattribute und -objekte:
  • frsComputerReference: cn=domain system volume (sysvol share),cn=ntfrs subscriptions,cn=<DC Name>,ou=domain controllers,DC=<domain>
  • frsComputerReferenceBL: cn=<DC Name>,cn=domain system volume (sysvol share),cn=file replication service,cn=system,dc=<domain>
  • msDFSR-ComputerReference: cn=<DC Name>,cn=topology,cn=domain system volume,cn=dfsr-blobalsettings,cn=system,dc=<domain>
  • msDFSR-ComputerReferenceBL: cn=<DC Name>,ou=domain controllers,dc=<domain>
  • ServerReference: cn=<DC name,cn>=<site,cn>=sites,cn=configuration,dc=<domain>
  • ServerReferenceBL: cn=<DC Name,ou>=Domänencontroller,dc=<domain>

Dieser Test verwendet LDAP und ähnelt dem VerifyEnterpriseRefrences-Test, mit der Ausnahme, dass partitionsübergreifende Verweise oder alle anderen DC-Objekte nicht überprüft werden.
VerifyReplicas Überprüft, ob alle Anwendungsverzeichnispartitionen auf allen Replikatservern vollständig instanziiert sind. Es wird überprüft, ob der angegebene Server die Anwendungspartitionen hostet, die durch seine Crossref-Attribute im Partitionscontainer angegeben sind. Er funktioniert wie CheckSDRefDom, mit der Ausnahme, dass keine Ausgabedaten angezeigt und das Hosting überprüft werden. Dieser Test verwendet LDAP.

Hinweis

Konnektivitätsprüfungen auf Domänencontrollern, die im Netzwerk registriert sind und eine Verbindung mit anderen Ressourcen wie DNS, LDAP und RPC herstellen, können nicht übersprungen werden.

DNS-Syntax

dcdiag /test:DNS [/DnsBasic | /DnsForwarders | /DnsDelegation | /DnsDynamicUpdate | /DnsRecordRegistration | /DnsResolveExtName [/DnsInternetName:<InternetName>] | /DnsAll] [/f:<LogFile>] [/x:<XMLLog.xml>] [/xsl:<XSLFile.xsl> or <XSLTFile.xslt>] [/s:<DomainController>] [/e] [/v]

Der DNS-Test verwendet die folgenden Parameter:

Parameter BESCHREIBUNG
/test:DNS Führt den angegebenen DNS-Test aus. Wenn kein Test angegeben ist, wird standardmäßig /DnsAll verwendet.
/DnsBasic Führt grundlegende DNS-Tests aus, einschließlich Netzwerkkonnektivität, DNS-Clientkonfiguration, Dienstverfügbarkeit und Zonenexistenz.
/DnsForwarders Führt die /DnsBasic-Tests aus und überprüft auch die Konfiguration von Weiterleitungen.
/DnsDelegation Führt die /DnsBasic-Tests aus und überprüft auch auf ordnungsgemäße Delegierungen.
/DnsDynamicUpdate Führt /DnsBasic-Tests aus und bestimmt auch, ob die dynamische Aktualisierung in der Active Directory-Zone aktiviert ist.
/DnsRecordRegistration Führt die /DnsBasic-Tests aus und überprüft auch, ob die Ressourceneinträge für die Adresse (A), den kanonischen Namen (CNAME) und den bekannten Dienst (SRV) registriert sind. Erstellt außerdem basierend auf den Testergebnissen einen Inventurbericht.
/DnsResolveExtName [/DnsInternetName:\<InternetName>] Führt die /DnsBasic-Tests aus und versucht auch, InternetName aufzulösen. Wenn /DnsInternetName nicht angegeben ist, wird versucht, den Namen <www.microsoft.com> aufzulösen. Wenn /DnsInternetName angegeben ist, wird versucht, den vom Benutzer angegebenen Internet-Namen aufzulösen.
/DnsAll Führt alle Tests mit Ausnahme des /DnsResolveExtName-Tests aus und generiert einen Bericht.
/f:<LogFile> Leitet die gesamte Ausgabe an eine Protokolldatei um.
/s:<DomainController> Führt die Tests für den Domänencontroller aus. Wenn dieser Parameter nicht angegeben wird, werden die Tests für den lokalen Domänencontroller ausgeführt.
/e Führt alle von /test:DNS angegebenen Tests für alle Domänencontroller in der Active Directory-Gesamtstruktur aus.
/v Ausführlich. Stellt neben Informationen zu Fehlern und Warnungen auch erweiterte Informationen zu erfolgreichen Testergebnissen bereit.
Wenn der /v-Parameter nicht verwendet wird, werden nur Fehler- und Warnungsinformationen bereitgestellt. Verwenden Sie die /v-Option, wenn Fehler oder Warnungen in der Zusammenfassungstabelle gemeldet werden.
/x:<XMLLog.xml> Leitet alle Ausgaben an „xmllog.xml“ um. Dieser Parameter funktioniert nur mit der /test:DNS-Option.
/xsl:<XSLFile.xsl> oder
/xsl:<XSLTFile.xslt>
Fügt die Verarbeitungsanweisungen hinzu, die auf das angegebene Blatt verweisen. Dieser Parameter funktioniert nur mit der /test:DNS /x:<XMLLog.xml-Option.

Hinweis

Die Ausführungszeiten für DNS-Tests können in großen Unternehmen erheblich sein, wenn der /e-Parameter verwendet wird. Domänencontroller und DNS-Server, die offline sind, erhöhen die Laufzeiten aufgrund langer Timeoutperioden für RPC und andere Protokolle.

Beispiele

Konnektivitätstest

Führen Sie den folgenden Befehl aus, um eine Reihe von Konnektivitätstests für die lokale Domäne auszuführen:

dcdiag

Eine erfolgreiche Verbindungstestausgabe:

Directory Server Diagnosis


Performing initial setup:

   Trying to find home server...

   Home Server = MapleWaffle-WS22

   * Identified AD Forest. 
   Done gathering initial info.


Doing initial required tests

   
   Testing server: Default-First-Site-Name\MAPLEWAFFLE-WS2

      Starting test: Connectivity

         ......................... MAPLEWAFFLE-WS2 passed test Connectivity


Doing primary tests

      Testing server: Default-First-Site-Name\MAPLEWAFFLE-WS2

      Starting test: Advertising
         ......................... MAPLEWAFFLE-WS2 passed test Advertising

      Starting test: FrsEvent
         ......................... MAPLEWAFFLE-WS2 passed test FrsEvent

      Starting test: DFSREvent
         ......................... MAPLEWAFFLE-WS2 passed test DFSREvent

      Starting test: SysVolCheck
         ......................... MAPLEWAFFLE-WS2 passed test SysVolCheck

      Starting test: KccEvent
         ......................... MAPLEWAFFLE-WS2 passed test KccEvent

      Starting test: KnowsOfRoleHolders
         ......................... MAPLEWAFFLE-WS2 passed test KnowsOfRoleHolders

      Starting test: MachineAccount
         ......................... MAPLEWAFFLE-WS2 passed test MachineAccount

      Starting test: NCSecDesc
         ......................... MAPLEWAFFLE-WS2 passed test NCSecDesc

      Starting test: NetLogons
         ......................... MAPLEWAFFLE-WS2 passed test NetLogons

      Starting test: ObjectsReplicated
         ......................... MAPLEWAFFLE-WS2 passed test ObjectsReplicated

      Starting test: Replications
         ......................... MAPLEWAFFLE-WS2 passed test Replications

      Starting test: RidManager
         ......................... MAPLEWAFFLE-WS2 passed test RidManager

      Starting test: Services
         ......................... MAPLEWAFFLE-WS2 passed test Services

      Starting test: SystemLog
         ......................... MAPLEWAFFLE-WS2 passed test SystemLog

      Starting test: VerifyReferences
         ......................... MAPLEWAFFLE-WS2 passed test VerifyReferences
 
   Running partition tests on : ForestDnsZones

      Starting test: CheckSDRefDom
         ......................... ForestDnsZones passed test CheckSDRefDom

      Starting test: CrossRefValidation
         ......................... ForestDnsZones passed test CrossRefValidation

   Running partition tests on : DomainDnsZones

      Starting test: CheckSDRefDom
         ......................... DomainDnsZones passed test CheckSDRefDom

      Starting test: CrossRefValidation
         ......................... DomainDnsZones passed test CrossRefValidation
   
   Running partition tests on : Schema

      Starting test: CheckSDRefDom
         ......................... Schema passed test CheckSDRefDom

      Starting test: CrossRefValidation
         ......................... Schema passed test CrossRefValidation
   
   Running partition tests on : Configuration

      Starting test: CheckSDRefDom
         ......................... Configuration passed test 
         CheckSDRefDom

      Starting test: CrossRefValidation
         ......................... Configuration passed test 
         CrossRefValidation
   
   Running partition tests on : corp

      Starting test: CheckSDRefDom
         ......................... corp passed test CheckSDRefDom

      Starting test: CrossRefValidation
         ......................... corp passed test CrossRefValidation
   
   Running enterprise tests on : corp.contoso.com

      Starting test: LocatorCheck
         ......................... corp.contoso.com passed test
         LocatorCheck

      Starting test: Intersite
         ......................... corp.contoso.com passed test 
         Intersite

Führen Sie den folgenden Befehl aus, um eine Reihe von Konnektivitätstests auf einem bestimmten Domänencontroller auszuführen:

dcdiag /s:<DomainControllerName>

Die Ergebnisse sollten denen vom lokalen Test ähneln, wenn keine Probleme auftreten.

Ausgabe in eine Protokolldatei

DCDiag kann die Ausgabeergebnisse in einer Textdatei speichern, indem Folgendes ausgeführt wird:

dcdiag /s:<DomainControllerName> /f:<FileName.txt>

Wenn kein <FilePath> angegeben ist, werden die Ergebnisse standardmäßig in C:\Users\<UserName>\<FileName.txt> gespeichert.

Führen Sie Folgendes aus, um an einem bestimmten Speicherort zu speichern:

dcdiag /s:<DomainControllerName> /f:<DriveLetter>\<FilePath>\<FileName.txt>

Siehe auch

Erläuterung zur Befehlszeilensyntax