Búsqueda de sitios web

Dcdiag: Cómo comprobar el estado del controlador de dominio


En este tutorial, le mostraré cómo utilizar la utilidad de línea de comandos Dcdiag para realizar una verificación del estado del controlador de dominio y probar DNS.

También le mostraré una herramienta GUI que le permite verificar el estado de varios controladores de dominio a la vez.

Asegúrese de consultar la sección de ejemplos a continuación y le mostraré el resultado de un controlador de dominio normal y uno que tiene problemas.

Índice de contenidos:

  • ¿Qué es Dcdiag?
  • Cómo instalar Dcdiag
  • Verifique el estado de Active Directory usando Dcdiag
  • Automatizar la verificación del estado de AD (informe por correo electrónico)
  • Pruebas de diagnóstico de Active Directory

Vamos a sumergirnos de lleno.

¿Qué es Dcdiag?

Dcdiag es una utilidad de línea de comandos de Microsoft Windows que puede analizar el estado de los controladores de dominio en un bosque o empresa. Puede optar por analizar un único controlador de dominio o todos los controladores de dominio en un bosque.

Quizás esté pensando: ¿qué tan bien funciona realmente una utilidad de línea de comandos para probar y encontrar problemas con los controladores de dominio?

Bueno, ¡realmente hace un trabajo bastante bueno! Me sorprendió descubrir cuántas pruebas diferentes realizó realmente este comando.

Conté un total de 30 pruebas diferentes y algunas pruebas tenían varias pruebas.

Entonces, ¿qué hace realmente Dcdiag? ¿Qué tipo de pruebas realiza?

Puede ver una lista de pruebas en el menú de ayuda del comando, ejecute dcdiag /? para ver el menú de ayuda.

Debo admitir que las descripciones del comando de ayuda no son tan útiles. Encontré una buena publicación de blog de Ned Pyle llamada ¿Qué hace realmente DCDiag? que explica cada prueba con más detalles. Si está interesado en saber exactamente qué hace el comando Dcdiag, le recomiendo que lea esa publicación.

Cómo instalar Dcdiag

Si desea ejecutar Dcdiag o utilizar la herramienta Active Directory Health Check, deberá instalar las herramientas RSAT.

Es muy probable que ya tenga instalada la herramienta Dcdiag.

Si tiene instalada la función AD DS, Dcdiag ya está instalado.

Si tiene instaladas las herramientas de administración remota del servidor (RSAT), entonces ya tiene instalado Dcdiag.

Verifique el estado de Active Directory usando Dcdiag (ejemplos)

DCDiag es muy fácil de usar.

Hay varios modificadores de línea de comando diferentes que se pueden usar con Dcdiag; para verlos todos, simplemente use este comando dcdiag /?

Aquí hay una descripción general de los interruptores que usaré en los ejemplos siguientes.

/s: el modificador dcname se utiliza para ejecutar Dcdiag en un servidor remoto

/v: el modificador imprime información más detallada sobre cada prueba

/c: cambiar significa completo, esto ejecutará todas las pruebas, incluida la prueba de DNS.

/q: el modificador solo imprimirá errores. Esto es útil ya que dcdiag puede mostrar mucha información; si desea ver solo los errores, utilice este modificador.

/f: el modificador se utiliza para redirigir los resultados a un archivo.

CONSEJO: Al ejecutar dcdiag, probablemente informará algunos errores, pero esto no significa necesariamente que tenga problemas con sus controladores de dominio. Por ejemplo, el comando consultará los registros del sistema en el DC y mostrará registros de errores, pero podrían ser errores de una computadora u otro servidor. Nuevamente, es posible que esto no sea un problema de DC. Sólo tendrás que revisar y determinar si está relacionado o no.

Vídeotutorial

Si no le gustan los tutoriales en vídeo o desea más detalles, continúe leyendo las instrucciones a continuación.

Ejemplo 1: usar /s para ejecutar en un servidor remoto

Esto ejecutará todas las pruebas de DC en el servidor remoto DC1.

dcdiag /s:DC1

Para ejecutar esto en un servidor local simplemente omita /s:nombredelservidor

Ejemplo 2: usar /v para mostrar más detalles

El interruptor detallado mostrará detalles adicionales. Realiza las mismas pruebas que el primer ejemplo, solo muestra más detalles sobre cada prueba.

dcdiag /s:DC1  /v

Ejemplo 3: usar /f para guardar en un archivo de registro

Al utilizar /f puede guardar los resultados en un archivo de texto. Esto es excelente para registrar los resultados y revisarlos más adelante.

dcdiag /s:DC1 /f:c:\it\dcdiag_test.txt

Ejemplo 4: uso de /a para ejecutarlo en todos los controladores de dominio

Si tiene varios controladores de dominio y desea probarlos todos a la vez, utilice este comando. Si tiene muchos controladores de dominio, se mostrará mucha información; aquí es donde sería útil usar la opción /f.

dcdiag /s:DC1 /a

Ejemplo 5: use /q para mostrar solo los errores

DCDiag puede mostrar mucha información; para eliminar el ruido y solo mostrar los errores, utilice este comando.

dcdiag /s:DC1 /q

Ejemplo 6: usar varios interruptores (mi favorito)

Estos son los comandos que me gusta ejecutar. Ejecutará todas las pruebas, mostrará todos los detalles y los enviará a un archivo.

dcdiag /s:DC1 /c /v /f:c:\it\dcdiag_test.txt

Ahora que sabes cómo probar tus controladores de dominio, pasaré a probar DNS. Por cierto, si usa el último ejemplo que incluye /c, ese modificador ejecutará todas las pruebas, incluido DNS.

