Я провожу несколько тестов с leapfile функция в ntpd для отправки ложных дополнительных секунд и обеспечения устойчивости нашей платформы Linux к «ошибкам». Лабораторная работа NTP довольно проста: «главный» сервер с локальными часами, на котором работает ntpd с функцией leapfile, и «клиентская» система, которая также подключается к «мастеру».
Я только что обнаружил, что флаг дополнительной секунды пересылается от «мастера» к «клиенту» без проблем на ящиках CentOS-6 (под управлением 4.2.4p8-2), но с той же конфигурацией он не работает на Debian Squeeze (4.2.6.p2 + dfsg-1 + b1).
Если я запрашиваю ntpd, он возвращает флаги «leap_add_sec» и «leap = 01», и, запустив tcpdump, я также вижу эти флаги, но «клиентская» система игнорирует флаги, как я сказал: это происходит только в Debian с 4.2.6.p2 из апстрима, но не в CentOS с 4.2.4p8.
Конфигурация NTP мастера CentOS = работает нормально
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
server 127.127.1.0 iburst
fudge 127.127.1.0 stratum 10
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
keysdir /etc/ntp
crypto pw password
Конфигурация NTP главного сервера Debian = дополнительная секунда не пересылается от мастера к клиенту
leapfile "/etc/leap-seconds.list"
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
server 127.127.1.1 iburst
fudge 127.127.1.1 stratum 10
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
Уникальное различие между файлами конфигурации CentOS и Debian - это настройки секунды координации, это зависит от версии ntpd, оставшаяся конфигурация одинакова как на главном, так и на клиентском серверах.
Это конфигурация NTP на клиентах:
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
server 10.204.3.2 iburst
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
В чем может быть причина того, что в системах Debian / 4.2.6.p2 блокируется пересылка дополнительной секунды?
К вашему сведению: кажется, что это поведение, зависящее от версии, с пакетом "forward" -port от Lenny (4.2.4p4 + dfsg-8lenny3) в Squeeze работает должным образом: поля дополнительных секунд перенаправляются клиентам.