Home

Mise en place d'une synchronisation des horloges via NTP

Last modified: 8 Jul 2006

Les horloges des serveurs sont souvent désynchronisées, avec pour conséquence:

Pour maintenir à l'heure un ensemble de serveurs (solution actuellement en production sur 40 serveurs répartis sur 10 sites distants) il existe un protocole spécialisé: NTP.

Architecture retenue:

+---------------------------------------+
| 3 serveurs NTP de strate 2 (internet) |
|           (ntpA, ntpB, ntpC)          |
+---------------------------------------+
                   /\
                   ||
+---------------------------------------+
|   3 serveurs NTP de strate 3 (WAN)    |
|        (servA, servB, ServC)          |
+---------------------------------------+
                   /\
                   ||
+---------------------------------------+
|         Les autres serveurs           |
+---------------------------------------+

WAN   = 172.16.0.0/16
servA = 172.16.1.1
servB = 172.16.1.2
servC = 172.16.1.3

Si un serveur des strates 2 ou 3 est indisponible, les serveurs de la strate N+1 se synchroniseront avec les 2 serveurs restants.

1. Mise en place d'un serveur NTP sur RH9

Le serveur NTP est déjà installé par défaut, il faut juste le paramétrer, ci-après un exemple de ntp.conf:

# on deny all par defaut
restrict default ignore

# on authorise les ips ci-dessous (clients)
restrict 127.0.0.1
restrict 172.16.0.0 mask 255.255.0.0 notrust nomodify notrap

# on authorise et on declare les serveurs ntp stratum 2
server <ip servA>
server <ip servB>
server <ip servC>
restrict <ip servA> mask 255.255.255.255 nopeer nomodify notrap noquery
restrict <ip servB> mask 255.255.255.255 nopeer nomodify notrap noquery
restrict <ip servC> mask 255.255.255.255 nopeer nomodify notrap noquery

# si aucune source NTP n'est dispo on utilise la local clock
server  127.127.1.0     # local clock
fudge   127.127.1.0 stratum 10

# divers
logfile /var/log/ntp.log
driftfile /etc/ntp/drift
authenticate no

Enfin, il suffit ensuite d'activer le service dans la sequence de boot et de le lancer à la main pour la première fois. Attention, l'heure du système ne doit pas être trop éloignée de l'heure réelle sinon ntpd refusera d'effectuer la synchronisation:

# ntpdate ntp.laas.fr
# hwclock --systohc
# chkconfig ntpd on
# /etc/init.d/ntpd start

2. Mise en place d'un client NTP sur un serveur W2K

Normalement, par défaut, le service est lancé automatiquement lors du boot, si ce n'est pas le cas, il faut penser à l'activer dans le gestionnaire de services:

> net time /setsntp:172.16.1.1,172.16.1.2,172.16.1.3
> net stop w32time
> net start w32time

La cle de registre du parametrage de NTP est \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControleSet\Services\W32Time\Parameters.

comment box:

D'accord? pas d'accord? suggestions? faute d'orthographe?