Ce billet fait suite à celui intitulé Problèmes avec l’heure sur votre PC ? Je vous conseille de le lire si ce n’est déjà fait.
Dans celui ci j’explique les détails qui vous permettront d’avoir une configuration sans erreur de votre serveur NTP en regard à la gestion de la seconde intercalaire.
I. Les deux façons de gérer la seconde intercalaire avec NTP
Rajouter une seconde : 23h59m59 → 23h59m60 → 00h00m00s.
Étaler une seconde sur 24 heures de midi (avant) jusqu’à midi (après) : 12:00:00 → (on ralenti) → 23h59m59 → 00h00m00s → (toujours ralenti) → 12:00:00 → (vitesse normale).
On appelle ça le leap smearing (ou leap smear).
Passons maintenant à l’installation sur votre PC.
II. Choix du programme NTP
Il existe plusieurs instances du programme NTP, on en trouve dans le Microsoft Store, gratuites ou payantes, mais je n’ai aucune idée d’où elle viennent. Ne pas installer. Seules les versions officiels font foi, et sont gratuites.
Des gens de confiance, Meinberg, mette à disposition le binaire avec son installeur.
Meinberg est une société qui existe depuis longtemps et qui vend, entres autres, des horloges NTP de strate 1 de très bonne qualité, et des modules capables de supporter des centaines de milliers de requêtes par seconde (pas au même prix !).

