gapz.tuxfamily.org, 16 juin 2007, gapz — NTP, Network Time Protocole, est comme son nom l'indique, un protocole qui permet (entre autres) de gérer l'heure de vos machines via le réseau. On peut ne pas prêter attention à cela, cependant c'est un point très important d'autant plus que très facile à mettre en oeuvre (et léger en plus). Au risque de plagier tout ce qu'il existe déja à se sujet, je vais vous présenter rapidement les points importants de NTP.
L'architecture du réseau NTP est organisée en strates. On peut notamment distinguer grossièrement 3 niveau :
- des serveurs pilotés par des horloges atomiques, eecis.udel.edu/~mills/ntp/clock1a.html
- des serveurs publiques que l'on peut utiliser librement (certains demandent une authentification), eecis.udel.edu/~mills/ntp/clock2a.html
- des serveurs que l'on trouve chez des « particuliers »
La question qui se pose maintenant est « Mais comment se
servir de NTP ? ». Cela est extêmement simple, tout abord
il vous faut installer NTP (suivez pour cela une des
méthodes proposées par votre distribution). Une fois installé, il vous
faut le configurer à partir du fichier de configuration qui va bien
(/etc/ntp.conf
). La première chose à faire est de choisir
un serveur qui vous fournira l'heure, vous pouvez entre autres
indiquer le serveur « round robin » de
ntp.org, pool.ntp.org
, qui permet d'être redirigé vers un
serveur disponible (cela de manière aléatoire). On peut aussi noter la
présence d'autre « round robin » dont vous
trouverez la liste ici
: http://support.ntp.org/bin/view/Servers/NTPPoolServers.
Lancez maintenant ntp en démon :
$ ntpdate pool.ntp.org $ /etc/init.d/ntpd start
La commande ntpdate permet de récupérer l'heure auprès d'un serveur choisis par pool.ntp.org (dans notre cas).
« Mais comment ça marche ? »
En fait, après quelques étapes que je n'aborderais pas ici, ntpd va comparer l'heure reçue à l'heure locale. Si la différence entre les deux n'est pas trop importante, alors ntpd va tenter de corriger cet écart. Seulement (en gros), pour éviter de trop pertuber les logiciels qui utilisent l'heure, cela va se faire de manière progressive. On peut donc noter que le temps de correction est assez long, d'autant plus si l'on veut un réglage fin de la dérive. Tout le principe de fonctionnement est expliqué sur eecis.udel.edu/~mills/ntp/html/index.html. NTP est à la fois un client et un serveur, le tout étant d'une légèreté surprenante, il n'est pas nécessaire de supprimer la fonctionnalité de serveur.
De la bonne à la mauvaise utilisation de ntpdate.
Pour ceux qui auraient la fâcheuse idée de mettre un coup de ntpdate dans une tâche cron, enlever tout de suite cela !!! Cette idée peut paraître logique, mais si des milliers de personnes font la même requête à la même heure sur le même serveur, alors imaginez bien ce qu'il va se passer. À ce propose, à cause de ce problème, il a même été question (encore d'actualité ?) de supprimer ntpdate de la suite ntp.