У меня следующая ситуация: я пытаюсь настроить сервер NTP в локальной сети, который обновит клиентов NTP в локальной сети. Все машины - CentOS, а запущенный ntpd - ntpd 4.2.6p5@1.2349-o Сб, 23 ноября, 18:20:11 UTC 2013 (1)
Я настраиваю в ntp.conf следующее:
Сервер:
server X.X.X.X iburst
server Y.Y.Y.Y iburst
server Z.Z.Z.Z iburst
restrict 192.168.1.0 mask 255.255.255.0 notrap nomodify nopeer noquery
broadcast 192.168.1.255 minpoll 3 maxpoll 4
disable auth
Клиент:
broadcastclient
Теперь я останавливаю и NTP-сервер, и NTP-клиентов, и устанавливаю на одной из машин неправильную дату, чтобы убедиться, что сообщение NTP исправит это. После этого я перезапускаю и клиент, и сервер. Я могу видеть, как широковещательные пакеты NTP покидают сервер NTP и прибывают к клиенту NTP (используя tcpdump). Но дата и время все еще не обновляются на клиентском компьютере.
Что я делаю не так?
Большое спасибо за ваши ответы.
А.
Также добавьте в конфигурацию клиента опцию «отключить аутентификацию»:
Клиент:
broadcastclient
disable auth
Имейте в виду, что с конфигурацией сервера, подобной вашей (то есть без локального источника времени), клиент будет получать время с сервера только тогда, когда сервер сам синхронизируется со своими одноранговыми узлами. Вы можете проверить это с помощью ntpq -p
команда на сервере.
Еще одна загвоздка с широковещательным клиентом - это опция restrict (server network) nopeer
на клиенте эффективно блокирует его от синхронизации с неизвестными (то есть обнаруженными путем прослушивания их трансляций) одноранговыми узлами. Но я не вижу такой опции в конфигурации вашего клиента.