Назад | Перейти на главную страницу

почему ntp не восстанавливается после запуска без Интернета?

У меня есть несколько устройств Linux (без чипов TOY, поэтому они полностью полагаются на ntp), которые могут загружаться без доступа к Интернету (ссылка на переключатель активна). В ntp служба запустится, но, очевидно, никто не свяжется с узлами. Затем я получаю ntp служба, которая запущена, но не синхронизируется ни с одним партнером (ntpq -p дает .INIT. положение дел)

Проблема в том, что это действительно меняется, когда устанавливается подключение к Интернету.

Если соединение доступно во время загрузки, все работает нормально. То же, если я вручную выдаю service ntp restart (ntp подключается к одноранговым узлам, и время правильно синхронизируется).

Не следует ли ntp пытаться повторно подключаться через определенные промежутки времени?

Примечание: похоже из документов что максимальное время пула (которое, как я понимаю, является максимальным временем, в течение которого ntp будет пытаться подключиться к одноранговым узлам перед отказом?) составляет 1024 секунды = 17 минут, что намного больше, чем время, необходимое для установления доступа в Интернет (примерно от 2 до 5 минут , худший случай)

Возможно, вас укусил крайний случай для ntpd:

IIRC ntpd версий <4.2.4p3 удалил из списка синхронизации все серверы, которые не могли быть достигнуты в какой-то момент. В данном случае это, конечно, очень плохо, поскольку ntpd вполне может «исчерпать» список своих сверстников, прежде чем получить доступ к Интернету.

Можно / можно установить dynamic вариант для этих серверов в ntp.conf чтобы обойти эту проблему.

С более новыми версиями в этом больше не должно быть необходимости (кроме того, в какой-то момент была удалена динамическая опция, что внезапно вызвало незначительные нарекания у некоторых людей с жалобами ntp).

Итак, вы можете либо обновить свой ntpd, либо установить опцию.

В качестве третьего варианта вы можете создать соответствующую зависимость в своей системе инициализации; заставляя ntpd полагаться на установленный Интернет соединение (не просто сеть). В результате вы можете повторно использовать это и с другими сервисами.

Пакетирование Debian OpenNTPD автоматически перезапускает его, если появляется интерфейс. Это обычное дело.

Также, вам (обычно) нужно синхронизировать один снимок перед запуском xntpd в любом случае, так что я предлагаю это путь.