DCDiag

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

DCDiag.exe analysiert den Status von Domänencontrollern (DC) in einer Gesamtstruktur oder einem Unternehmen und meldet alle Probleme zur Problembehandlung. Als Endbenutzerberichtsprogramm ist DCDiag ein Befehlszeilentool, das detaillierte Kenntnisse darüber kapselt, wie ein ungewöhnliches Verhalten im System identifiziert werden kann.

DcDiag ist standardmäßig sofort verfügbar, wenn er bei einem DC angemeldet ist. 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 an einer Eingabeaufforderung mit erhöhten Rechten (CMD) oder PowerShell ausgeführt werden.

DCDiag besteht aus einem Framework für die Ausführung von Tests und einer Reihe von Tests, um verschiedene Funktionsbereiche des Systems zu überprüfen. Dieses Framework wählt aus, welcher DC gemäß Bereichsdirektiven vom Benutzer getestet wird, z. B. Unternehmens-, Standort- oder Einzelserver. Das Testen der Gesamtkonnektivität und Reaktionsfähigkeit des DC umfasst die Überprüfung:

  • 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 .

Note

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 Description
/s:<DomainController> Gibt den Namen des Servers an, für den der Befehl ausgeführt werden soll. Wenn dieser Parameter nicht angegeben ist, 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 Namenskontext zum Testen. Sie können Domänen in NetBIOS, Domain Name System (DNS) oder im Distinguished Name Format angeben.
/u:<Domain>\<UserName> /p:{<Password> | ""} Uses Domain\UserName. DCDiag verwendet die aktuellen Anmeldeinformationen des Benutzers (oder Prozesses), der angemeldet ist. 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 das Kennwort einzugeben.
/a Testet alle Server auf diesem AD DS-Standort.
/e Testet alle Server im Unternehmen. Dadurch wird /a außer Kraft gesetzt.
/q Quiet. Druckt nur Fehlermeldungen.
/v Verbose. Druckt erweiterte Informationen.
/fix Betrifft nur den MachineAccount-Test. Dieser Parameter bewirkt, dass der Test die Dienstprinzipalnamen (SERVICE Principal Names, SPNs) auf dem Computerkontoobjekt des Domänencontrollers korrigiert.
/f:<LogFile> Leitet alle Ausgaben an eine Protokolldatei um.
/c Comprehensive. Führt alle Tests außer DCPromo und RegisterInDNS aus, einschließlich nicht standardmäßiger Tests. Optional können Sie diesen Parameter mit dem /skip Parameter verwenden, um die angegebenen Tests zu überspringen.

Die folgenden Tests werden standardmäßig nicht ausgeführt:
  • Topology
  • CutoffServers
  • OutboundSecureChannels.
/h oder /? Zeigt die Hilfe an der Eingabeaufforderung an.
/test:<Test> Führt diesen Test nur 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 und den Quelldomänencontroller ausführen. (Dieser Parameter wird für den CheckSecurityError-Test verwendet.)

SourceDomainController ist der DNS-Name, der NetBIOS-Name oder der distinguished Name eines echten oder potenziellen Servers, der der Quelldomänencontroller für die Replikation ist, wie durch ein reales 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.

Test Description
Advertising Überprüft, ob jeder Domänencontroller sich selbst in den Rollen angibt, die er ausführen kann. Mit diesem Test wird überprüft, ob die öffentliche DsGetDcName-Funktion , die von Computern zum Suchen von Domänencontrollern verwendet wird, alle DCs ordnungsgemäß findet.

Dieser Test schlägt fehl, wenn der Netlogon-Dienst beendet 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 keine KDC enthält. Wenn Port 88 über TCP und UDP in einer Firewall blockiert wird, besteht der Advertising-Test, obwohl der KDC keine Kerberos-Tickets-Anforderungen beantworten kann.
CheckSDRefDom Überprüft, ob alle Anwendungsverzeichnispartitionen über entsprechende Sicherheitsbeschreibungsreferenzdomänen verfügen.

