Я настроил 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, вам нужно обратиться к документации вашего дистрибутива.