web-dev-qa-db-ja.com

ntp.confプールとサーバーディレクティブ

プールディレクティブを指定する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に両方ある場合はどうなりますか? 1つのセットが他のセットよりも優先されますか、それともすべて使用されますか?

これはUbuntu 14.04で、ntpdはバージョン4.2.6p5です。

15
user3141592

ソースで確認できる限り、ntpdはプールのメンバーと個々のサーバーの両方をほぼ同じ方法で処理します。ピアのリストにそれらを追加します。

これらのピアはすべてntpdによって使用されます。

プールメカニズムの魔法はラウンドロビンDNSにあります。ntpdはDNSを通じてプール名を解決するため、DNSクエリからの応答は単一のノードであり、解決が要求されるたびに異なる場合があります。

8

答えはmboehnによって与えられました。さらに明確にするために: 彼が言及したドキュメント を参照してください。特に最後の行:

プールスキームは、1つ以上のプールコマンドを使用して設定され、DNS名はそこから取得するプールを示します。 poolコマンドは複数回使用できます。重複するサーバーが検出され、破棄されます。原則として、1行のプールpool.ntp.orgを含む構成ファイルを使用できます。 NTPプールプロジェクト 指示を提供 サーバーコマンドでのプールの使用について、これは最適ではありませんが、プールコマンドよりも古いバージョンの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
9
Woftor

NTPがタイムサーバーのプールを適切に要請し、フェイルオーバーシナリオでタイムサーバーの可用性を利用するためには、ntp.confは次のように構成する必要があります:

  • poolコマンドではなく、serverコマンドでプールのドメイン名を宣言します

  • プールが関連を動員できるようにします(つまり、「restrict source ... "nopeerディレクティブを含まない行)

1
drgnfr