Dieser Test verwendet LDAP und überprüft Referenzobjekte , die sich in cn=partitions,cn=configuration,dc=<forest root domain> enthalten die richtigen Domänennamen in ihren msDS-SDReferenceDomain-Attributen .
CheckSecurityError Der Test wird nicht standardmäßig 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 die Sicherheitsdatenbank mithilfe von LDAP, RPC, RPC über SMB und ICMP. It checks:
  • Mindestens ein KDC ist für jede Domäne online und erreichbar.
  • Das Computerobjekt für DCs wurde auf andere DCs repliziert.
  • 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-Verbindungsprobleme (Knowledge Consistency Checker) für verbundene Partner gibt, indem die Funktion DsReplicaGetInfo abgefragt wird, um sicherheitsbezogene Fehler abzurufen.
  • Wenn das Computerkonto des Domänencontrollers in Active Directory (AD) als Teil der Standarddomänencontroller-Organisationseinheit zusammen mit den richtigen UserAccountControl-Flags für Domänencontroller vorhanden ist, werden die richtigen ServerReference-Attribute festgelegt und es sind die mindestens erforderlichen Dienstprinzipalnamen (Service Principal Names, SPN) konfiguriert.

Wenn der Parameter /ReplSource hinzugefügt wird, überprüft der Partner auch:
  • Die Zeitverkniffung zwischen den Servern, um zu überprüfen, ob es weniger als 300 Sekunden (5 Minuten) für Kerberos ist. Die Kerberos-Richtlinie wird nicht überprüft, um festzustellen, ob die zulässige Schiefe 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.
  • Der Zugriff auf diesen Computer über die Netzwerkberechtigung auf dem DC wird überprüft, um zu überprüfen, ob er von den Gruppen "Administratoren", " Authentifizierte Benutzer" und "Jeder " gehalten wird.
  • Das Computerobjekt des DC wird überprüft, um sicherzustellen, dass es sich um die neueste Version auf den DCs handelt. Dies geschieht, um die Replikationskonvergenz nachzuweisen und Versionen, USNs, Ursprungsserver und Zeitstempel zu überprüfen.
Connectivity Überprüft, ob DSA und DNS mithilfe von LDAP und RPC registriert und erreichbar sind.
CrossRefValidation Ruft eine Liste von Namenskontexten ab, die sich in der Stammdomäne< cn=partitions,cn=configuration,dc=>forest befinden, mit ihren Querverweisen und validiert sie dann ähnlich wie beim 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 keine ein- oder ausgehende Replikation von DCs durchführen können, werden mit der DsReplicaSyncAll-Funktion , die die Replikation auf den DCs auslöst, als abgeschnitten betrachtet. 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, wenn die Infrastruktur die erforderlichen Anforderungen erfüllt, um Ihr Gerät auf einen DC zu bewerben. Dieser Test verwendet DNS im Netzwerk und überprüft:
  • Wenn mindestens ein Netzwerkadapter einen primären DNS-Server festgelegt hat.
  • Wenn 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. Sie überprüft sowohl die Einstellung für die autoritative DNS-Zone als auch die Clientregistrierungskonfiguration für DnsUpdateOnAllAdapters und DisableDynamicUpdate.
  • Wenn ein LDAP-DClocator-Eintrag wie _ldap._tcp.dc._msdcs.<Domäne> wird zurückgegeben, wenn Sie vorhandene Gesamtstrukturen abfragen.

Die folgenden Argumente sind erforderlich:
  • /DnsDomain:<Active_Directory_Domain_DNS_Name>
    • Für die Verwendung dieses Parameters ist eines der folgenden Argumente erforderlich: /ChildDomain, , /NewForest, /NewTree/ReplicaDC
  • Wenn /NewTree angegeben, ist das folgende Argument erforderlich:
    • /ForestRoot:<Forest_Root_Domain_DNS_Name>
DFSREvent Bei diesem Test wird die Integrität des DFSR-Diensts™(Distributed File System Replication) überprüft, indem die Warnung und die Fehlereinträge des DFSR-Ereignisprotokolls der letzten 24 Stunden überprüft werden. Dieser Test verwendet RPC und EventLog Remoting-Protokoll.
DNS Testet unternehmensweite DNS-Integritätsprüfungen mithilfe von DNS-, RPC- und WMI-Protokollen. Wird nicht standardmäßig ausgeführt und muss explizit angefordert werden. Weitere Informationen finden Sie unter DNS-Syntax.
FrsEvent Überprüft, ob fehler im Ereignisprotokoll des Dateireplikationsdiensts (FILE Replication Service, FRS) aus den letzten 24 Stunden auftreten, da die fehlerhafte Replikation der SysVol-Freigabe Richtlinienprobleme verursachen kann. Dieser Test verwendet RPC und EventLog Remoting-Protokoll.
Intersite Überprüft auf Fehler, die die standortübergreifende Replikation verhindern oder vorübergehend anhalten würden, und prognostiziert, wie lange die Wiederherstellung des 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, indem:
  • Suchen und Herstellen einer Verbindung mit den Intersite Topology Generators (ISTG).
  • Suchen und Herstellen einer Verbindung mit den Brückenkopfservern
  • 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 für IntersiteFailuresAllowed - und MaxFailureTimeForIntersiteLink-Außerkraftsetzungen im Registrierungsschlüssel: KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters.