Cómo probar DNS con DCDiag

El diagnóstico de DNS también incluye varias pruebas.

Estas son las pruebas que se realizan; de forma predeterminada, se ejecutan todas las pruebas excepto la resolución de nombres externos.

/DnsBasic (pruebas básicas, no se pueden omitir)
/DnsForwarders (pruebas de reenviadores y sugerencias de raíz)
/DnsDelegation (pruebas de delegaciones)
/DnsDynamicUpdate (pruebas de actualización dinámica)
/DnsRecordRegistration (registros pruebas de registro)
/DnsResolveExtName (prueba de resolución de nombres externos)
/DnsAll (incluye todas las pruebas anteriores)
/DnsInternetName: (para prueba /DnsResolveExtName)

Utilice el siguiente comando para ejecutar una prueba de DNS

dcdiag /s:dc1 /test:dns

Ejemplo: Dcdiag resulta de un controlador de dominio normal

Directory Server Diagnosis
Performing initial setup:
* Identified AD Forest.
Done gathering initial info.

Doing initial required tests

Testing server: Default-First-Site-Name\DC1
Starting test: Connectivity
......................... DC1 passed test Connectivity

Doing primary tests

Testing server: Default-First-Site-Name\DC1
Starting test: Advertising
......................... DC1 passed test Advertising
Starting test: FrsEvent
......................... DC1 passed test FrsEvent
Starting test: DFSREvent
......................... DC1 passed test DFSREvent
Starting test: SysVolCheck
......................... DC1 passed test SysVolCheck
Starting test: KccEvent
......................... DC1 passed test KccEvent
Starting test: KnowsOfRoleHolders
......................... DC1 passed test KnowsOfRoleHolders
Starting test: MachineAccount
......................... DC1 passed test MachineAccount
Starting test: NCSecDesc
......................... DC1 passed test NCSecDesc
Starting test: NetLogons
......................... DC1 passed test NetLogons
Starting test: ObjectsReplicated
......................... DC1 passed test ObjectsReplicated
Starting test: Replications
......................... DC1 passed test Replications
Starting test: RidManager
......................... DC1 passed test RidManager
Starting test: Services
......................... DC1 passed test Services
Starting test: SystemLog ......................... DC1 passed test SystemLog Starting test: VerifyReferences
......................... DC1 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 : ad
Starting test: CheckSDRefDom
......................... ad passed test CheckSDRefDom
Starting test: CrossRefValidation
......................... ad passed test CrossRefValidation

Running enterprise tests on : ad.activedirectorypro.com
Starting test: LocatorCheck
......................... ad.activedirectorypro.com passed test LocatorCheck
Starting test: Intersite
......................... ad.activedirectorypro.com passed test Intersite

Ejemplo: servicio kdc fallido y servicio NETLOGON

Aquí está el resultado de dcdiag cuando se detiene el servicio kdc y NETLOGON. Utilicé el modificador /q para mostrar solo los errores.

C:\Users\rallen>dcdiag /s:dc2 /q
 Fatal Error:DsGetDcName (DC2) call failed, error 1717
 The Locator could not find the server.
 ......................... DC2 failed test Advertising
 kdc Service is stopped on [DC2]
 NETLOGON Service is stopped on [DC2]
 ......................... DC2 failed test Services
 Warning: DcGetDcName(GC_SERVER_REQUIRED) call failed, error 1717
 A Global Catalog Server could not be located - All GC's are down.
 Warning: DcGetDcName(PDC_REQUIRED) call failed, error 1717
 A Primary Domain Controller could not be located.
 The server holding the PDC role is down.
 Warning: DcGetDcName(TIME_SERVER) call failed, error 1717
 A Time Server could not be located.
 The server holding the PDC role is down.
 Warning: DcGetDcName(GOOD_TIME_SERVER_PREFERRED) call failed, error 1717
 A Good Time Server could not be located.
 Warning: DcGetDcName(KDC_REQUIRED) call failed, error 1717
 A KDC could not be located - All the KDCs are down.
 ......................... ad.activedirectorypro.com failed test LocatorCheck

Eso es todo.

Fácil ¿verdad?

DCDiag es una herramienta sencilla pero muy potente para comprobar y diagnosticar controladores de dominio. Le recomiendo encarecidamente que se familiarice con esta herramienta y la ejecute en su entorno de vez en cuando.

Verifique el estado de Active Directory con AD Pro Toolkit

La herramienta Active Directory Health Check crea informes de estado fáciles de leer en sus controladores de dominio. Hace que sea muy fácil verificar el estado de varios controladores de dominio a la vez.

La herramienta GUI tiene los siguientes beneficios:

  • Verifique fácilmente el estado de Active Directory en múltiples controladores de dominio
  • Vea rápidamente por qué falló una prueba haciendo clic en una prueba
  • Obtiene eventos importantes de los registros de eventos de Windows (errores, advertencias, errores críticos)
  • Exportar y programar informes automatizados

Esta herramienta también puede obtener los eventos críticos de sus controladores de dominio. Esto facilita la revisión de los registros y detecta rápidamente problemas potenciales.

Puede descargar una prueba gratuita de esta herramienta de monitoreo del estado de la GUI haciendo clic en el botón a continuación.

Automatizar la verificación del estado de AD (informe por correo electrónico)

Automatice la verificación del estado de sus controladores de dominio utilizando el programador integrado. Programe el informe para que se ejecute diariamente, semanalmente o una vez al mes (recomiendo diariamente).

Artículos relacionados