ntpdate при невозможности синхронизировать время с сервером NTP весьма неинформативно об этом рапортует, что на самом деле не только снижает потенциальный интерес к утилите, но и фактически мешает работать. Утилита при стандартном запуске вида
ntpdate 10.20.30.40
не даст отличить ситуации "нет доступа к сетевому узлу 10.20.30.40" от ситуации "на хосте 10.20.30.40 не запущен NTP сервер" не говоря уже об новой для меня ситуации "NTP сервер запущен, но его stratum/leap - это параметры [не]достоверности времени сервера - слишком велики.
Для более подробного разбора полётов -ожидаемого на самом деле поведения - необходимо запускать nptdate с ключом -d.
Вчера на gentoo настраивал NTP сервер без доступа к внешним источникам. В генте 3 варианта NTP серверов, это
Мне был привычен традиционный ntp от www.ntp.org но решил попробовать openntpd.
Дать шанс. Указал адрес прослушивания, вроде бы что-то поднялось, попробовал синхронизироваться, не получилось - забил. Думаю, надо использовать старых друзей.
И как выяснилось, привычный ntpd тоже не отдаст время с ожидаемой точностью для ntpdate.
Запустил
<client>#ntpdate192.168.0.1
получил ожидаемое
20 Sep 05:54:30 ntpdate[1890]: no server suitable for synchronization found
далее с ключом -d
<client># ntpdate -d 192.168.0.1 ...
20 Sep 05:57:03 ntpdate[5580]: ntpdate 4.2.6p5@1.2349-o Mon Nov 14 18:25:09 UTC 2016 (1)
Looking for host 192.168.0.1 and service ntp
host found : 192.168.0.1
transmit(192.168.0.1)
receive(192.168.0.1)
...
receive(192.168.0.1)
192.168.0.1: Server dropped: strata too high
server 192.168.0.1, port 123
stratum 16, precision -24, leap 11, trust 000
...
20 Sep 05:57:09 ntpdate[5580]: no server suitable for synchronization found
Решил немного покопать, может получится быстро исправить ситуацию - не получилось быстро найти требуемые опции.
в ntpd/ntp_proto.c задал при отправке stratum = 2;
немногое изменилось:
<client># ntpdate -d 192.168.0.1
20 Sep 05:59:26 ntpdate[8858]: ntpdate 4.2.6p5@1.2349-o Mon Nov 14 18:25:09 UTC 2016 (1)
Looking for host 192.168.0.1 and service ntp
host found : 192.168.0.1
transmit(192.168.0.1)leap 11
...
...
192.168.0.1: Server dropped: Leap not in sync
server 192.168.0.1, port 123
stratum 2, precision -24, leap 11, trust 000
решил, что это уже перебор. Надо дать шанс chrony, перед дальнейшей ломкой кода.
<server>#emerge chrony
<server>#cat /etc/chrony/chrony.conf
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
clientloglimit 100000000
local stratum 10
leapsectz right/UTC
allow 192.168.0.100
bindaddress 192.168.0.1
<server>#/etc/init.d/chronyd start
на клиентской тачке
<client># ntpdate -d 192.168.0.1
...
...
server 192.168.0.1, port 123
stratum 10, precision -25, leap 00, trust 000
refid [192.168.0.1], delay 0.02576, dispersion 0.00182
...
20 Sep 06:05:10 ntpdate[16530]: adjust time server 192.168.0.1 offset 0.434906 sec
отлично
ntpdate 10.20.30.40
не даст отличить ситуации "нет доступа к сетевому узлу 10.20.30.40" от ситуации "на хосте 10.20.30.40 не запущен NTP сервер" не говоря уже об новой для меня ситуации "NTP сервер запущен, но его stratum/leap - это параметры [не]достоверности времени сервера - слишком велики.
Для более подробного разбора полётов -ожидаемого на самом деле поведения - необходимо запускать nptdate с ключом -d.
Вчера на gentoo настраивал NTP сервер без доступа к внешним источникам. В генте 3 варианта NTP серверов, это
- net-misc/openntpd
- net-misc/ntp
- net-misc/chrony
Мне был привычен традиционный ntp от www.ntp.org но решил попробовать openntpd.
Дать шанс. Указал адрес прослушивания, вроде бы что-то поднялось, попробовал синхронизироваться, не получилось - забил. Думаю, надо использовать старых друзей.
И как выяснилось, привычный ntpd тоже не отдаст время с ожидаемой точностью для ntpdate.
Запустил
<client>#ntpdate192.168.0.1
получил ожидаемое
20 Sep 05:54:30 ntpdate[1890]: no server suitable for synchronization found
далее с ключом -d
<client># ntpdate -d 192.168.0.1 ...
20 Sep 05:57:03 ntpdate[5580]: ntpdate 4.2.6p5@1.2349-o Mon Nov 14 18:25:09 UTC 2016 (1)
Looking for host 192.168.0.1 and service ntp
host found : 192.168.0.1
transmit(192.168.0.1)
receive(192.168.0.1)
...
receive(192.168.0.1)
192.168.0.1: Server dropped: strata too high
server 192.168.0.1, port 123
stratum 16, precision -24, leap 11, trust 000
...
20 Sep 05:57:09 ntpdate[5580]: no server suitable for synchronization found
Решил немного покопать, может получится быстро исправить ситуацию - не получилось быстро найти требуемые опции.
В сердцах
подправил в сорцах
немногое изменилось:
<client># ntpdate -d 192.168.0.1
20 Sep 05:59:26 ntpdate[8858]: ntpdate 4.2.6p5@1.2349-o Mon Nov 14 18:25:09 UTC 2016 (1)
Looking for host 192.168.0.1 and service ntp
host found : 192.168.0.1
transmit(192.168.0.1)leap 11
...
...
192.168.0.1: Server dropped: Leap not in sync
server 192.168.0.1, port 123
stratum 2, precision -24, leap 11, trust 000
решил, что это уже перебор. Надо дать шанс chrony, перед дальнейшей ломкой кода.
<server>#emerge chrony
<server>#cat /etc/chrony/chrony.conf
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
clientloglimit 100000000
local stratum 10
leapsectz right/UTC
allow 192.168.0.100
bindaddress 192.168.0.1
<server>#/etc/init.d/chronyd start
на клиентской тачке
<client># ntpdate -d 192.168.0.1
...
...
server 192.168.0.1, port 123
stratum 10, precision -25, leap 00, trust 000
refid [192.168.0.1], delay 0.02576, dispersion 0.00182
...
20 Sep 06:05:10 ntpdate[16530]: adjust time server 192.168.0.1 offset 0.434906 sec
отлично
Комментариев нет:
Отправить комментарий