Identifier Votre Daemon NTP
D'abord, determinez quel daemon NTP votre systeme utilise :
root@server:~# systemctl list-units --type=service | grep -E "ntp|chrony|time"
chronyd.service loaded active running NTP client/server
systemd-timesyncd.service loaded active running Network Time Synchronization
| Daemon | Fichier Config | Commande Requete |
| ntpd (classique) |
/etc/ntp.conf |
ntpq -p |
| chronyd |
/etc/chrony/chrony.conf |
chronyc sources |
| systemd-timesyncd |
/etc/systemd/timesyncd.conf |
timedatectl timesync-status |
| W32Time (Windows) |
Registre / GPO |
w32tm /query /status |
Daemon Ne Demarre Pas
Symptome : Le service refuse de demarrer ou s'arrete immediatement
Le service NTP ne demarre pas, ou demarre et plante immediatement.
Verifier l'Etat du Service
root@server:~# systemctl status chronyd
chronyd.service - NTP client/server
Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled)
Active: failed (Result: exit-code) since...
root@server:~# journalctl -xeu chronyd --no-pager | tail -50
Causes et Solutions Frequentes
Cause 1 : Erreur de Syntaxe dans la Configuration
root@server:~# chronyd -p
root@server:~# ntpd -n -d -c /etc/ntp.conf
Cause 2 : Port 123 Deja Utilise
root@server:~# ss -ulnp | grep 123
UNCONN 0 0 *:123 *:* users:(("ntpd",pid=1234,fd=16))
root@server:~# systemctl stop ntpd
root@server:~# systemctl start chronyd
Cause 3 : Plusieurs Services NTP en Conflit
root@server:~# systemctl disable --now systemd-timesyncd
root@server:~# systemctl disable --now ntpd
root@server:~# systemctl enable --now chronyd
Stratum 16 / Pas de Source de Sync
Symptome : Le systeme affiche stratum 16 ou "non synchronise"
Stratum 16 signifie que le daemon NTP n'a pas de source de temps valide. C'est le niveau stratum "invalide/inconnu".
root@server:~# ntpq -c rv
...stratum=16, precision=-23...
root@server:~# chronyc tracking
Reference ID : 00000000 ()
Stratum : 0
...
Leap status : Not synchronised
Solutions
Verifier la Configuration des Serveurs NTP
root@server:~# grep -E "^server|^pool" /etc/chrony/chrony.conf
pool 2.debian.pool.ntp.org iburst
server ntp.rdem-systems.com iburst prefer
Tester la Connectivite aux Serveurs
root@server:~# chronyc sources -v
Forcer une Sync Initiale
root@server:~# chronyc makestep
root@server:~# systemctl stop ntpd
root@server:~# ntpdate -b pool.ntp.org
root@server:~# systemctl start ntpd
Bloque en Etat .INIT
Symptome : NTP affiche .INIT pour tous les serveurs
La colonne refid affiche ".INIT." indiquant que le daemon n'a pas complete la synchronisation initiale.
root@server:~# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
0.pool.ntp.org .INIT. 16 p - 64 0 0.000 0.000 0.000
Causes Frequentes
- Heure systeme trop decalee (>1000 secondes, seuil de panique par defaut)
- Problemes reseau empechant les requetes NTP
- Echec de resolution DNS
- Pare-feu bloquant les reponses
Solution : Corriger un Grand Decalage Horaire
root@server:~# ntpdate -q pool.ntp.org
server 162.159.200.1, stratum 3, offset -3600.123456...
root@server:~# systemctl stop ntpd
root@server:~# ntpdate -b pool.ntp.org
root@server:~# systemctl start ntpd
Temps d'Attente
La synchronisation initiale peut prendre 5-15 minutes selon les conditions reseau. Surveillez la valeur "reach" - elle devrait passer de 0 a 377 progressivement.
Detection False Ticker
Symptome : Serveur marque avec 'x' (falseticker)
NTP a determine que l'heure de ce serveur differe significativement de la majorite des sources.
Solution : Ajouter Plus de Serveurs
Avec seulement 2 serveurs, NTP ne peut pas determiner lequel est correct. Utilisez au moins 4 serveurs :
server ntp.rdem-systems.com iburst prefer
pool 0.pool.ntp.org iburst maxsources 2
pool 1.pool.ntp.org iburst maxsources 2
Valeur Reach a 0
Symptome : La colonne reach affiche 0 pour tous les serveurs
Aucune requete NTP reussie. Le daemon ne peut communiquer avec aucun serveur.
Comprendre Reach
Reach est un registre octal 8 bits montrant les 8 derniers resultats de requete. 377 (octal) = 11111111 (binaire) = 8 requetes reussies. 0 = aucune requete reussie.
Corrections Frequentes
- Ouvrir le pare-feu :
ufw allow 123/udp
- Verifier que le DNS fonctionne :
host pool.ntp.org
- Utiliser des IP au lieu de noms d'hotes dans la config
- Redemarrer le daemon :
systemctl restart chronyd
- Attendre - reach augmente a chaque intervalle de sondage
Problemes W32Time Windows
"L'ordinateur n'a pas pu se resynchroniser car aucune donnee de temps n'etait disponible"
Solution
C:\> net stop w32time
C:\> w32tm /unregister
C:\> w32tm /register
C:\> net start w32time
C:\> w32tm /config /manualpeerlist:"pool-ntp.rdem-systems.com,0x8" /syncfromflags:manual /update
C:\> w32tm /resync /force
Conflits de Sync Hyper-V
Attention Machine Virtuelle
Les VM Hyper-V ont des services d'integration de temps qui peuvent entrer en conflit avec W32Time. Desactivez la sync temps VM si vous utilisez NTP externe :
PS C:\> Disable-VMIntegrationService -VMName "VotreVM" -Name "Time Synchronization"
Verifiez Votre Correction
Apres le depannage, testez votre synchronisation NTP :