пул ntp.conf против директив сервера


15

Я наткнулся на файл 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.

Ответы:


8

Насколько я могу судить по источникам, ntpdи член пула, и отдельные серверы обрабатываются примерно одинаково: он добавляет их в список пиров.

Все эти сверстники используются ntpd.

Волшебство механизма пула заключается в циклическом DNS: поскольку ntpdимя пула разрешается через DNS, ответ на запрос DNS представляет собой один узел, который может отличаться при каждом запросе разрешения.


2
Это упомянуто в файле, discover.htmlкоторый, я считаю, связан с документацией ntpd. Смотрите в нижней части файла
mboehn

@ Vincent Я скачал исходные файлы. Можете ли вы указать, где именно я должен искать, чтобы проверить это?
user3141592

@mboehn В этом документе и в файле, на который он ссылается, я не вижу упоминания о том, что происходит с более новыми версиями ntpd, которые поддерживают директивы пула и сервера, когда они указаны. Если я что-то упускаю, пожалуйста, просветите. Благодарю.
user3141592

См. Ntp / ntp_config.c: 3776. Вот где происходит разрешение пиров из файла конфигурации. После этого посмотрите ntp / ntp_peer.c: 554 для peer_config и ntp / ntp_peer.c: 730 для new_peer. Вы увидите, что оба в конечном итоге будут добавлены в одноранговую хеш-таблицу в конце new_peer.
Винсент Де Баер

Это не помогает тому, кто не знает, что делает сервер. Можете ли вы объяснить, что делает сервер, чтобы я мог сравнить его с последним предложением того, что делает пул.
бакало

8

Ответ дал mboehn. Чтобы уточнить больше: см. Документ, который он упомянул . Особенно последние строки:

Схема пула конфигурируется с использованием одной или нескольких команд пула с именами DNS, указывающими пул, из которого следует рисовать. Команда pool может использоваться более одного раза; дубликаты серверов обнаруживаются и отбрасываются. В принципе, можно использовать файл конфигурации, содержащий однострочный пул pool.ntp.org. Проект NTP Pool предлагает инструкции по использованию пула с командой server, которая является неоптимальной, но работает со старыми версиями ntpd, предшествующими команде pool. В недавнем 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

1

Чтобы NTP правильно запрашивал пул серверов времени и использовал доступность серверов времени в любом сценарии отработки отказа, его ntp.confнеобходимо настроить следующим образом:

  • объявить имя домена пула с помощью poolкоманды (а не server)

  • разрешить пулу мобилизовать ассоциацию (т.е. добавить restrict sourceстроку " ...", которая не содержит nopeerдирективы)

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.