そのため、現在のNTPセットアップをデバッグしようとしていますが、単一の構成済みサーバーからのオフセットが3秒を超えており、調整できないことがわかりました。ntpq出力のLOCAL(0)のアスタリスクは、システムが10.130.33.201サーバー(すべてを同期するシステム上の別のlinuxボックス)ではなく、システム自体とうまく同期していることを示しているようです。
ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
10.130.33.201 LOCAL(0) 9 u 49 64 377 0.242 -3742.2 1.049
*LOCAL(0) .LOCL. 10 l 2 64 377 0.000 0.000 0.001
そして、これは私のntp.confファイルです。他の誰かによって書かれたので、私はすべてが正しいと100%確信していません。
server 10.130.33.201 burst iburst minpoll 4 maxpoll 11
driftfile /mnt/active/etc/ntp.drift
restrict -4 default nomodify nopeer notrap
restrict -6 default ignore
# Undisciplined Local Clock. This is a fake driver intended for backup
# and when no outside source of synchronized time is available.
server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10
バーストとiburstおよびminpoll / maxpollについて読んだことがあるので、それらは必要ないかもしれないと気づきましたが、それは現在の問題とは関係ないと思います。
また、どのようにデプロイされるかによって、その構成ファイルを変更するには多くの作業が必要になるため、実際に変更する必要のあるものは何もないことを願っています。これがNTPの仕組みを理解していない私の場合であることを願っています。
編集-
だから、これはこの質問の複製のように見えますが、ポスターが十分な答えを得たとは思わないので、ローカル時間がサーバーよりも好まれている理由を知りたいです。また、以下の回答のいずれかに従ってprefer
、構成のサーバー行でキーワードを使用して再起動しようとしましたが、それは効果がなかったようです。
他の質問への回答が示唆するように、構成内のすべての「ローカル」行を削除した場合、サーバーに到達できない場合はどうなりますか?NTPは死にますか、それとも試行を続けますか?
重要な編集-
OK、通常、10.130.33.201(「サーバー」)はインターネットにアクセスできず、使用するGPSタイムソースもありません。重要な部分は、システム上のすべてのデバイスがサーバーと同じ時間を持っているということです。その時間が実際にどれだけ正しいかに関係ありません。
そこで、何が起こるかを確認するために、NTPプールサーバーの1つをサーバーの構成ファイルに追加して、ローカルから時間を取得するのではなく、そこから時間を取得するようにしました。NTPタイムサーバーから時刻を正しく取得できるようになりました。
それを行った後、クライアントはLOCAL(0)を優先するのではなく、サーバーと同期するようになりました
ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
*10.130.33.201 38.229.71.1 3 u 58 64 377 0.216 715621. 1.001
LOCAL(0) .LOCL. 10 l 18 64 377 0.000 0.000 0.001
新しい質問-私のサーバーがローカル(与えられた元の例)を使用しているとき、クライアントが「ああ、10.130.33.201はLOCAL(0)を使用しています。うーん、私もLOCAL(0)サーバーがあります- -10.130.33.201で同じ情報を取得するのではなく、直接使用します。
そうですか?間違ったLOCAL(0)である「ソースに直接」アクセスしようとしていますか?LOCAL(0)から時間を取得するにはサーバーが必要であり、サーバーから時間を取得するにはクライアントが必要です。現在、クライアントの設定ファイルから「ローカル」サーバーを削除することが唯一のオプションですが、これが発生する理由を理解したいと思います。可能な場合は、設定の変更を避けてください(設定の変更は、私たちの環境...)。
また、これは良い答えのない別の複製のように見えます。