User Tools

Site Tools


doc:appunti:linux:sa:ntp

This is an old revision of the document!


Sincronizzazione ora con NTP

Debian GNU/Linux testing Etch con ntp 4.2.0a.

Server

Sul server si installano i pacchetti:

  • ntp-simple
  • ntp-server
  • ntp

Nel file di configurazione /etc/ntp.conf si deve indicare qualche NTP server:

server ntps.net4u.it
server pool.ntp.org
server 127.127.1.0
fudge 127.127.1.0 stratum 13

Se il clock di sistema differisce da quello del server NTP di oltre 1000 secondi, il daemon ntpd muore indicando che si deve intervenire manualmente. Per ovviare a questo problema si può creare il cron job /etc/cron.d/ntpdate che una volta al giorno reimposta l'ora di sistema dal server NTP indipendentemente dalla differenza. Lo stesso script provvede anche a impostare l'orologio hardware dopo aver impostato quello di sistema.

#!/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
invoke-rc.d ntp-server stop
invoke-rc.d ntpdate start
invoke-rc.d ntp-server start

Appena riavviato il servizio con /etc/init.d/ntp-server restart il demone si sincronizza con il clock interno della macchina (server 127.127.1.0), ma annuncia uno stratum alto: 13. Quindi nei primi istanti di funzionamento il server non è adatto per la sincornizzazione dei client. Poi eventualmente si sincronizza con un server di stratum sufficientemente basso. Nel file di log si legge:

Dec 15 12:16:15 neon ntpd[10226]: precision = 3.000 usec
Dec 15 12:16:15 neon ntpd[10226]: Listening on interface wildcard, 0.0.0.0#123
Dec 15 12:16:15 neon ntpd[10226]: Listening on interface wildcard, ::#123
Dec 15 12:16:15 neon ntpd[10226]: Listening on interface lo, 127.0.0.1#123
Dec 15 12:16:15 neon ntpd[10226]: Listening on interface eth0, 217.19.151.200#123
Dec 15 12:16:15 neon ntpd[10226]: kernel time sync status 0040
Dec 15 12:16:15 neon ntpd[10226]: frequency initialized -30.279 PPM from /var/lib/ntp/ntp.drift
Dec 15 12:19:37 neon ntpd[10226]: synchronized to LOCAL(0), stratum 13
Dec 15 12:19:37 neon ntpd[10226]: kernel time sync disabled 0041
Dec 15 12:20:43 neon ntpd[10226]: synchronized to 80.83.192.129, stratum 2
Dec 15 12:23:50 neon ntpd[10226]: kernel time sync enabled 0001

Lo stato del server si interroga sul server stesso con:

# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*ramses.net4u.it 192.53.103.103   2 u   40   64  377   24.119   -5.678   1.855
+qnan.org        192.5.41.41      2 u   40   64  377  179.912  -12.773   1.859
 LOCAL(0)        LOCAL(0)        13 l   41   64  377    0.000    0.000   0.004

Client

Sul client si può sincronizzare l'orologio con ntpdate e fare il debug con ntpdate -d. Ecco un debug di fallimento:

# ntpdate -d ntp.texnet.it
15 Dec 12:19:03 ntpdate[4612]: ntpdate 4.2.0a@1:4.2.0a+stable-2-r Fri Aug 26 10:30:13 UTC 2005 (1)
transmit(217.19.151.200)
receive(217.19.151.200)
transmit(217.19.151.200)
receive(217.19.151.200)
transmit(217.19.151.200)
receive(217.19.151.200)
transmit(217.19.151.200)
receive(217.19.151.200)
transmit(217.19.151.200)
217.19.151.200: Server dropped: strata too high
server 217.19.151.200, port 123
stratum 16, precision -18, leap 11, trust 000
refid [217.19.151.200], delay 0.02591, dispersion 0.00000
transmitted 4, in filter 4
reference time:    00000000.00000000  Thu, Feb  7 2036  7:28:16.000
originate timestamp: c74bcfa7.c9737542  Thu, Dec 15 2005 12:19:03.786
transmit timestamp:  c74bcfa7.a08bc9cd  Thu, Dec 15 2005 12:19:03.627
filter delay:  0.02608  0.02592  0.02592  0.02591
         0.00000  0.00000  0.00000  0.00000
filter offset: 0.159672 0.159616 0.159610 0.159614
         0.000000 0.000000 0.000000 0.000000
delay 0.02591, dispersion 0.00000
offset 0.159614

15 Dec 12:19:03 ntpdate[4612]: no server suitable for synchronization found

Ecco invece una situazione funzionante:

ulisse:~# ntpdate -d ntp.texnet.it
15 Dec 12:38:35 ntpdate[4677]: ntpdate 4.2.0a@1:4.2.0a+stable-2-r Fri Aug 26 10:30:13 UTC 2005 (1)
transmit(217.19.151.200)
receive(217.19.151.200)
transmit(217.19.151.200)
receive(217.19.151.200)
transmit(217.19.151.200)
receive(217.19.151.200)
transmit(217.19.151.200)
receive(217.19.151.200)
transmit(217.19.151.200)
server 217.19.151.200, port 123
stratum 3, precision -18, leap 00, trust 000
refid [217.19.151.200], delay 0.02594, dispersion 0.00000
transmitted 4, in filter 4
reference time:    c74bd411.79bc44bf  Thu, Dec 15 2005 12:37:53.475
originate timestamp: c74bd43b.82be596c  Thu, Dec 15 2005 12:38:35.510
transmit timestamp:  c74bd43b.919988d2  Thu, Dec 15 2005 12:38:35.568
filter delay:  0.02609  0.02596  0.02594  0.02597
         0.00000  0.00000  0.00000  0.00000
filter offset: -0.05817 -0.05821 -0.05822 -0.05823
         0.000000 0.000000 0.000000 0.000000
delay 0.02594, dispersion 0.00000
offset -0.058220

15 Dec 12:38:35 ntpdate[4677]: adjust time server 217.19.151.200 offset -0.058220 sec
doc/appunti/linux/sa/ntp.1134657354.txt.gz · Last modified: 2011/11/17 10:35 (external edit)