Der /a Parameter /e muss verwendet werden, da keine Website bereitgestellt wird, die 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-Überschreibungseinträ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 dazu führen, dass dieser Test fehlschlägt, lesen Sie den KB2512643 , in dem es darum geht, diese Regeln zu aktivieren, 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. In diesem Test wird RPC verwendet, um DSListRoles innerhalb der DRS-Funktionen ( Directory Replication Service ) 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 überprüfung:

Dieser Test verfügt auch über zwei Reparaturoptionen:
  • /RecreateMachineAccount - Erstellt ein fehlendes DC-Computerobjekt neu. Dies ist keine empfohlene Lösung, da keine untergeordneten Objekte eines Domänencontrollers 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 DCs-Computerobjekt hinzu. Die Verwendung dieser Reparaturoption ist dem Versuch vorzuziehen, diese Flags selbst über ADSIEDIT oder andere LDAP-Editoren zu setzen.
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 CheckSecurityError durchgefü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 lesen kann. Außerdem wird überprüft, ob die Gruppen "Administratoren", "Authentifizierte Benutzer" und "Jeder " über die Netzwerkberechtigung auf dem DC auf diesen Computer zugreifen können.
ObjectsReplicated Überprüft, ob die Machine Account- und Directory System Agent (DSA)-Objekte 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 Settings
  • 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. Es überprüft, ob sichere Kanäle von allen Domänencontrollern in der Domäne zu den durch den /testdomain Parameter angegebenen Domänen vorhanden sind. 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 in 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. Diese Testüberprüfungen:
  • Die autorisierende DNS-Zone kann kontaktiert werden.
  • Wenn mindestens ein Netzwerkadapter einen primären DNS-Server festgelegt hat.
  • Wenn Sie über einen nicht zusammenhängenden Namespace verfügen, der auf dem DNS-Suffix basiert.
  • 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 die Einstellungen für die autorisierende DNS-Zone und die Clientregistrierungskonfiguration von DnsUpdateOnAllAdapters und DisableDynamicUpdate.
  • Wenn ein LDAP-DClocator-Eintrag wie _ldap._tcp.dc._msdcs.<Domäne> wird zurückgegeben, wenn Sie vorhandene Gesamtstrukturen abfragen.
Replications Dieser Test überprüft alle Verbindungsobjekte der AD-Replikation auf alle Namenskontexte auf angegebenen DCs, 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 RID-Master (Relative Identifier) zugegriffen werden kann und ob:
  • Sie enthält die richtigen Informationen.
  • Kann über eine DsBind geortet 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.
Services Dieser Test überprüft, ob verschiedene AD-abhängige Dienste ausgeführt, 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)
  • WORKSTATION

Diese Dienstnamen sind im Registrierungspfad HKEY_LOCAL_MACHINE\System\CurrentControlSet\Servicesaufgeführt. Dieser Test verwendet RPC und das Remoteprotokoll des Dienststeuerungs-Managers .
SysVolCheck Dieser Test liest den Netlogon SysVolReady-Registrierungsschlüssel des DCs, 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 der letzten 60 Minuten auf Fehler und Warnungen gelesen und geschrieben werden. Dieser Test verwendet RPC und das Remoteprotokoll des Dienststeuerungs-Managers .
Topology Ü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. It checks:
  • Wenn die automatische Generierung der standortinternen Topologie deaktiviert ist.
  • Wenn 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 tatsächlich Änderungen zu replizieren. 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 die Tests Replications oder CutoffServers.
