[Решено] Не работает ntpd (не синхронизируется)
Неожиданно перестало синхронизироваться время, причем разом на всех имеющихся 3 машинах, везде gentoo.
Перепробовал кучу разных вариантов конфигов, но когда на машине, которая не включалась месяц, тоже увидел аналогичную картину, понял, что дело вероятно не в настройках ntpd.
В общем,
ntpq -pn remote refid st t when poll reach delay offset jitter ============================================================================== 31.135.95.60 .INIT. 16 u - 1024 0 0.000 0.000 0.000 95.104.193.133 .INIT. 16 u - 1024 0 0.000 0.000 0.000 46.188.15.35 .INIT. 16 u - 1024 0 0.000 0.000 0.000 195.3.254.167 .INIT. 16 u - 1024 0 0.000 0.000 0.000
Если попытаться постучаться ntpdate-ом:
ntpdate 62.117.78.35 5 Jun 15:48:58 ntpdate[9935]: no server suitable for synchronization found
Если использовать непривелигерованный порт, т.е. опции -u, -d, или с опцией -q (в мане про порт не сказано), то работает:
ntpdate -q 62.117.78.35 server 62.117.78.35, stratum 2, offset 0.001208, delay 0.04164 5 Jun 15:49:30 ntpdate[9943]: adjust time server 62.117.78.35 offset 0.001208 sec
Вот как выглядят запросы через tcpdump:
bad:
15:48:50.925722 IP (tos 0x0, ttl 64, id 33385, offset 0, flags [DF], proto UDP (17), length 76) 192.168.1.79.123 > 62.117.78.35.123: [bad udp cksum 0x4ed9 -> 0xd97c!] NTPv4, length 48 Client, Leap indicator: clock unsynchronized (192), Stratum 0 (unspecified), poll 3s, precision -6 Root Delay: 1.000000, Root dispersion: 1.000000, Reference-ID: (unspec) Reference Timestamp: 0.000000000 Originator Timestamp: 0.000000000 Receive Timestamp: 0.000000000 Transmit Timestamp: 3610957730.925664165 (2014/06/05 11:48:50) Originator - Receive Timestamp: 0.000000000 Originator - Transmit Timestamp: 3610957730.925664165 (2014/06/05 11:48:50) 15:48:52.925685 IP (tos 0x0, ttl 64, id 33386, offset 0, flags [DF], proto UDP (17), length 76) 192.168.1.79.123 > 62.117.78.35.123: [bad udp cksum 0x4ed9 -> 0x61df!] NTPv4, length 48 Client, Leap indicator: clock unsynchronized (192), Stratum 0 (unspecified), poll 3s, precision -6 Root Delay: 1.000000, Root dispersion: 1.000000, Reference-ID: (unspec) Reference Timestamp: 0.000000000 Originator Timestamp: 0.000000000 Receive Timestamp: 0.000000000 Transmit Timestamp: 3610957732.925640777 (2014/06/05 11:48:52) Originator - Receive Timestamp: 0.000000000 Originator - Transmit Timestamp: 3610957732.925640777 (2014/06/05 11:48:52) 15:48:54.925650 IP (tos 0x0, ttl 64, id 33387, offset 0, flags [DF], proto UDP (17), length 76) 192.168.1.79.123 > 62.117.78.35.123: [bad udp cksum 0x4ed9 -> 0x76de!] NTPv4, length 48 Client, Leap indicator: clock unsynchronized (192), Stratum 0 (unspecified), poll 3s, precision -6 Root Delay: 1.000000, Root dispersion: 1.000000, Reference-ID: (unspec) Reference Timestamp: 0.000000000 Originator Timestamp: 0.000000000 Receive Timestamp: 0.000000000 Transmit Timestamp: 3610957734.925609008 (2014/06/05 11:48:54) Originator - Receive Timestamp: 0.000000000 Originator - Transmit Timestamp: 3610957734.925609008 (2014/06/05 11:48:54) 15:48:56.925502 IP (tos 0x0, ttl 64, id 33388, offset 0, flags [DF], proto UDP (17), length 76) 192.168.1.79.123 > 62.117.78.35.123: [bad udp cksum 0x4ed9 -> 0xf640!] NTPv4, length 48 Client, Leap indicator: clock unsynchronized (192), Stratum 0 (unspecified), poll 3s, precision -6 Root Delay: 1.000000, Root dispersion: 1.000000, Reference-ID: (unspec) Reference Timestamp: 0.000000000 Originator Timestamp: 0.000000000 Receive Timestamp: 0.000000000 Transmit Timestamp: 3610957736.925464088 (2014/06/05 11:48:56) Originator - Receive Timestamp: 0.000000000 Originator - Transmit Timestamp: 3610957736.925464088 (2014/06/05 11:48:56)
OK:
15:49:24.700515 IP (tos 0x0, ttl 64, id 33389, offset 0, flags [DF], proto UDP (17), length 76) 192.168.1.79.43577 > 62.117.78.35.123: [bad udp cksum 0x4ed9 -> 0x6d56!] NTPv4, length 48 Client, Leap indicator: clock unsynchronized (192), Stratum 0 (unspecified), poll 3s, precision -6 Root Delay: 1.000000, Root dispersion: 1.000000, Reference-ID: (unspec) Reference Timestamp: 0.000000000 Originator Timestamp: 0.000000000 Receive Timestamp: 0.000000000 Transmit Timestamp: 3610957764.700474713 (2014/06/05 11:49:24) Originator - Receive Timestamp: 0.000000000 Originator - Transmit Timestamp: 3610957764.700474713 (2014/06/05 11:49:24) 15:49:24.717121 IP (tos 0x0, ttl 51, id 0, offset 0, flags [DF], proto UDP (17), length 76) 62.117.78.35.123 > 192.168.1.79.43577: [udp sum ok] NTPv4, length 48 Server, Leap indicator: (0), Stratum 2 (secondary reference), poll 3s, precision -22 Root Delay: 0.003356, Root dispersion: 0.021438, Reference-ID: 77.37.134.150 Reference Timestamp: 3610957600.604687594 (2014/06/05 11:46:40) Originator Timestamp: 3610957764.700474713 (2014/06/05 11:49:24) Receive Timestamp: 3610957764.710218511 (2014/06/05 11:49:24) Transmit Timestamp: 3610957764.710248961 (2014/06/05 11:49:24) Originator - Receive Timestamp: +0.009743798 Originator - Transmit Timestamp: +0.009774247 15:49:26.700322 IP (tos 0x0, ttl 64, id 33390, offset 0, flags [DF], proto UDP (17), length 76) 192.168.1.79.43577 > 62.117.78.35.123: [bad udp cksum 0x4ed9 -> 0x5b97!] NTPv4, length 48 Client, Leap indicator: clock unsynchronized (192), Stratum 0 (unspecified), poll 3s, precision -6 Root Delay: 1.000000, Root dispersion: 1.000000, Reference-ID: (unspec) Reference Timestamp: 0.000000000 Originator Timestamp: 0.000000000 Receive Timestamp: 0.000000000 Transmit Timestamp: 3610957766.700277409 (2014/06/05 11:49:26) Originator - Receive Timestamp: 0.000000000 Originator - Transmit Timestamp: 3610957766.700277409 (2014/06/05 11:49:26) 15:49:26.716274 IP (tos 0x0, ttl 51, id 0, offset 0, flags [DF], proto UDP (17), length 76) 62.117.78.35.123 > 192.168.1.79.43577: [udp sum ok] NTPv4, length 48 Server, Leap indicator: (0), Stratum 2 (secondary reference), poll 3s, precision -22 Root Delay: 0.003356, Root dispersion: 0.021469, Reference-ID: 77.37.134.150 Reference Timestamp: 3610957600.604687594 (2014/06/05 11:46:40) Originator Timestamp: 3610957766.700277409 (2014/06/05 11:49:26) Receive Timestamp: 3610957766.709497291 (2014/06/05 11:49:26) Transmit Timestamp: 3610957766.709525306 (2014/06/05 11:49:26) Originator - Receive Timestamp: +0.009219881 Originator - Transmit Timestamp: +0.009247896 15:49:28.700404 IP (tos 0x0, ttl 64, id 33391, offset 0, flags [DF], proto UDP (17), length 76) 192.168.1.79.43577 > 62.117.78.35.123: [bad udp cksum 0x4ed9 -> 0xad29!] NTPv4, length 48 Client, Leap indicator: clock unsynchronized (192), Stratum 0 (unspecified), poll 3s, precision -6 Root Delay: 1.000000, Root dispersion: 1.000000, Reference-ID: (unspec) Reference Timestamp: 0.000000000 Originator Timestamp: 0.000000000 Receive Timestamp: 0.000000000 Transmit Timestamp: 3610957768.700364098 (2014/06/05 11:49:28) Originator - Receive Timestamp: 0.000000000 Originator - Transmit Timestamp: 3610957768.700364098 (2014/06/05 11:49:28) 15:49:28.716254 IP (tos 0x0, ttl 51, id 0, offset 0, flags [DF], proto UDP (17), length 76) 62.117.78.35.123 > 192.168.1.79.43577: [udp sum ok] NTPv4, length 48 Server, Leap indicator: (0), Stratum 2 (secondary reference), poll 3s, precision -22 Root Delay: 0.003356, Root dispersion: 0.021499, Reference-ID: 77.37.134.150 Reference Timestamp: 3610957600.604687594 (2014/06/05 11:46:40) Originator Timestamp: 3610957768.700364098 (2014/06/05 11:49:28) Receive Timestamp: 3610957768.709540299 (2014/06/05 11:49:28) Transmit Timestamp: 3610957768.709569161 (2014/06/05 11:49:28) Originator - Receive Timestamp: +0.009176200 Originator - Transmit Timestamp: +0.009205062 15:49:30.700319 IP (tos 0x0, ttl 64, id 33392, offset 0, flags [DF], proto UDP (17), length 76) 192.168.1.79.43577 > 62.117.78.35.123: [bad udp cksum 0x4ed9 -> 0x88ed!] NTPv4, length 48 Client, Leap indicator: clock unsynchronized (192), Stratum 0 (unspecified), poll 3s, precision -6 Root Delay: 1.000000, Root dispersion: 1.000000, Reference-ID: (unspec) Reference Timestamp: 0.000000000 Originator Timestamp: 0.000000000 Receive Timestamp: 0.000000000 Transmit Timestamp: 3610957770.700274706 (2014/06/05 11:49:30) Originator - Receive Timestamp: 0.000000000 Originator - Transmit Timestamp: 3610957770.700274706 (2014/06/05 11:49:30) 15:49:30.716396 IP (tos 0x0, ttl 51, id 0, offset 0, flags [DF], proto UDP (17), length 76) 62.117.78.35.123 > 192.168.1.79.43577: [udp sum ok] NTPv4, length 48 Server, Leap indicator: (0), Stratum 2 (secondary reference), poll 3s, precision -22 Root Delay: 0.003356, Root dispersion: 0.021530, Reference-ID: 77.37.134.150 Reference Timestamp: 3610957600.604687594 (2014/06/05 11:46:40) Originator Timestamp: 3610957770.700274706 (2014/06/05 11:49:30) Receive Timestamp: 3610957770.709531119 (2014/06/05 11:49:30) Transmit Timestamp: 3610957770.709550542 (2014/06/05 11:49:30) Originator - Receive Timestamp: +0.009256412 Originator - Transmit Timestamp: +0.009275836
Как видно от меня на сервер в случае проблемного запроса пакеты идут, а обратно пусто
Порты, подумал я, но открытие всего и вся, а не только 123 порта на роутере и на машине результатов не дало.
Куда копать дальше?
PS на выходных попытаюсь врубить комп напрямую, минуя роутер, сейчас нет кабеля достаточной длины, чтобы исключить вариант проблем с роутером.
- Для комментирования войдите или зарегистрируйтесь
1. Проверь настройки роутера
1. Проверь настройки роутера (есть ли несимметричные маршруты (tracepath), есть ли NAT и как он реализован), фаервола (на роутере и локального).
2. Проверь MTU (посмотри tracepath)
3. Попробуй телнетом на сервер - есть ли соединение?
tracepath 62.117.78.35 1?:
Как реализован NAT в роутере не знаю, роутер обычный домашний zyxel-p330 ee.
не получается telnet-ом, connection refused говорит
Собственно, я таки больше склоняюсь к глюкам роутера, правда пока у меня нет возможности исключить его из цепочки, т.к. проблема возникла сразу на нескольких машинах, либо к глюкам провайдера.
Кстати, в винде ситуация такая же, правда я там не проверял через что там синхронизация стучится.
Я уж на всякий случай разрешил все на машине, хотя на ней ничего и не запрещалось, пробросил на роутере все на эту машину, но...
D1983S написал(а):tracepath
1. Что странно тут... у вас случайно адресов-дубликатов нет? Или там какой-то мост/VRRP/HA?
2. А телнет-то на какой порт делал?! Если не соединяется по правильному порту, то и NTP работать не будет, естественно...
1. Честно говоря, так было
1. Честно говоря, так было всегда, в принципе, в мане показано примерно тоже самое, поэтому поисками причин я не занимался.
Никаких эдаких настроек там нет, квартира, провод от провайдера пришел - попал в роутер, с роутера на компы, роутер внешний адрес по DHCP получает, компы - кто по DHCP, кто статически прописан. В общем, обычная сетка, как и в миллионах домохозяйств :)
Кстати, купил-таки провод подлиннее - подключил комп напрямую к интернету, без роутера.
Эффекта ноль!
2. Делал на 123 порт. Так в том фактически и вопрос, почему не соединяется?
Написал в ТП прова, может у них какой-то глюк с оборудованием... т.к. я не понимаю, что может мешать.
/
Строго говоря, вероятность блокировки провайдером привилегированных портов — величина ненулевая.
:wq
--
Live free or die
Утверждают, что не блокируют.
Утверждают, что не блокируют. Но, см. мое предыдущее сообщение, судя по тому, что с локальным сервером синхронизация идет, проблема вероятно не у меня.
PS надо попробовать из вне подключиться к себе по 123-му порту, но по 80-му подрубается вполне.
.
Порочный подход.
Тяжкое наследие импринтинга типовых практик эксплуатации самой распространённой ОС.
Правильным решением здесь было бы временное журналирование всех отвергаемых пакетов в… например
iptables-debug.log
.:wq
--
Live free or die
Для дома подход вполне
Для дома подход вполне нормальный - быстрый, не требующий никаких особых действий - если бы сработало, дальше бы стал бы сужать область поиска потихоньку, а тут это не помогло.
ну, я делал журналирование вообще всех пакетов - затем грепал по адресу ntp-сервера. В общем, видно там всё теже пакеты, что и в tcpdump: с опцией -u - пакеты в обе стороны, без опции -u только в одну.
А на роутере, на сколько я могу судить, подобных возможностей нет.
http://serverfault.com/questi
http://serverfault.com/questions/461752/ntpdate-and-ntpd-failing-to-sync-clock-on-linux
такая же история...
В общем, подумал-подумал,
В общем, подумал-подумал, настроил раздачу времени с одного моего ПК на другой мой ПК - работает. Синхронизирует, никаких проблем.
Провайдер по моей просьбе перезагрузил ночью оборудование в доме, тишина... с внешними серверами синхронизироваться в упор не хочет...
Могли ещё магистральщики
Могли ещё магистральщики зафильтровать в рамках борьбы с http://openntpproject.org/
Например если у провайдера уязвимая cisco и он не захотел это дело исправлять.
Вероятнее всего, либо
Вероятнее всего, либо магистральный, либо местный провайдер заблокировал в своей подсети обращение на порт 123 (в свете NTP Amplified DDoS attack). Косвенно об этом свидетельствует невозможность общения с NTP-серверами по портам локальный 123 - удаленный 123.
Не грусти, товарищ! Всё хорошо, beautiful good!
весьма похоже на это
весьма похоже на это
Пока пров поднял
Пока пров поднял внутрисетевой ntp-сервер, ну и с внешними обещали разобраться.
В 99,9% случаев с внешними серверами синхронизации нет, пару раз проскакивали серверы, с которыми синхронизация была возможна, но это продолжалось недолго.
а с чем этот внутрисетевой
а с чем этот внутрисетевой синхронизируется? По часам админа в момент первого запуска?
Смысл от него тогда.
с внешним синхронизируется.В
с внешним синхронизируется.
В общем, после недели разбирательств результаты:
1) 123 порт блокировал всё-таки мой провайдер в рамках привентивных мер к NTP DDOS, только ТП об этом не знает и утверждает, что ни-ни
2) создал тему на форуме, тут же подняли свой NTP, а потом и открыли порт для серверов MS
3) на данный момент ограничения сняты, ну либо они есть, но синхронизации это не мешает.
Перестраховались, короче. Вот.