- Network Time Protocol Daemon
-
ntpd
ntpd, acronyme de Network Time Protocol Daemon, est un daemon qui définit et maintient l'heure sur un système d'exploitation par synchronisation avec les serveurs dédiés à donner cette information.
Sommaire
Description
Ce programme est un démon qui gère l'heure système en synchronisation avec des serveurs de temps internet. Il implémente de manière exhaustive la version 4 du protocole NTP, mais reste aussi compatible avec la version 3, définie par le RFC 1305, et les versions 1 et 2, définies par les RFC 1059 et RFC 1119. Ntpd effectue la plupart de ses calculs en arithmétique virgule flottante 64 bits et ne fait des opérations sur les entiers 64bits seulement pour garder une précision ultime, environ 232 picosecondes. Bien que cette précision ne soit pas atteinte avec les stations de travail et les réseaux d'aujourd'hui, elle pourra devenir nécessaire avec les processus tournant à plusieurs GHz et les réseaux de plusieurs GBps. La version Solaris de ntpd s'appelle xntpd.
Ntpd n'utilise qu'un seul fichier de configuration en mode démon et en mode client. Celui-ci s'appelle en principe ntpd.conf et se trouve dans le répertoire /etc. Un autre fichier important s'appelle driftfile (fichier de dérive), et sert à corriger les dérives de l'horloge en l'absence de connexion réseau à un serveur plus précis.
Debugging
Si ntpd ne se lance pas, en supposant une implémentation du programme qui respecte les RFC, votre horloge peut être afféctée d'un décalage horaire trop important. En regardant le fichier des logs, on voit alors une ligne du genre :
18 Aug 21:04:40 ntpd[7220]: time correction of 1738 seconds exceeds sanity limit (1000); set clock manually to the correct UTC time.
Ce contrôle peut être annulé en passant le paramètre "-g" à ntpd au démarrage :
ntpd -g
Pour forcer la synchronisation des horloges, utiliser:
ntpd -q
ou sur des systèmes plus vieux:
ntpdate serveur
Il faut noter que de larges décalages horaires provoqués par cette actions peuvent entrainer des effets de bord dans des processus qui tournent depuis longtemps ou complexes, et ce n'est pas conseillé pour des serveurs. En particulier, des programmes qui sont dépendants de l'horloge comme cron ou make peuvent se lancer deux fois de suite ou pas du tout.
La commande ntpq permet de se connecter au démon et de lui demander des informations sur les serveurs auxquels il est connecté. Par exemple, avec la commande
ntpq -p localhost
on peut ainsi connaitre pour chaque serveur :
- son nom
- son adresse ip
- son stratum
- son intervalle de polling
- s'il peut être atteint
- son round trip time
- son décalage (offset) par rapport à l'horloge interne du client
- l'écart-type du décalage
Implémentations
- L'implémentation de référence du projet NTP à l'Université du Delaware.
- OpenNTP – Un NTPD simple et portable, l'implémentation de OpenBSD.
- dntpd – Un simple client ntpd de DragonFly BSD
- La version windows – Une version gratuite avec une installation facile.
Manuels de ntpd
- La documentation officielle
- La documentation de la communauté
- NTP Development Collaboration Tool
- Mailing Lists
- Archive
- Archives de la documentation pour les releases stables
- les man pages OpenNTP
- Wiki de Gentoo
- Notes générales de linux
Bibliographie
- (en) Cet article est partiellement ou en totalité issu d’une traduction de l’article de Wikipédia en anglais intitulé « ntpd ».
- D. L. Mills, ntpd - Network Time Protocol (NTP) daemon, The University of Delaware, USA. 2005.
- Portail de l’informatique
Catégorie : Logiciel réseau et Internet
Wikimedia Foundation. 2010.