VerifyEnterpriseReferences Überprüft, ob die angegebenen Systemverweise für die FRS- und Replikationsinfrastruktur für alle Objekte 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 Abonnements,cn=<DC Name,ou>=Domain Controller,DC=<Domäne>
  • frsComputerReferenceBL: cn=<DC Name,cn>=Domäne Systemvolume (sysvol share),cn=Dateireplikationsdienst,cn=system,dc=<Domäne>
  • hasMasterNCs: cn=ntds Einstellungen,cn=<DC Name,cn>=<Standort,cn>=Standort,cn=Konfiguration,dc=<Domäne>
  • msDFSR-ComputerReferenz: cn=<DC Name,cn>=Topologie,cn=Domäne Systemvolumen,cn=dfsr-blobalsettings,cn=System,dc=<Domäne>
  • msDFSR-ComputerReferenceBL: cn=<DC Name,ou>=Domänencontroller,dc=<Domäne>
  • nCName: cn=<Partitionsname,cn>=Partitionen,cn=Konfiguration,dc=<Domäne>
  • Serverreferenz: cn=<DC name,cn>=<site,cn>=sites,cn=configuration,dc=<domain>
  • ServerReferenceBL: cn=<DC Name,ou>=Domänencontroller,dc=<Domäne>

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 Abonnements,cn=<DC Name,ou>=Domain Controller,DC=<Domäne>
  • frsComputerReferenceBL: cn=<DC Name,cn>=Domäne Systemvolume (sysvol share),cn=Dateireplikationsdienst,cn=system,dc=<Domäne>
  • msDFSR-ComputerReferenz: cn=<DC Name,cn>=Topologie,cn=Domäne Systemvolumen,cn=dfsr-blobalsettings,cn=System,dc=<Domäne>
  • msDFSR-ComputerReferenceBL: cn=<DC Name,ou>=Domänencontroller,dc=<Domäne>
  • Serverreferenz: cn=<DC name,cn>=<site,cn>=sites,cn=configuration,dc=<domain>
  • ServerReferenceBL: cn=<DC Name,ou>=Domänencontroller,dc=<Domäne>

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

Note

Konnektivitätsüberprü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 Description
/test:DNS Führt den angegebenen DNS-Test aus. Wenn kein Test angegeben ist, wird standardmäßig auf /DnsAll.
/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 nach ordnungsgemäßen Delegierungen.
/DnsDynamicUpdate Führt /DnsBasic Tests aus und ermittelt außerdem, ob die dynamische Aktualisierung in der Active Directory-Zone aktiviert ist.
/DnsRecordRegistration Führt die /DnsBasic Tests aus und überprüft außerdem, ob die Adresseinträge (A), kanonischer Name (CNAME) und bekannte SrV-Ressourceneinträge registriert sind. Erstellt außerdem einen Bestandsbericht basierend auf den Testergebnissen.
/DnsResolveExtName [/DnsInternetName:\<InternetName>] Führt die /DnsBasic Tests aus und versucht auch, InternetName aufzulösen. Wenn /DnsInternetName nicht angegeben, wird versucht, den Namen <www.microsoft.com>aufzulösen. Wenn /DnsInternetName angegeben, wird versucht, den vom Benutzer angegebenen Internetnamen aufzulösen.
/DnsAll Führt alle Tests mit Ausnahme des /DnsResolveExtName Tests aus und generiert einen Bericht.
/f:<LogFile> Leitet alle Ausgaben an eine Protokolldatei um.
/s:<DomainController> Führt die Tests für den Domänencontroller aus. Wenn dieser Parameter nicht angegeben ist, werden die Tests für den lokalen Domänencontroller ausgeführt.
/e Führt alle Tests aus, die für /test:DNS alle Domänencontroller in der Active Directory-Gesamtstruktur angegeben sind.
/v Verbose. Stellt erweiterte Informationen zu erfolgreichen Testergebnissen zusätzlich zu Informationen zu Fehlern und Warnungen dar.
Wenn der /v Parameter nicht verwendet wird, werden nur Fehler- und Warnungsinformationen bereitgestellt. Verwenden Sie den /v Schalter, wenn Fehler oder Warnungen in der Zusammenfassungstabelle gemeldet werden.
/x:<XMLLog.xml> Leitet alle Ausgaben an xmllog.xmlum. 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.

Note

Laufzeiten 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 Zeiträume für RPC und andere Protokolle.

Examples

Connectivity test

Führen Sie den folgenden Befehl aus, um eine Reihe von Verbindungstests in der lokalen 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 Verbindungstests auf einem bestimmten Domänencontroller auszuführen:

dcdiag /s:<DomainControllerName>

Es sollte ähnliche Ergebnisse wie der lokale Test generieren, wenn keine Probleme auftreten.

Ausgabe in eine Protokolldatei

DCDiag kann die Ausgabeergebnisse in einer Textdatei speichern, indem Sie Folgendes ausführen:

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

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

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

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

See also

Erläuterung zur Befehlszeilensyntax