Будет ли NTP работать в изолированной сети (при отсутствии надежного источника времени)

Я исследую типичную проблему NTP. Установка выглядит следующим образом:

FreeBSD компилируется и запускается на Opensolaris. Файл конфигурации в OpenSolaris содержит запись linux и другую машину opensolaris в качестве сервера, и эти серверные машины синхронизируют время только с собой (локальные часы). На серверных машинах в этом случае также работает NTP. В течение нескольких минут после запуска демона ntp клиент начинает синхронизировать время только с самим собой и после этого остается в этой ситуации. Все серверы сбрасываются, и синхронизация времени с ними не выполняется.

У меня вопрос, есть ли фундаментальная проблема с этой настройкой. Будет ли NTP работать в такой изолированной сети, которая не имеет прямой или косвенной связи с надежным источником времени в Интернете?

3 ответа

Я ничего не знаю о Linux/Unix, но могу вам сказать, что серверы не должны синхронизироваться между собой, так как в сервере А используется сервер В, поскольку сервер времени, а сервер В использует сервер А в качестве сервера времени, поскольку это может вызвать проблемы. Выберите один сервер, который будет официальным сервером времени, и настройте другой сервер для синхронизации с ним.

Время относительно. Серверы и клиенты не знают и не заботятся, используют ли они правильное время, определенное некоторыми внешними часами. В системе с замкнутым контуром время - это то, что вы настраиваете. Серверы и клиенты будут считать, что это правильное время.

Да, но вы должны лгать NTP. По сути, вы выбираете один сервер в качестве сервера времени, а затем настраиваете NTP на этом хосте, чтобы он был авторитетным, даже если для этого нет никаких оснований (т. Е. Нет прямого доступа к серверу нулевого уровня или доступа к сети на более низком уровне). сервер). Тогда и только тогда вы настраиваете других на просмотр "авторитетного" сервера, и они будут синхронизироваться с ним. В противном случае ни один хост не будет считать себя авторитетным и не позволит никому другому синхронизироваться с ним, что вы и видите.

Если память служит, "авторитетный" сервер должен иметь что-то вроде

# use local clock
server 127.127.1.0
fudge 127.127.1.0 stratum 10

хотя это по памяти, и вам, возможно, придется немного поиграть с этим.

Если вам нужен точный источник времени без каких-либо подключений к Интернету, вы можете использовать последовательный GPS, подключенный к машине, которая будет работать как NTP-сервер.

Другие вопросы по тегам