labunix's blog

labunixのラボUnix

3階層以下15階層以上のNTPサーバを導入する。

3階層以下15階層以上のNTPサーバを導入する。
 3階層以下15階層以上というのは、
 正しい時刻を持っている保証のある階層1のNTPサーバ(例えばNICT)や、
 その階層1のNTPサーバを直接参照する階層2(外部に最も近いNTPサーバ)を除く。

 要は直接外部NTPサーバを参照するのではなく、
 自身が管理する内部NTPサーバを参照すること。
 
 しょっちゅうやっているはずだけど、
 「disable monitor」とか付け忘れるので。

$ sudo cp /etc/ntp.con{f,f.bak}

$ diff /etc/ntp.conf* 
21c21,25
< server 172.31.31.222 iburst
---
> server 0.debian.pool.ntp.org iburst
> server 1.debian.pool.ntp.org iburst
> server 2.debian.pool.ntp.org iburst
> server 3.debian.pool.ntp.org iburst
> 
52,53d55
< disable monitor
< 

$ sudo /etc/init.d/ntp restart

■「leap=11」なので同期中。参照先の先頭に「*」が付いていれば、
 後は待つだけ。

$ sudo ntpq -pn -c rv
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*172.31.31.222   133.243.238.164  2 u   23   64    3    0.237    0.834   0.715
associd=0 status=c618 leap_alarm, sync_ntp, 1 event, no_sys_peer,
version="ntpd 4.2.6p5@1.2349-o Wed Oct 28 20:16:08 UTC 2015 (1)",
processor="x86_64", system="Linux/3.16.0-4-amd64", leap=11, stratum=3,
precision=-22, rootdelay=13.496, rootdisp=111.839, refid=172.31.31.222,
reftime=d9f1c744.ed567cc7  Sat, Nov 14 2015 23:44:20.927,
clock=d9f1c75b.c6a42887  Sat, Nov 14 2015 23:44:43.775, peer=36199, tc=6,
mintc=3, offset=0.000, frequency=0.000, sys_jitter=0.000,
clk_jitter=0.349, clk_wander=0.000

■待つ間は例えば以下のように。

$ watch -d -n 1 'sudo ntpq -pn -c rv'

■階層が16ではなく、leapも00になったら完了。

$ sudo ntpq -pn -c rv
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*172.31.31.222   133.243.238.164  2 u   33   64    1    0.171    2.388   0.017
associd=0 status=0614 leap_none, sync_ntp, 1 event, freq_mode,
version="ntpd 4.2.6p5@1.2349-o Wed Oct 28 20:16:08 UTC 2015 (1)",
processor="x86_64", system="Linux/3.16.0-4-amd64", leap=00, stratum=3,
precision=-22, rootdelay=12.079, rootdisp=972.889, refid=172.31.31.222,
reftime=d9f1c87a.bddf68fd  Sat, Nov 14 2015 23:49:30.741,
clock=d9f1c89f.be6a9cf1  Sat, Nov 14 2015 23:50:07.743, peer=14897, tc=6,
mintc=3, offset=2.390, frequency=0.016, sys_jitter=0.000,
clk_jitter=0.845, clk_wander=0.006

■内部なのでIPv4に制限

$ cat /etc/default/ntp 
NTPD_OPTS='-g -4'
$ sudo /etc/init.d/ntp restart
$ sudo netstat -anp | grep :123
udp        0      0 172.31.31.60:123        0.0.0.0:*                           11998/ntpd      
udp        0      0 127.0.0.1:123           0.0.0.0:*                           11998/ntpd      
udp        0      0 0.0.0.0:123             0.0.0.0:*                           11998/ntpd      

■確認する際も「-4」を指定する。

$ sudo ntpq -4 -pn -c rv
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*172.31.31.222   133.243.238.164  2 u   45   64    3    0.142   -1.845   0.087
associd=0 status=0615 leap_none, sync_ntp, 1 event, clock_sync,
version="ntpd 4.2.6p5@1.2349-o Wed Oct 28 20:16:08 UTC 2015 (1)",
processor="x86_64", system="Linux/3.16.0-4-amd64", leap=00, stratum=3,
precision=-23, rootdelay=11.495, rootdisp=972.845, refid=172.31.31.222,
reftime=d9f1e19d.24bda796  Sun, Nov 15 2015  1:36:45.143,
clock=d9f1e206.f63ef7b2  Sun, Nov 15 2015  1:38:30.961, peer=22750, tc=6,
mintc=3, offset=-1.863, frequency=8.105, sys_jitter=0.000,
clk_jitter=0.659, clk_wander=0.004