Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème de synchronisation avec l'horloge réseau

5 réponses
Avatar
John Duff
Ma machine (un G3 beige) a une horloge qui dérive naturellement de 130
ppm environ (càd qu'elle prend 11 secondes par jour).

J'espérais naïvement qu'en activant la synchronisation d'horloge
réseau, tout rentrerait dans l'ordre. Il n'en est rien, bien que le
démon ntpd soit actif.

Après investigation, il me semble que la cause en est mon fichier
/etc/ntp.conf, qui contient "minpoll 12 maxpoll 17", alors que, selon
les principes de fonctionnement de ntpd, il me faudrait minpoll 6 ou 7
pour corriger la dérive non négligeable de mon horloge. Et comme la
boucle de synchronisation de ntpd n'est jamais verrouillée, mon fichier
/private/var/run/ntp.drift contient désepérément 0.000, ce qui ne
permet pas à ntpd de démarrer correctement son boulot.

C'est un cercle vicieux, voire infernal.

J'ai bien essayé d'éditer ntp.conf à la main pour y mettre minpoll 6
maxpoll 6, mais dès que j'ouvre le tableau de bord date et heure pour
relancer ntpd, un petit lutin malicieux vient détruire mon travail et
remettre minpoll 12 maxpoll 17. La rage!

D'où ma question: quelqu'un sait-il ce que je dois toucher pour
inscrire, une bonne fois pour toutes, minpoll 6 maxpoll 6 dans mon
fichier ntp.conf ?

Merci!

(à moins qu'on sache me dire ce qu'il faudrait que j'inscrive dans
ntp.drift pour compenser une avance de 130 ppm et amorcer la pompe, on
ne sait jamais...)

5 réponses

Avatar
DINH Viêt Hoà

Ma machine (un G3 beige) a une horloge qui dérive naturellement de 130
ppm environ (càd qu'elle prend 11 secondes par jour).

J'espérais naïvement qu'en activant la synchronisation d'horloge
réseau, tout rentrerait dans l'ordre. Il n'en est rien, bien que le
démon ntpd soit actif.

Après investigation, il me semble que la cause en est mon fichier
/etc/ntp.conf, qui contient "minpoll 12 maxpoll 17", alors que, selon
les principes de fonctionnement de ntpd, il me faudrait minpoll 6 ou 7
pour corriger la dérive non négligeable de mon horloge. Et comme la
boucle de synchronisation de ntpd n'est jamais verrouillée, mon fichier
/private/var/run/ntp.drift contient désepérément 0.000, ce qui ne
permet pas à ntpd de démarrer correctement son boulot.

C'est un cercle vicieux, voire infernal.

J'ai bien essayé d'éditer ntp.conf à la main pour y mettre minpoll 6
maxpoll 6, mais dès que j'ouvre le tableau de bord date et heure pour
relancer ntpd, un petit lutin malicieux vient détruire mon travail et
remettre minpoll 12 maxpoll 17. La rage!

D'où ma question: quelqu'un sait-il ce que je dois toucher pour
inscrire, une bonne fois pour toutes, minpoll 6 maxpoll 6 dans mon
fichier ntp.conf ?

Merci!

(à moins qu'on sache me dire ce qu'il faudrait que j'inscrive dans
ntp.drift pour compenser une avance de 130 ppm et amorcer la pompe, on
ne sait jamais...)


<<
driftfile driftfile
This command specifies the name of the file use to record the
frequency offset of the local clock oscillator. If the file
exists, it is read at startup in order to set the initial fre-
quency offset and then updated once per hour with the current
frequency offset computed by the daemon. If the file does not
exist or this command is not given, the initial frequency offset
is assume zero. In this case, it may take some hours for the
frequency to stabilize and the residual timing errors to sub-
side.




c'est normal qu'il soit initialisé à zéro ...

ntpd ne génère-t-il pas de log quand il a un problème ?
(dans /var/log ?)

as-tu bien une ligne indiquant le serveur dans /etc/ntp.conf ?

Pourquoi ne passes-tu pas par l'interface de réglage de l'heure sur
laquelle tu peux indiquer un serveur NTP sur lequel synchroniser.

--
DINH V. Hoa,

"Il est dans la salle de bain, il rappelle dans 10 minutes" -- GTM's mother


Avatar
John Duff
On 2004-05-05 00:16:36 +0200, DINH Viêt Hoà said:


Ma machine (un G3 beige) a une horloge qui dérive naturellement de 130
ppm environ (càd qu'elle prend 11 secondes par jour).

J'espérais naïvement qu'en activant la synchronisation d'horloge
réseau, tout rentrerait dans l'ordre. Il n'en est rien, bien que le
démon ntpd soit actif.

Après investigation, il me semble que la cause en est mon fichier
/etc/ntp.conf, qui contient "minpoll 12 maxpoll 17", alors que, selon
les principes de fonctionnement de ntpd, il me faudrait minpoll 6 ou 7
pour corriger la dérive non négligeable de mon horloge. Et comme la
boucle de synchronisation de ntpd n'est jamais verrouillée, mon fichier
/private/var/run/ntp.drift contient désepérément 0.000, ce qui ne
permet pas à ntpd de démarrer correctement son boulot.

C'est un cercle vicieux, voire infernal.

J'ai bien essayé d'éditer ntp.conf à la main pour y mettre minpoll 6
maxpoll 6, mais dès que j'ouvre le tableau de bord date et heure pour
relancer ntpd, un petit lutin malicieux vient détruire mon travail et
remettre minpoll 12 maxpoll 17. La rage!

D'où ma question: quelqu'un sait-il ce que je dois toucher pour
inscrire, une bonne fois pour toutes, minpoll 6 maxpoll 6 dans mon
fichier ntp.conf ?

Merci!

(à moins qu'on sache me dire ce qu'il faudrait que j'inscrive dans
ntp.drift pour compenser une avance de 130 ppm et amorcer la pompe, on
ne sait jamais...)


<<
driftfile driftfile
This command specifies the name of the file use to record the
frequency offset of the local clock oscillator. If the file
exists, it is read at startup in order to set the initial fre-
quency offset and then updated once per hour with the current
frequency offset computed by the daemon. If the file does not
exist or this command is not given, the initial frequency offset
is assume zero. In this case, it may take some hours for the
frequency to stabilize and the residual timing errors to sub-
side.




c'est normal qu'il soit initialisé à zéro ...


Bien sûr, mais le problème, c'est qu'il reste à zéro, puisque la boucle
d'asservissement de ntpd ne se verrouille jamais.


ntpd ne génère-t-il pas de log quand il a un problème ?
(dans /var/log ?)


Non, puisque du point de vue de ntpd, il n'y a pas de problème. C'st
moi qui ai un problème, avec ce minpoll que je n'arrive pas à
configurer.


as-tu bien une ligne indiquant le serveur dans /etc/ntp.conf ?


Bien sûr! (time.euro.apple.com), et ça marche très bien, puisque ma
machine est remise à l'heure à chaque fois que j'ouvre le tableau de
bord date et heure. Simplement, ensuite, l'asservissement ne fonctionne
pas, car mon minpoll est trop élevé.


Pourquoi ne passes-tu pas par l'interface de réglage de l'heure sur
laquelle tu peux indiquer un serveur NTP sur lequel synchroniser.


C'est fait!



Avatar
John Duff
On 2004-05-05 00:25:54 +0200,
(Pierre Guyot) said:

John Duff wrote:

Ma machine (un G3 beige) a une horloge qui dérive naturellement de 130
ppm environ (càd qu'elle prend 11 secondes par jour).

J'espérais naïvement qu'en activant la synchronisation d'horloge
réseau, tout rentrerait dans l'ordre. Il n'en est rien, bien que le
démon ntpd soit actif.

Après investigation, il me semble que la cause en est mon fichier
/etc/ntp.conf, qui contient "minpoll 12 maxpoll 17", alors que, selon
les principes de fonctionnement de ntpd, il me faudrait minpoll 6 ou 7
pour corriger la dérive non négligeable de mon horloge. Et comme la
boucle de synchronisation de ntpd n'est jamais verrouillée, mon fichier
/private/var/run/ntp.drift contient désepérément 0.000, ce qui ne
permet pas à ntpd de démarrer correctement son boulot.

C'est un cercle vicieux, voire infernal.

J'ai bien essayé d'éditer ntp.conf à la main pour y mettre minpoll 6
maxpoll 6, mais dès que j'ouvre le tableau de bord date et heure pour
relancer ntpd, un petit lutin malicieux vient détruire mon travail et
remettre minpoll 12 maxpoll 17. La rage!


Si c'est comme sur ma machine, je suggèrerai d'éditer le fichier .conf à
la main, avec les pages man sur les genoux, et ne plus passer par
l'interface utilisateur officielle.

Ceci dit, nous n'avons peut-être pas exactement la même version du
système (10.3.2. pour moi).


10.3.3 pour moi (merci XPostFacto). J'édite bien ntp.conf à la main,
mais il faut bien relancer ntpd pour le prendre en compte! Et je ne
peux pas m'interdire d'ouvrir le tableau de bord date et heure... Et
là, boum! Retour aux anciens paramètres...


D'où ma question: quelqu'un sait-il ce que je dois toucher pour
inscrire, une bonne fois pour toutes, minpoll 6 maxpoll 6 dans mon
fichier ntp.conf ?



Je n'ai pas vérifié, mais de mémoire, il faut deux valeurs différentes.
minpoll est l'intervalle minimum d'interrogation du serveur.
Puis, en fonction de la dérive constatée par le démon, il espace ses
interrogations à concurrence de maxpoll, au plus.


Deux valeurs identiques sont tout à fait admises, minpoll 6 maxpoll 6
est une configuration courante pour les machines qui ont leur serveur
horaire sur le même réseau.



(à moins qu'on sache me dire ce qu'il faudrait que j'inscrive dans
ntp.drift pour compenser une avance de 130 ppm et amorcer la pompe, on
ne sait jamais...)


Ce fichier doit être laissé tel quel, car c'est le démon qui le remplit
comme il veut. Quelque soit la valeur, je ne crois pas que cela le
poussera à amorcer la pompe.


Mais ntpd va le lire au démarrage, justement pour se caler
correctement. Donc, on devrait pouvoir l'aider un peu...


Avatar
DINH Viêt Hoà

ntpd ne génère-t-il pas de log quand il a un problème ?
(dans /var/log ?)


Non, puisque du point de vue de ntpd, il n'y a pas de problème. C'st
moi qui ai un problème, avec ce minpoll que je n'arrive pas à
configurer.


es-tu sûr de comprendre ce que sont les valeurs de minpoll
et de maxpoll ?

--
DINH V. Hoa,

"Il est dans la salle de bain, il rappelle dans 10 minutes" -- GTM's mother


Avatar
John Duff
On 2004-05-05 00:42:13 +0200, DINH Viêt Hoà said:


ntpd ne génère-t-il pas de log quand il a un problème ?
(dans /var/log ?)


Non, puisque du point de vue de ntpd, il n'y a pas de problème. C'st
moi qui ai un problème, avec ce minpoll que je n'arrive pas à
configurer.


es-tu sûr de comprendre ce que sont les valeurs de minpoll
et de maxpoll ?


Bien sûr, tout est dit là-dessous:

"Poll Interval Control
This version of NTP includes an intricate state machine to reduce the
network load while maintaining a quality of synchronization consistent
with the observed jitter and wander. There are a number of ways to
tailor the operation in order enhance accuracy by reducing the interval
or to reduce network overhead by increasing it. However, the user is
advised to carefully consider the consequences of changing the poll
adjustment range from the default minimum of 64 s to the default
maximum of 1,024 s. The default minimum can be changed with the tinker
minpoll command to a value not less than 16 s. This value is used for
all configured associations, unless overridden by the minpoll option on
the configuration command. Note that most device drivers will not
operate properly if the poll interval is less than 64 s and that the
broadcast server and manycast client associations will also use the
default, unless overridden.

In some cases involving dial up or toll services, it may be useful to
increase the minimum interval to a few tens of minutes and maximum
interval to a day or so. Under normal operation conditions, once the
clock discipline loop has stabilized the interval will be increased in
steps from the minimum to the maximum. However, this assumes the
intrinsic clock frequency error is small enough for the discipline loop
correct it. The capture range of the loop is 500 PPM at an interval of
64s decreasing by a factor of two for each doubling of interval. At a
minimum of 1,024 s, for example, the capture range is only 31 PPM. If
the intrinsic error is greater than this, the drift file ntp.drift will
have to be specially tailored to reduce the residual error below this
limit. Once this is done, the drift file is automatically updated once
per hour and is available to initialize the frequency on subsequent
daemon restarts."

Comme j'ai une dérive de 130 ppm, ça veut dire que je dois fonctionner
avec minpoll 6 ou 7, mais pas plus, sinon je sors de la plage de
capture de la boucle d'asservissement et mon horloge ne se synchronise
pas. c'est exactement ce qui m'arrive. Donc, comme je l'ai dit, je veux
pouvoir éditer les valeurs de minpoll (et maxpoll) sans que Mac OS
vienne les retoucher dans mon dos.