2

Я пытаюсь настроить многоадресную рассылку NTP между несколькими компьютерами. Прямо сейчас я получаю многоадресные NTP-пакеты от компьютера, к которому у меня нет ни доступа, ни информации (назовем это A), который служит сервером многоадресной рассылки NTP уровня 4, и я пытаюсь получить время для нескольких компьютеров, чтобы синхронизировать с этим.

Компьютеры, которые я пытаюсь синхронизировать (назовем их B), работают под управлением CentOS6.4 и используют версию 4.2.4p8 ntpd. B может получить многоадресный пакет от A, но не может получить доступ к A в противном случае (не может пропинговать). От B, A - единственный доступный сервер NTP. ntpd запускается при загрузке компьютера и вызывается с флагом «-g». Из пакетов многоадресной рассылки NTP я узнал, что A отправляет на адрес многоадресной рассылки "224.0.1.1" с IP-адреса "192.168.1.103"

Ниже приведен файл ntp.conf от B:

tinker panic 0
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6 ::1
driftfile /var/lib/ntp/drift
keys /etc/ntp/keys
restrict 192.168.1.103 kod nomodify noquery notrap
multicastclient 224.0.1.1
disable auth

Прямо сейчас компьютер B получает NTP-пакеты от A, и при наличии достаточного количества времени ntpstat на B покажет, что он синхронизирован с A. Если время на B по существу (в пределах секунд) такое же, как на A, когда я запустил ntpd на B, затем, если я изменю время на B после того, как ntpstat покажет "синхронизированный" на B, время будет изменено обратно в течение ~ 30 минут. Если я изменю время на B на минуты, отличные от A или больше, и запущу ntpd на B, ntpstat в конечном итоге скажет "синхронизировано", но время все равно будет неправильным и не изменится вообще (пока ждал до 3 дней ). Использование ntpq -pn показывает смещение в виде десятков (10 ~ 40), а время на B уменьшается на несколько минут или часов.

Я надеюсь настроить B таким образом, чтобы, даже если время на B отличалось от A на какое-то сколь угодно большое значение, когда оно синхронизировалось с A, оно вернулось назад. Мне интересно, есть ли способ настроить ntpd на B, чтобы иметь возможность сделать это, или иметь что-то, что анализирует многоадресные пакеты от A и дает мне правильную метку времени или разницу во времени между A и B.

До сих пор я пробовал ntpdate и sntp , ни один не работал. Я также пытался получить временные метки с помощью ntpq , но это оказалось бесполезным (0 или просто местное время).

1 ответ1

0
  • Пожалуйста, попробуйте удалить флаг "nopeer" из оператора "restrict". Если "nopeer" не удален, многоадресное соединение не может быть установлено.
  • Вы также можете отключить все другие операторы restrict, кроме оператора по умолчанию, и оставить только строки, как показано ниже:

дрейф-файл /var /lib /ntp /drift

ограничение -4 по умолчанию notrap nomodify

трансляция 224.0.1.1

отключить аутентификацию

многоадресный клиент 224.0.1.1

Также после настройки необходимо перезапустить службу ntp:

перезапуск службы ntp

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .