Aller au contenu principal

NTP et synchronisation d'horloge

CCNA — IP Services

NTP et synchronisation d'horloge

Définition

NTP (Network Time Protocol) aligne l'horloge des équipements sur une source de temps fiable, en cascade de strates : une horloge atomique ou GPS en strate 1, un serveur qui s'y synchronize en strate 2, et ainsi de suite jusqu'à strate 15 (stratum 16 = non synchronisé). Sans horloge commune, les logs de plusieurs équipements deviennent impossibles à corréler lors d'un incident.

Contexte

Le topic 4.2 du blueprint 200-301 demande de configurer et vérifier NTP en mode client et serveur. Il faut savoir : poser ntp master, pointer un client avec ntp server, comprendre la notion de strate et d'offset, protéger le service avec des access-class, et relier l'horloge au syslog et aux timestamps de débogage.

Détails techniques

Comment NTP fonctionne

NTP tourne sur UDP 123, en source comme en destination. L'échange de quatre horodatages entre client et serveur permet de calculer à la fois l'offset (l'écart à corriger) et le delay aller-retour, sans supposer l'heure du client correcte. Un client n'ajuste pas brutalement son horloge : il rattrape l'écart progressivement, ce qui évite de casser les applications sensibles au temps.

Quelques repères de configuration IOS :

R1(config)# ntp server 10.10.10.50
R1(config)# ntp update-calendar
R1# show ntp status
Clock is synchronized, stratum 4, reference is 10.10.10.50
R1# show ntp associations
  address         peer u/st  state  strat offset    jitter
  10.10.10.50     12345 4    valid     3  12.45     0.342

show ntp associations liste les candidats ; le préfixe * devant la ligne indique la source actuellement synchronisée. Sur un PC Windows, w32tm /query /status donne l'équivalent.

Rôles : client, serveur, broadcast

  • Client : ntp server x.x.x.x. La majorité des cas ; IOS est client par défaut dès qu'on configure une source.
  • Serveur : ntp master [stratum]. Sans argument, la strate annoncée est 8. À réserver aux labs ou réseaux isolés sans accès aux sources publiques.
  • Broadcast : ntp broadcast sur un serveur et ntp broadcast client sur les clients du segment ; utile quand beaucoup de clients partagent un LAN (découverte sans liste de serveurs).
  • Authentication : ntp authenticate, ntp trusted-key 1, ntp server 10.10.10.50 key 1 ; évite un spoofing de la source de temps.

Les strates

Strate Signification
0 Référence (horloge atomique/GPS, pas un serveur réseau)
1 Serveur connecté directement à la référence
2 Synchronisé sur un serveur strate 1
3 et plus Cascade, max 15
16 Non synchronisé (l'équivalent d'une horloge free-running)

Protéger NTP

Par défaut, un routeur IOS serveur répond à tout le monde. Une ACL restreint qui peut synchroniser :

R1(config)# access-list 10 permit 192.168.10.0 0.0.0.255
R1(config)# ntp access-group peer 10

access-group peer autorise l'échange complet client/serveur, serveur-only (mot-clé query-only pour le contrôle d'état) limite les requêtes. Sur un Cisco switch ou routeur, le service passe par UDP 123 : le laisser ouvert au grand public expose l'horloge à une amplification et à une dérive forcée.

Pourquoi l'heure compte autant

  • Syslog : un log à 03:12:44 sur R1 et un log à 03:12:44 sur SW2 ne racontent la même seconde que si les horloges sont synchro.
  • Certificates : un certificat TLS rejeté pour "not yet valid" est souvent une horloge en retard.
  • Comptabilité et logs d'audit : une piste d'audit horodatée faux n'a plus de valeur légale.
  • service timestamps log datetime msec ajoute date et millisecondes aux messages, exploitables uniquement avec une base de temps fiable.

Exemple concret

Un parc de 40 routeurs succursales doit être synchronisé. Choix retenu : pas de ntp master en succursale, un serveur interne N1 (strate 2, synchronisé sur deux pool publics fr.pool.ntp.org), et chaque routeur pointe ntp server 10.0.0.20. Après déploiement, un audit rapide sur 3 équipements : show ntp status affiche "unsynchronized, stratum 16" sur l'un d'eux. Cause : l'interface de management était éteinte, l'UDP 123 ne sortait pas. Le jour où un incident interrompt la liaison N1, les routeurs gardent leur dérive locale : après 72 heures, un router avec quartz à 20 ppm dérive d'environ 5 secondes, largement assez pour désordonner les logs d'un incident.

Pièges fréquents

  1. ntp master partout sans source amont : tout le monde est synchronisé sur une horloge arbitraire.
  2. Confondre strate basse et bonne heure : une strate 1 non raccordée à sa référence reste strate 1 et fausse.
  3. Oublier l'ACL d'access-group côté serveur : l'horloge devient réglable par n'importe qui.
  4. Corriger manuellement l'heure d'un routeur synchronisé : NTP va la remettre à sa source dans les minutes qui suivent, ou l'ajustement manuel crée une saute pour les logs.