Impossible pour Windows Server de synchroniser l'heure NTP de manière fiable

41

Pourquoi Windows Server (2008, dans ce cas, mais j'ai vu le même problème en 2003) semble avoir un problème de synchronisation du temps? J'ai constaté cette erreur dans mon journal système sur plusieurs serveurs:

Le service de l'heure n'a pas synchronisé l'heure du système pendant 86 400 secondes, car aucun des fournisseurs de services de temps n'a fourni d'horodatage utilisable. Le service de temps ne mettra pas à jour l'heure du système local tant qu'il ne pourra pas se synchroniser avec une source de temps. Si le système local est configuré pour agir en tant que serveur de temps pour les clients, la publicité en tant que source de temps pour les clients cessera. Le service de temps continuera à réessayer et à synchroniser l'heure avec ses sources de temps. Recherchez dans le journal des événements système d'autres événements W32time pour plus de détails. Exécutez 'w32tm / resync' pour forcer une synchronisation instantanée.

Sous Panneau de configuration, Date et heure, les paramètres de l'heure Internet sont configurés pour se synchroniser avec time-nw.nist.gov; la dernière synchronisation réussie a eu lieu il y a 2 jours, ce qui indique qu'il y a un problème. Mais si je clique sur le bouton "Mettre à jour maintenant" dans cette boîte de dialogue, elle se met à jour avec le temps!

Alors, pourquoi Windows Server ne peut-il pas synchroniser de manière fiable la synchronisation du temps via NTP en arrière-plan sans mon intervention manuelle? Qu'est-ce que je fais mal?

Jeff Atwood
la source
Tu n'es pas seul Jeff
jkp
1
On dirait que cela pourrait ne pas être une option pour les contrôleurs de domaine.
1
Bienvenue dans l'enfer SNTP Windows. DLL Hell est juste autour du coin et il y a un tram sur la demi-heure. La charcuterie est meilleure ici cependant.
Scott Alan Miller
2
Avez-vous essayé un autre serveur NTP? us.pool.ntp.org
Stukelly
Merci d'avoir posté ceci. Si quelqu'un dans le monde Windows écoute, simplifiez-nous la configuration réseau de base! Il y a certaines choses dont nos serveurs auront toujours besoin, comme une heure précise par rapport au fuseau horaire. Je ne suis pas au courant de certaines considérations non triviales, mais il s'agit d'un problème récurrent qui rompt également WSUS s'il n'est pas coché.
Cawflands

Réponses:

18

Jeff, j'ai trouvé cet article . Cela pourrait vous aider. Vous avez peut-être déjà lu ceci, mais je pensais que cela valait le coup.

HKLM \ SYSTEM \ CurrentControlSet \ Services \ W32Time \ Config \ AnnounceFlags

Cette entrée de registre contrôle si l'ordinateur local est marqué en tant que serveur de temps fiable (ce qui n'est possible que si l'entrée de registre précédente est définie sur NTP comme décrit ci-dessus). Modifiez cette valeur REG_DWORD de 10 à 5 ici.

MISE À JOUR Selon Jeff, la meilleure source de référence est http://support.microsoft.com/kb/816042

Joseph
la source
bizarre, alors vous le marquez comme "pas fiable", lol. OK, j'ai fait ce changement, voyons si ça aide.
Jeff Atwood
4
KB 816042: "... et utilise l'horloge CMOS intégrée", n'aimez-vous pas les rédacteurs techniques?
Duncan Smart
14

Windows Time Agent est un applet gratuit du panneau de configuration permettant de configurer le serveur NTP / la capacité de synchronisation de Windows. Il agit en tant que serveur frontal pour les paramètres de registre et vous permet de configurer plusieurs serveurs NTP et de voir quel type de résultats vous obtenez d'eux en temps réel.

Peu de gens connaissent l'existence de ce logiciel particulièrement pratique (et gratuit), mais il s'agit d'une installation indispensable sur les serveurs que je gère.

crb
la source
Merci beaucoup mon pote. Windows Time Agent est un bijou. C'est devenu une installation indispensable sur tous les serveurs que je gère également.
Paracycle
5

La façon dont Microsoft suggère de synchroniser l'heure est illustrée ci-dessous.

M $ le temps!

Alors, pourquoi Windows ne peut-il pas synchroniser de manière fiable NTP? Cela a à voir avec la façon dont le temps est configuré dans un environnement de domaine. De cet artice Technet:

Si l'ordinateur est un serveur membre ou un poste de travail appartenant à un domaine, il suit par défaut la hiérarchie AD DS et synchronise son heure avec un contrôleur de domaine de son domaine local qui exécute actuellement le service de temps Windows.

Vous allez ici "à contre-courant" en essayant de configurer les serveurs membres pour extraire le temps NTP.

Le "droit" (c'est-à-dire à la manière de Microsoft) consiste à configurer l'heure, comme indiqué dans l'image ci-dessus, en synchronisant l'émulateur PDC avec un service de temps externe fiable tel que pool.ntp.org, en ayant les contrôleurs de domaine. synchroniser avec l'émulateur PDC, puis synchroniser automatiquement les serveurs membres et les ordinateurs à partir d'un contrôleur de domaine.

J'ai détaillé le processus de fixation du temps pour opérer de cette manière dans cette réponse.

Brett Larson
la source
oui, nous ne voulions ni n’avions besoin d’un contrôleur de domaine, mais simplement d’un groupe de serveurs homologues.
Jeff Atwood
Oh, j'ai supposé que vous faisiez partie d'un domaine. Je pense que vous devriez pouvoir configurer tous les serveurs à l’aide des coammnds liés au sondage de pool.ntp.org. Peut-être que time.windows n'est pas une bonne source de temps. Je voudrais encore essayer avec le pool NTP car il a environ 3000 serveurs mondiaux et environ 900 en Amérique du Nord!
Brett Larson
Nous n'avons jamais réussi à le faire fonctionner de manière fiable. Je pense que vous avez raison: une synchronisation temporelle fiable dans Windows Server est impossible sans un contrôleur de domaine. Ce qui est totalement boiteux.
Jeff Atwood