Serveur NTP Lantime M1000 de Meinberg
III. Télécharger le programme, l’installer
On se dirige vers cette page « NTP Download » et on clic sur NTP package for current Windows versions (XP and later), with IPv6 support.
Vous téléchargez ntp-4.2.8p18a2-win32-setup.exe ou plus récent (c’est pour ça que je ne mets pas de liens vers le fichier, peut être que la version 18a3 ou 19 sera sortie au moment où vous lirez cette page. Ça pèse moins de 5 Mo, c’est léger.
Vous lancez l’installation.
Vous faite Next > jusqu’à cette page d’option :

Sur laquelle vous choisirez France si vous êtes en France. La configuration par défaut qui sera créee référencera les serveurs NTP du pool français défini par ntp.org. C’est un bon début.
S’affiche un petit popup, vous choisirez Non :

Il va ensuite vous proposer des options. Elle sont bien, donc il suffit de faire Next > :

Elles disent simplement que l’installeur va prendre soin de vérifier qu’il n’y a pas de NTP ou équivalent (w32Time, le système Windows) qui tourne déjà, et démarrer immédiatement le service (qui démarrera automatiquement au démarrage du système). Il va aussi vérifier que le pare-feu n’empêche pas la communication avec Internet pour pouvoir joindre les horloges.
Pour finir l’installeur récapitule ce qu’il s’apprête à accomplir quand vous appuierez sur Finish. :

Ce qui est important : le fichier de configuration se trouve dans C:\Program Files (x86)\NTP\ntp.conf et le service à démarré.
Si vous avez un problème, mais normalement cela ne devrait pas être le cas (en tout cas sous Windows 11), vous pouvez vous référez à la page du site satsignal : https://www.satsignal.eu/ntp/setup.html
IV. Vérifier que NTP a bien démarré
Dans une fenêtre cmd ou powershell1 tapez : ntpq -pn :

Vous devriez voir une liste d’adresse IP dans la colonne Remote avec une étoile devant l’une d’elle : c’est l’horloge que NTP à choisi. La colonne offset est le décalage par rapport à l’horloge NTP de référence. Sur la capture ci-dessus elle varie entre +0,323 ms (on avance) et -3,066ms (on recule). Pour les serveurs de strate 1 (colonne st) on voit comment elles sont synchronisées, GPS ou PPS (un signal à la fréquence 1 Pulsation Par Second). Pour les horloges de strate 2 (ou plus) c’est l’adresse IP de l’horloge de strate inférieure.
L’horloge avec une étoile * devant est celle choisie. Celles avec un + sont des candidates possibles. Celles avec un - sont écartées.
Notez que si vous supprimez le n des option (-p et non plus -pn) comme dans le dernier cas, l’adresse IP est remplacée par le nom du serveur (au moins les premières lettres).
Après un certain temps, disons 30 minutes, les choses commencent à être bien stabilisées :

NTP a choisi une autre horloge qu’il a considérée comme meilleure (82-64-171-216.subs.proxad.net. Le PC avance de 0,3ms (300μs) seulement.
V. Première conclusion
NTP est facile à installer et la configuration par défaut fonctionne. Est ce qu’elle est optimal ? Pas vraiment, mais ce n’est pas si grave que ça : NTP sait ajuster son comportement avec les sources qu’on lui a données pour en tirer « le meilleur ».
Maintenant tout est question d’optimisation ou d’exploration. Il y a matière à apprendre et à perfectionner !
VI. Regarder de plus près
L’installeur l’a indiqué : le fichier de configuration se trouve dansC:\Program Files (x86)\NTP\ntp.conf
Voyons voir ce qu'il a dans le ventre. Pour ça ouvrez le dans l éditeur de votre choix (notepad (bloc note) par exemple). C’est du texte tout à fait lisible.
Il y a beaucoup de texte en anglais, mais au final il n’y a que ces instructions là :
restrict default notrap nomodify nopeer noepeer noquery
restrict 127.0.0.1
restrict ::1
restrict source notrap nomodify noquery
driftfile "C:\Program Files (x86)\NTP\etc\ntp.drift"
server 0.fr.pool.ntp.org iburst minpoll 6 maxpoll 7
server 1.fr.pool.ntp.org iburst minpoll 6 maxpoll 7
server 2.fr.pool.ntp.org iburst minpoll 6 maxpoll 7
server 1.uk.pool.ntp.org iburst minpoll 6 maxpoll 7
server 0.uk.pool.ntp.org iburst minpoll 6 maxpoll 7Les restrictions
Elles interdisent à un autre ordinateur de changer les paramètres NTP (à distance).
Driftfile
L’instruction driftfile indique où se trouve le fichier dans lequel NTP va sauvegarder la valeur de la dérive de l’horloge de la machine. Connaitre cette valeur permet de mieux contrôler l’horloge en cas de perte d’accès aux sources et au démarrage. Il est crée au bout d’une heure environ.
Les instructions serverserver 0.fr.pool.ntp.org iburst minpoll 6 maxpoll 7
L’instruction server donne l’adresse d’un serveur NTP de référence. Si l’adresse correspond à un pool, choisir une des adresses.
Ici on a 5 instructions server, donc on aura 5 serveurs choisis, 3 du pool fr et 2 du pool uk.
iburst, abbréviation de initial burst, indique à NTP qu’au démarrage il peut envoyer une rafale de requêtes au serveur pour se synchroniser le plus vite possible. Sans iburst, il faut attendre plus longtemps.
minpoll et maxpoll indique l’intervalle minimum entre deux requêtes et maxpoll l’intervalle maximum. Les valeurs, sont des puissance de 2 :
minpoll/maxpoll | Secondes | minpoll/maxpoll | Secondes |
|---|---|---|---|
1 | 2 | 11 | 2048 (34 minutes) |
2 | 4 | 12 | 4096 (1 heure) |
3 | 8 | 13 | 8192 (2h16) |
4 | 16 | 14 | 16384 (4h33) |
5 | 32 | 15 | 32768 (9 heures) |
6 | 64 (~1 minute) | 16 | 65536 (18h12) |
7 | 128 (~2 minutes) | 17 | 131072 (36h24) |
8 | 256 (4m16s) | ||
9 | 512 (~8,5 minutes) | ||
10 | 1024 (17 minutes) |
Dans cette configuration le serveur au minimum un message toutes les minutes au minimum et 2 minutes au maximum. C’est trop souvent ! Vous voulez un PC synchronisé, mais la dérive que l’horloge peut avoir pendant 15 minutes vous pouvez la supporter.
Je recommande les valeurs pour minpoll et maxpoll en vert (4 minutes / ¼ d’heure), mais 12/13 ou 12/14 marchent aussi bien. Vous voulez que NTP puisse être un peu agressif ? Gardez le 6
On ne touche pas au nombre maximum de serveurs : 10. C’est la variable maxclock. Vous pouvez en choisir moins en ajoutant : tos maxclock 5.
VII. Gare à l’erreur
Vous pourriez être tenté de donner configurer votre NTP, de se synchroniser sur plusieurs services sans faire attention à ce détail : mélanger serveurs qui étalent la seconde intercalaire avec ceux qui rajoute une seconde, par exemple fr.pool.ntp.org et time.aws.com.
Et ça, c’est pas bien du tout ! Car en cas de seconde intercalaire le comportement de NTP est imprévisible.
Voila des exemples de courtes configurations, bonnes ou pas bonnes.
### Sources sans seconde intercalaire étalée
pool 0.fr.pool.ntp.org
pool 0.ubuntu.pool.ntp.org### Sources sans seconde intercalaire étalée
pool 0.fr.pool.ntp.org
server time.cloudflare.com### Sources toutes seconde étalée et compatibles
server time1.google.com
server time2.google.com
pool time.aws.com### Mélange seconde insérée et étalée
pool 0.fr.pool.ntp.org
server time1.google.com### Seconde étalée mais pas la même politique
server time1.facebook,com
server time1.google.comV. Configuration à seconde calendaire
C’est à dire qu’à 23:59:59 la prochaine seconde sera 23:59:60.
Dans tous les cas le fichier ntp.conf commencera par :
# NTP Network Time Protocol
# Restrictions par défaut (s'applique à tout le monde) :
restrict default noquery nomodify notrap nopeer
# Les sources ont le droit de créer des associations
# (pas de "nopeer")
restrict source noquery nomodify notrap
# Accès total pour cette machine et celle de son réseau
restrict 127.0.0.1
restrict -6 ::1
restrict 192.168.0.0 mask 255.255.255.0
# Le fichier qui contient la dérive (calculée)
driftfile "C:\Program Files (x86)\NTP\etc\ntp.drift"
Notez :
Les
restrictsont changé : pour les sources on n’interdit pas lenopeer.restrict 192.168.0.0 mask 255.255.255.0autorise toutes les machines de mon réseau (lan) de modifier les paramètres NTP. N’oubliez pas de changer 192.168.0.0 si ce n’est pas votre numéro de réseau (192.168.1.0 si vous êtes chez Orange/Livebox, SFR Box/RED, Bouygues. 192.168.0.0 pour Free).
V.a La configuration passe-partout, pépère
C’est celle que je recommande si vous ne voulez pas avoir de configuration compliquée. Elle est basique, la seconde calendaire sera insérée/supprimée).
# NTP Network Time Protocol
# Restrictions par défaut (s'applique à tout le monde) :
restrict default noquery nomodify notrap nopeer
# Les sources ont le droit de créer des associations
# (pas de "nopeer")
restrict source noquery nomodify notrap
# Accès total pour cette machine et celle de son réseau
restrict 127.0.0.1
restrict -6 ::1
restrict 192.168.0.0 mask 255.255.255.0
# Le fichier qui contient la dérive (calculée)
driftfile "C:\Program Files (x86)\NTP\etc\ntp.drift"
pool 0.fr.pool.ntp.org iburst minpoll 8 maxpoll 10 prefer
pool 1.fr.pool.ntp.org iburst minpoll 8 maxpoll 10
pool 0.es.pool.ntp.org iburst minpoll 8 maxpoll 10
pool 0.uk.pool.ntp.org iburst minpoll 8 maxpoll 10On se synchronise sur des serveurs des pools français, espagnol, britannique.
Mais on prefer le pool français, si possible
8/10 pour une requête toutes les ~5 minutes maximum ~15 minutes.
V.b La configuration mixte pool/serveur
Toujours avec la seconde calendaire. Vous pouvez vous dire : les serveurs d’Apple sont les meilleurs, pas difficile au prix où coûte leur matos, alors je les choisis de préférence. En plus ils sont strate 1.
Si ça passe pas, j’ai de toute façon tout le pool français et anglais de référencé.
# NTP Network Time Protocol
# Restrictions par défaut (s'applique à tout le monde) :
restrict default noquery nomodify notrap nopeer
# Les sources ont le droit de créer des associations
# (pas de "nopeer")
restrict source noquery nomodify notrap
# Accès total pour cette machine et celle de son réseau
restrict 127.0.0.1
restrict -6 ::1
restrict 192.168.0.0 mask 255.255.255.0
# Le fichier qui contient la dérive (calculée)
driftfile "C:\Program Files (x86)\NTP\etc\ntp.drift"
server time.apple.com prefer
server time.cloudflare.com
pool 0.fr.pool.ntp.org iburst minpoll 8 maxpoll 10
pool 0.es.pool.ntp.org iburst minpoll 8 maxpoll 10
pool 0.uk.pool.ntp.org iburst minpoll 8 maxpoll 10V.c Configuration spéciale étalement seconde calendaire
Dans ce cas on ne peut pas prendre n’importe quelles serveurs ou pool. Ils font qu’ils soient compatible sur la durée de l’étalement de la seconde supplémentaire. Alors on a plus trop le choix : seul AWS et Google étale la seconde et sont compatibles avec un étalement sur 24 heures de midi à midi.
Facebook étale aussi, mais 18 heures seulement, pas 24.
# NTP Network Time Protocol
# Restrictions par défaut (s'applique à tout le monde) :
restrict default noquery nomodify notrap nopeer
# Les sources ont le droit de créer des associations
# (pas de "nopeer")
restrict source noquery nomodify notrap
# Accès total pour cette machine et celle de son réseau
restrict 127.0.0.1
restrict -6 ::1
restrict 192.168.0.0 mask 255.255.255.0
# Le fichier qui contient la dérive (calculée)
driftfile "C:\Program Files (x86)\NTP\etc\ntp.drift"
# Suffisament de serveurs, strate 1 et 4 (AWS)
pool time.aws.com iburst minpoll 8 maxpoll 10
pool time.google.com iburst minpoll 8 maxpoll 10
Pour moi c’est la configuration optimale :
Elle étale la seconde calendaire.
Elle fait appel à des gens qui ont beaucoup d’horloges, configurées par des professionnels.
Elles sont choisi pour être proche de vous.
La configuration fonctionne partout avec la même efficacité.

Cette machine recule de 0,092 ms (9,2 µs microsecondes) comparé à l’horloge source élue. Pas mal non ? Notez que c’est une strate 4, pas une strate 1. Ça changera peut-être plus tard ?

Et oui !
VI. Configuration « rien à foutre de la seconde intercalaire »
Alors là, vous allez me dire, non, c’est pas possible, on a vu que cette foutu secondes il faut savoir la gérer, et pour une fois qu’on a un truc pour le faire, il ne faut pas le rater !
Ok, ou alors… ou alors on lit ce que le BIPM (Bureau International des Poids et Mesures) et consorts ont publié en 2022 :
La Conférence générale des poids et mesures (CGPM), à sa 27e réunion,
décide que la valeur maximale pour la différence (UT1 - UTC) sera augmentée au plus tard en 2035
demande au CIPM de consulter l’UIT, ainsi que d’autres organisations qui pourraient être concernées par cette décision, afin de préparer les actions suivantes :
proposer une valeur maximale pour la différence (UT1 - UTC) qui permettra d’assurer la continuité de l’UTC pendant au moins un siècle,
préparer un plan de mise en œuvre d’ici 2035 au plus tard de la valeur maximale proposée pour la différence (UT1 - UTC),
proposer une périodicité pour l’examen par la CGPM de la nouvelle valeur maximale après sa mise en œuvre afin que la CGPM garde le contrôle de l’applicabilité et de l’acceptabilité de la valeur appliquée,
rédiger une résolution décrivant ces propositions qui sera soumise pour adoption par la CGPM à sa 28e réunion (2026),
Je traduis : (la seconde intercalaire c’est la merde, alors) on propose de changer la différence supportable entre UTC et UT1 pour ne plus avoir à faire à ce truc là pendant les 100 prochaines années. On en cause et on décide en 2026.
Donc en fait, il est fort probable que cette seconde calendaire, dont on avait rien à faire en 1972, du temps où les programmeurs étaient des real programmers, ce n’était pas un problème, mais aujourd’hui on a TikTok, et ce serait mal de manquer une vidéo en scrollant aussi bien qu’on fait du trading à très haute fréquence, et faudrait pas rater une bonne affaire, alors supprimons ce truc.
Sous entendu : puisque des solutions existent.
Alors comme on est tranquille pour les 100 années à venir, et sans doute au delà, et que pendant ce laps de temps on peut imaginer que Cloudflare et Facebook seront capable de rejoindre le club de Google et AWS, ou inversement, on a pas à s’emmerder du tout avec cette leap second.
Alors ça peut donner cette config de rêve :
# NTP Network Time Protocol
# Restrictions par défaut (s'applique à tout le monde) :
restrict default noquery nomodify notrap nopeer
# Les sources ont le droit de créer des associations
# (pas de "nopeer")
restrict source noquery nomodify notrap
# Accès total pour cette machine et celle de son réseau
restrict 127.0.0.1
restrict -6 ::1
restrict 192.168.0.0 mask 255.255.255.0
# Le fichier qui contient la dérive (calculée)
driftfile "C:\Program Files (x86)\NTP\etc\ntp.drift"
# Suffisament de serveurs, strate 1 et 4 (AWS)
pool time.aws.com iburst minpoll 8 maxpoll 10
pool time.cloudflare.com iburst minpoll 8 maxpoll 10
pool time.facebook.com iburst minpoll 8 maxpoll 10
pool time.google.com iburst minpoll 8 maxpoll 10VI. Conclusion
Il y a beaucoup à explorer avec NTP. La première chose à faire c’est de partir de la configuration de base, et voir comment se comporte la machine, peut être il n’y a pas besoin de faire plus. Après, si vous le désirez, vous pouvez optimiser la configuration.
La seconde calendaire est un vrai problème. Est ce que l’utilisateur de PC en 2026 doit gérer ce problème ? Sans doute pas, car les instances chargées de la mesure et le partage du temps sont en train de traiter le problème et que la solution va plutôt dans le sens de sa disparition.
Par contre il est regrettable que Windows n’offre pas mieux qu’un service de temps à l’emporte pièce, alors que Microsoft à sans aucun doute un système interne composé de nombreuses horloges NTP.
ANNEXES
A. Dates d’ajout des secondes intercalaires
Liste des 27 dates auxquelles ont été ajouté une seconde intercalaire. Vous remarquerez que c’est normalement soit le 31 décembre soit le 30 juin :
Date (70’)
1972-06-30 1972-12-311973-12-311974-12-311975-12-311976-12-311977-12-311978-12-311979-12-31
Date (80’- 90’)
1981-06-301982-06-301983-06-301985-06-301987-12-311989-12-311990-12-311992-06-301993-06-301994-06-301995-12-311997-06-301998-12-31
Date (2000)
2005-12-31
2008-12-31
2012-06-30
2015-06-30
2016-12-3
B. Date de la prochaine seconde intercalaire
On en sait rien !
Mais si vous voulez savoir s’il y en aura une bientôt, il suffit de lire le dernier Bulletin C émis par l’observatoire de Paris… si vous êtes un programme, il suffit d’accéder à cette URL : http://hpiers.obspm.fr/eop-pc/webservice/CURL/leapSecond.php
INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS)
SERVICE INTERNATIONAL DE LA ROTATION TERRESTRE ET DES SYSTEMES DE REFERENCE
SERVICE DE LA ROTATION TERRESTRE DE L'IERS
OBSERVATOIRE DE PARIS
61, Av. de l'Observatoire 75014 PARIS (France)
Tel. : +33 1 40 51 23 35
e-mail : [email protected]
http://hpiers.obspm.fr/eop-pc
Paris, 06 July 2026
Bulletin C 72
To authorities responsible
for the measurement and
distribution of time
INFORMATION ON UTC - TAI
NO leap second will be introduced at the end of December 2026.
The difference between Coordinated Universal Time UTC and the
International Atomic Time TAI is :
from 2017 January 1, 0h UTC, until further notice : UTC-TAI = -37 s
Leap seconds can be introduced in UTC at the end of the months of December
or June, depending on the evolution of UT1-TAI. Bulletin C is mailed every
six months, either to announce a time step in UTC, or to confirm that there
will be no time step at the next possible date.
Christian BIZOUARD
Director
Earth Orientation Center of IERS
Observatoire de Paris, FranceCrédit photo : photo “de couverture” crédit : NASA.
Ce blog est propulsé par Beehiiv. J’ai choisi beehiiv parce qu’ils offrent plus de choses que la concurrence et que ce sont des gentils.
Les liens ci dessus sont sponsorisés ! Je touche $1000 par clic. Alors cliquez sans peur !
1 Touche Windows + R et tapez cmd ou powershell.
