Solución de problemas del servicio de hora de Windows
On enero 4, 2022 by adminEl servicio de hora de Windows es muy importante en Active Directory. De forma predeterminada, la autenticación Kerberos requiere que los relojes de todos los equipos del dominio estén sincronizados con una diferencia de cinco minutos entre sí cuando se corrigen las diferencias de zona horaria y el horario de verano. Las máquinas cuyos relojes estén fuera de este rango no podrán autenticarse y, por lo tanto, no tendrán acceso a los recursos del dominio.
Dentro de un dominio AD, el controlador de dominio (DC) que tiene el rol de PDC Emulator FSMO es el servidor de hora maestro para todo el dominio. Sin embargo, esto no significa que cada máquina del dominio sincronice su reloj directamente con el Emulador PDC. Otros DCs se sincronizan con el Emulador PDC, mientras que los servidores miembros y los clientes pueden sincronizarse con cualquier DC. En esta jerarquía, el Emulador PDC debe ser la única máquina configurada para sincronizar con una fuente de tiempo externa, como un servidor NTP público. Todo lo demás en el dominio debe estar configurado para sincronizarse con AD. Cualquier otra configuración puede provocar la pérdida de la sincronización del reloj.
Consulte este sitio de TechNet para obtener información detallada sobre el funcionamiento del servicio de Hora de Windows.
Determine el alcance del problema
El primer paso para solucionar un problema del servicio de Hora de Windows debe ser determinar cuántas máquinas están afectadas. Si la hora es incorrecta en un solo equipo, los pasos necesarios para solucionar el problema serán diferentes de los pasos necesarios para solucionar un problema de hora en todo el dominio.
Si sólo hay unos pocos equipos afectados
- Si el equipo afectado ejecuta Windows Vista o una versión posterior, ejecute w32tm /query /source en un símbolo del sistema para determinar el origen de la hora del equipo afectado. Sólo debería aparecer una fuente de tiempo externa si este comando se ejecuta en el emulador de PDC; de lo contrario, el comando debería mostrar el nombre de un DC en el dominio.
- El comando w32tm /query /status también muestra la fuente de tiempo de la máquina, así como otra información potencialmente útil. El interruptor /verbose proporciona aún más información. Al igual que con el primer comando, estos interruptores sólo están disponibles en máquinas con Windows Vista o posterior.
- Si se muestra la fuente de tiempo correcta, puede utilizar w32tm /resync para intentar resincronizar el reloj de la máquina con la fuente de tiempo. Si se añade el modificador /rediscover a este comando, la máquina intentará primero descubrir las fuentes de tiempo de la red y luego intentará una resincronización.
- Para cambiar la fuente de tiempo de la máquina, se puede utilizar uno de los dos comandos:
w32tm /config /syncfromflags:DOMHIER /update configura la máquina para que utilice la jerarquía de dominios (AD) como fuente de tiempo.
w32tm /config /syncfromflags:MANUAL /manualpeerlist:<list> /update configura la máquina para que utilice los servidores de tiempo en <list> como su fuente de tiempo.NOTA: Si se especifican varios servidores de tiempo en <list>, deben estar separados por espacios, y la lista completa debe ir entre comillas.
Si todo el dominio está afectado
- Si la hora es incorrecta en todas las máquinas del dominio, es muy probable que el Emulador PDC sea el origen del problema. Ejecute el comando netdom query fsmo en un DC para determinar qué DC tiene el rol de emulador de PDC.
- Ejecute w32tm /query /source desde un símbolo del sistema en el emulador de PDC para asegurarse de que está configurado para sincronizarse con una fuente de tiempo externa. El Emulador PDC nunca debe estar configurado para sincronizarse con el dominio, ya que es la fuente de tiempo maestra del dominio.
- Si el Emulador PDC es una máquina virtual (VM), desactive la sincronización del reloj del host invitado. El procedimiento para hacer esto depende del sistema operativo que se ejecuta en el host de virtualización.
- Para configurar el Emulador PDC para que se sincronice con uno o más servidores de tiempo externos, utilice el siguiente comando:
w32tm /config /syncfromflags:MANUAL /manualpeerlist:<list> /updateNOTA: Si se especifican varios servidores de tiempo en <list>, deben estar separados por espacios, y la lista completa debe ir entre comillas.
Configuración del registro del servicio Hora de Windows
Los comandos w32tm especificados en los procedimientos anteriores realizan cambios en los valores del registro del servicio Hora de Windows, que se encuentran en la siguiente clave del registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time
Por supuesto, es posible establecer estos valores manualmente en lugar de utilizar los comandos w32tm. Si decide hacerlo, los siguientes sitios pueden resultar útiles:
- Herramientas y configuración del servicio de hora de Windows (incluye una sección sobre la configuración del registro)
- Cómo configurar un servidor de hora autorizado en Windows Server
Política de grupo
Si realiza cambios en el servicio de hora de Windows mediante comandos w32tm o a través del registro, pero esos cambios no surten efecto en absoluto o sólo surten efecto durante un breve periodo de tiempo antes de volver a sus valores anteriores, es posible que haya un objeto de directiva de grupo (GPO) que anule sus cambios. La configuración de la directiva de grupo para el servicio Hora de Windows incluye muchos de los mismos elementos que pueden configurarse mediante el registro o los comandos w32tm. Estos ajustes pueden encontrarse en la siguiente ubicación:
Configuración del equipo\NPolíticas\NPlantillas administrativas\NSistema\NServicio de Hora de Windows
Restablezca los valores del registro del servicio de Hora de Windows a su configuración predeterminada
Si todo lo demás falla, este procedimiento restablecerá el servicio de Hora de Windows a su configuración predeterminada:
- Abra la consola de Servicios y detenga el servicio de Hora de Windows (o ejecute net stop w32time desde un símbolo del sistema) si se está ejecutando.
- Abra un símbolo del sistema elevado y ejecute w32tm /unregister para eliminar el servicio Hora de Windows del registro. El servicio ya no aparecerá en la consola de Servicios.
- Ejecute w32tm /register para volver a crear el servicio con su configuración predeterminada del registro.
- Haga los cambios necesarios en el registro y, a continuación, inicie el servicio Windows Time en la consola de Servicios o con el comando net start w32time.
Deja una respuesta