◆NTPの同期に失敗する
ntpdateで時刻同期できる状態でも、NTPクライアントが時刻同期してくれないケースがあります。
これは、LinuxのNTPクライアントが、WindowsのNTPサーバに同期しようとしているというケースで発生しやすい印象です。
WindowsのNTPのデフォルトのゆらぎ値(Root Dispersion)は大きすぎて、LinuxのNTPクライアントでは同期してくれないようです。
これは、LinuxのNTPクライアントが、WindowsのNTPサーバに同期しようとしているというケースで発生しやすい印象です。
WindowsのNTPのデフォルトのゆらぎ値(Root Dispersion)は大きすぎて、LinuxのNTPクライアントでは同期してくれないようです。
(参考)
https://my.f5.com/manage/s/article/K03294981
https://atmarkit.itmedia.co.jp/ait/articles/0511/22/news119.html
https://my.f5.com/manage/s/article/K03294981
https://atmarkit.itmedia.co.jp/ait/articles/0511/22/news119.html
# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
192.168.0.2 192.168.0.3 1 u 6 64 377 0.271 -43935. 3.780
//↑同期していないため、行頭の状態表示が表示されない
//offsetもズレまくり…
◆解決策
【解決策1】WindowsのNTPサーバにて、レジストリ値「LocalClockDispersion」を下げる。
デフォルトは0xa(=10秒)。これを0x0などに下げればOK。
デフォルトは0xa(=10秒)。これを0x0などに下げればOK。
項目/td> | 内容 |
キー | HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config |
値の名前 | LocalClockDispersion |
値のデータ | 0xaから0x0に変更 |
【解決策2】LinuxのNTPクライアントにて、maxdistanceを上げる。
confファイルを修正して、maxdistanceの値を高く指定する。
confファイルを修正して、maxdistanceの値を高く指定する。
実装 | 設定ファイル | 設定内容 |
ntpd | ntp.conf | tos maxdist 20 |
chrony | chrony.conf | maxdistance 20 |
◆結果
# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
*192.168.0.2 192.168.0.3 1 u - 64 1 0.224 -3.152 0.079
//↑同期成功(行頭にアスタリスク)