Configuration NTP et utilisation du broadcast
Bonjour,
N'étant pas un grand professionnel du NTP, je me permets de poser une question sur le fonctionnement du mode "broadcast". Certains concepts me paraissent flous...
Tout d'abord, voici un schéma de la plateforme de test :
Code:
1 2
| ( SRV NTP 01a ) <-----> ( SRV NTP 02a ) ----> ( SRV NTP 03 )
( SRV NTP 01b ) <-----> ( SRV NTP 02b ) ----> ( SRV NTP 03 ) |
Les objectifs des tests :
- Les serveurs "SRV NTP 02{a,b}" doivent être respectivement synchronisés par les serveurs "SRV NTP 01{a,b}"
- Le serveur "SRV NTP 03" doit être synchronisé par les serveurs "SRV NTP 02a" et(/ou si le "et" n'est pas possible ?) "SRV NTP 02b"
Et pour information :
- Les serveurs "SRV NTP 01a" et "SRV NTP 01b" ne peuvent pas communiquer entre eux. Physiquement, ils sont séparés. Idem pour les serveurs "SRV NTP 02a" et "SRV NTP 02b",
- Le lien entre "SRV NTP 01" et "SRV NTP 02" est un lien bidirectionnel. Chacun peut communiquer entre eux comme bon leur semble,
- Le lien entre "SRV NTP 02a" (ou "SRV NTP 02b") et "SRV NTP 03" est un lien unidirectionnel ET ne sont autorisés que les datagrammes UDP (TCP interdit).
Pour cela, j'ai créé les configurations suivantes :
- Config. de SRV NTP 01{a,b} (@IP : 10.0.0.{a,b}) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| server 127.127.1.0
fudge 127.127.1.0 stratum 5
driftfile /var/lib/ntp/drift
logfile /tmp/ntp.log/
statsdir /tmp/ntp.stat/
statistics loopstats peerstats clockstats sysstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
filegen sysstats file sysstats type day enable |
- Config. de SRV NTP 02{a,b} (@IP : 10.1.0.{a,b}) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| # @IP = 10.0.0.b pour le serveur "SRV NTP 02b" :
server 10.0.0.a prefer
server 127.127.1.0
fudge 127.127.1.0 stratum 7
driftfile /var/lib/ntp/drift
broadcast 10.2.0.1
logfile /tmp/ntp.log/
statsdir /tmp/ntp.stat/
statistics loopstats peerstats clockstats sysstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
filegen sysstats file sysstats type day enable |
- Config. de SRV NTP 03 (@IP : 10.2.0.1) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| server 127.127.1.0
fudge 127.127.1.0 stratum 11
driftfile /var/lib/ntp/drift
broadcastclient novolley
disable auth
logfile /tmp/ntp.log/
statsdir /tmp/ntp.stat/
statistics loopstats peerstats clockstats sysstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
filegen sysstats file sysstats type day enable |
Les sorties de la commande "ntpq -p" appliquées à ces serveurs me donnent ces résultats :
Code:
1 2 3
| remote refid st t when poll reach delay offset jitter
==============================================================================
*LOCAL(0) .LOCL. 5 l 31 64 377 0.000 0.000 0.001 |
Code:
1 2 3
| 10.0.0.a LOCAL(0) 6 u 875 1024 377 2.227 -15.288 10.336
*LOCAL(0) .LOCL. 7 l 51 64 377 0.000 0.000 0.001
10.2.0.1 .BCST. 16 u - 64 0 0.000 0.000 0.001 |
Code:
1 2
| *LOCAL(0) .LOCL. 11 l 42 64 377 0.000 0.000 0.001
10.0.0.a LOCAL(0) 8 u 38 64 376 0.001 3074418 8.213 |
Pour le test, je n'ai démarré que le serveur NTP du serveur "SRV NTP 02a".
Mes questions sont les suivantes :
- Pourquoi le serveur qui a le stratum le plus bas n'est-il pas la référence ? Comme vous pouvez le voir, c'est toujours le serveur marqué "LOCAL(0)" qui est la référence,
- Quand je démarre le serveur "SRV NTP 02b", le serveur "SRV NTP 03" les voit comme étant "non fiables" (marqués avec un 'x'). Que se passe-t-il ? Que dois-je faire pour que le serveur 03 se synchronise avec les serveurs "SRV NTP 02{a,b}" ? Faut-il utiliser la notion de clé ?
Merci de votre aide. :-)
Cordialement,
Yann I.
ps : j'utilise la distribution CentOS 5.6 et la version de ntpd est :
Code:
1 2
| # ntpd --version
ntpd: ntpd 4.2.2p1@1.1570-o Sat Dec 19 00:56:13 UTC 2009 (1) |