Я столкнулся с ntp.conf файлом, который указывает директивы пула:
# Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board
# on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for
# more information.
pool 0.ubuntu.pool.ntp.org
pool 1.ubuntu.pool.ntp.org
pool 2.ubuntu.pool.ntp.org
pool 3.ubuntu.pool.ntp.org
Все же это также имеет директивы сервера в том же файле, с которым я более знаком.
Читая о пуле, я вижу, что он предназначен, чтобы использоваться вместо сервера. Необходимо использовать один или другой.
Однако, что происходит, если ntp.conf имеет обоих? Один набор имеет приоритет по другому, или все будут использоваться?
Это находится на Ubuntu 14.04, ntpd является версией 4.2.6p5.
Насколько я могу судить по исходным текстам, ntpd
работает как с членом пула, так и с отдельными серверами примерно одинаково: он добавляет их в список пиаров.
Все эти пиры используются ntpd
.
Волшебство механизма пула заключается в круглом DNS: поскольку ntpd
разрешает имя пула через DNS, ответ от DNS-запроса представляет собой один узел, который может отличаться каждый раз, когда запрашивается разрешение.
Ответ дал mboehn. Чтобы уточнить больше: см. упомянутый им документ . Особенно последние строки:
Схема пула настраивается с помощью одной или нескольких команд пула с DNS имена, обозначающие пул, из которого следует рисовать. Команда пула может быть использовался более одного раза; дублирующиеся серверы обнаруживаются и отбрасываются. В в принципе, можно использовать файл конфигурации, содержащий однострочный пул pool.ntp.org. Проект NTP Pool предлагает инструкции по использованию пула с серверной командой, которая неоптимально, но работает со старыми версиями ntpd, предшествующими пулу команда. С недавним ntpd рассмотрите возможность замены нескольких серверов в их примере с одной командой пула
Моя конфигурация:
# Specify one or more NTP servers.
pool 0.pool.ntp.org iburst
pool 1.pool.ntp.org iburst
pool 2.pool.ntp.org iburst
pool 3.pool.ntp.org iburst
# Provide your current local time as a default should you temporarly lose Internet connectivity
server 127.127.1.0
fudge 127.127.1.0 stratum 10
Теперь у меня есть несколько серверов ntp рядом с моим географическим местоположением (Нидерланды), когда я проверяю
$ ntpq -4np
remote refid st t when poll reach delay offset jitter
==============================================================================
0.pool.ntp.org .POOL. 16 p - 64 0 0.000 0.000 0.000
1.pool.ntp.org .POOL. 16 p - 64 0 0.000 0.000 0.000
2.pool.ntp.org .POOL. 16 p - 64 0 0.000 0.000 0.000
3.pool.ntp.org .POOL. 16 p - 64 0 0.000 0.000 0.000
127.127.1.0 .LOCL. 10 l - 64 0 0.000 0.000 0.000
-85.255.214.66 193.190.230.66 2 u 5 64 177 6.937 1.588 1.645
-5.39.184.5 91.148.192.49 3 u 64 64 77 8.907 1.197 1.635
-91.198.87.229 193.79.237.14 2 u 5 64 177 8.447 -0.042 0.894
+37.34.57.151 193.79.237.14 2 u 1 64 177 7.463 0.168 0.297
*91.198.87.118 192.87.110.2 2 u 2 64 177 8.593 0.070 0.384
+88.159.1.197 80.94.65.10 2 u 2 64 177 10.497 0.454 0.213
+213.154.236.182 213.136.0.252 2 u 67 64 77 8.793 0.455 2.391
#178.21.23.127 91.121.157.10 3 u 66 64 77 9.129 -0.911 1.541
#213.109.127.195 193.79.237.14 2 u 66 64 77 11.766 -7.330 1.501
+213.154.229.24 80.50.231.226 2 u 4 64 177 8.496 0.121 0.538
-217.77.132.1 213.136.0.252 2 u 2 64 177 7.026 -0.782 1.253
#87.253.148.92 195.13.1.153 3 u 4 64 177 7.338 -3.859 0.964
-94.228.220.14 193.67.79.202 2 u - 64 177 8.347 2.797 1.019
Для того, чтобы NTP правильно запрашивал пул таймсерверов и использовал доступность таймсерверов в любом сценарии обхода отказа, ntp. conf
должно быть настроено следующим образом:
объявите доменное имя пула командой pool
(а не server
)
, чтобы пул мог мобилизовать ассоциацию (i. e. добавить строку " ограничить источник
...", которая не включает директиву nopeer
)