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

UDel ntpd - полностью отключить обнаружение сервера времени

Я настроил UDel ntpd (версия 4.2.6.p5) в качестве клиента для трех серверов, управляемых моей организацией, и (как мне показалось) больше никого.

server xx.yy.zz.1 iburst
server xx.yy.zz.2 iburst
server xx.yy.zz.3 iburst

restrict default ignore
restrict xx.yy.zz.1 nomodify notrap nopeer noquery
restrict xx.yy.zz.2 nomodify notrap nopeer noquery
restrict xx.yy.zz.3 nomodify notrap nopeer noquery

Примерно через пять минут безотказной работы ntpq сообщил, что демон обнаружил и добавил еще два сервера времени (также управляемых моей организацией, но не включенных в их Официальный список серверов времени):

ntpq> pe
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*xx.yy.zz.1          aa.bb.cc.dd  2 u   16   64    1    0.157   -2.230   0.032
 xx.yy.zz.2          aa.bb.cc.dd  2 u   15   64    1    0.207   -2.191   0.032
 xx.yy.zz.3          aa.bb.cc.dd  2 u   14   64    1    0.211   -2.171   0.014
 xx.yy.zz.4         .INIT.       16 u    -   64    0    0.000    0.000   0.000
 xx.yy.zz.5         .INIT.       16 u    -   64    0    0.000    0.000   0.000

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

Я не знаю точно, как это произошло, но из документации складывается впечатление, что сервер A может каким-то образом сказать клиенту: «Эй, вам также следует поговорить с серверами B, C и D». В документации, которую я нашел, есть много бессвязного словоблудия о различных методах для этого, но абсолютно ничего о том, как это контролировать.

Поэтому вопрос: Как мне полностью отключить это, чтобы клиент пытался разговаривать только с серверами, явно указанными в файле конфигурации, несмотря ни на что?


По запросу:

# ntpq -pncrv | redact
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
+xx.yy.zz.1      aa.bb.cc.dd  2 u   56 1024  377    0.177   -0.010   0.070
*xx.yy.zz.2      aa.bb.cc.dd  2 u  690 1024  377    0.237    0.028   0.046
+xx.yy.zz.3      aa.bb.cc.dd  2 u  226 1024  377    0.229    0.013   0.052
 xx.yy.zz.4      .INIT.      16 u    - 1024    0    0.000    0.000   0.000
 xx.yy.zz.5      .INIT.      16 u    - 1024    0    0.000    0.000   0.000
associd=0 status=061b leap_none, sync_ntp, 1 event, leap_event,
version="ntpd 4.2.6p5@1.2349-o Fri Apr 10 19:04:04 UTC 2015 (1)",
processor="x86_64", system="Linux/3.16.0-4-amd64", leap=00, stratum=3,
precision=-22, rootdelay=0.405, rootdisp=38.394, refid=128.2.1.21,
reftime=d951542d.a6db3cdc  Wed, Jul 15 2015 17:50:37.651,
clock=d95156df.0d2756da  Wed, Jul 15 2015 18:02:07.051, peer=9102, tc=10,
mintc=3, offset=0.009, frequency=-5.266, sys_jitter=0.024,
clk_jitter=0.030, clk_wander=0.003

# redact < /etc/ntp.conf
driftfile /var/lib/ntp/ntp.drift
statsdir /var/log/ntpstats/
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
server aa.bb.cc.1 iburst
server aa.bb.cc.2 iburst
server aa.bb.cc.3 iburst
restrict -4 default ignore
restrict -6 default ignore
restrict aa.bb.cc.1 nomodify notrap nopeer noquery
restrict aa.bb.cc.2 nomodify notrap nopeer noquery
restrict aa.bb.cc.3 nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict ::1

Я не вижу здесь ничего о получении дополнительных серверов от DHCP.

Я предположил, что это за организация и что вы используете DHCP.

Да ваша организация на видном месте публикует группу из 3 серверов При этом ваша организация также дает указание клиентам DHCP использовать шесть других серверов..

Я не уверен, почему это проблема, что ваша машина использует серверы, рекламируемые в dhcp, но вы можете отключить эту функцию, если хотите. Если вы используете Debian, вам нужно отредактировать /etc/dhcp/dhclient.conf и удалите параметр ntp-servers из запроса:

request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, domain-search, host-name,
dhcp6.name-servers, dhcp6.domain-search,
netbios-name-servers, netbios-scope, interface-mtu,
-   rfc3442-classless-static-routes;
+   rfc3442-classless-static-routes, ntp-servers;

Если вы не используете Debian, вам нужно обратиться к документации вашего дистрибутива.