NTPサーバーにほとんど接続せずにクロックを同期させる(または大きなクロックドリフトが検出された場合のみ)、openntpdを設定するにはどうすればよいですか?

NTPサーバーにほとんど接続せずにクロックを同期させる(または大きなクロックドリフトが検出された場合のみ)、openntpdを設定するにはどうすればよいですか?

なぜなら複数のDebian / KDEコンピュータの時計が明らかな理由なく数分ずつ遅くなります。そして、一般的なマザーボード(または少なくとも私が所有しているマザーボード)には、私が設定する必要がある正確で信頼できるハードウェア時計はありませんopenntp

openntpNTPサーバーへの継続的な接続(使用)sudo lsof -iは、デバイスの攻撃面とプライバシーにさまざまな影響を与えます。インターネット接続を最小限に抑え、必要としない、または使用しないすべてのネットワークアクティビティをブロックしたいと思います。私は毎日使用するための動作する時計を持っているだけなので、これらすべてが本当に必要だとは思いません。
GNU/Linux/Debian で動作する時計を入手するためのより良くて簡単な方法が必要です。

私が考えることができる2つの方法は次のとおりです。

  • openntpd が z 分 (x と y の間の任意の数字) ごとに ntp サーバーに接続し、クロックを同期して再び終了するようにします。
  • 同様に、一部の認証済みWebサーバーから時刻情報を取得し、openntpdがntpサーバーに接続し、クロックドリフトが大きすぎる場合にのみクロックを同期します。

おそらく、新しい信頼性の高いハードウェア時計などのより良い方法があるかもしれません。 2つの方法のいずれかで簡単に設定できるようです。そのようなことは可能ですか?

答え1

アンケートの値を調整してみることができます。ntp.conf

minpoll minpoll, maxpoll maxpoll
    These options specify the minimum and maximum poll intervals 
    for NTP messages, in seconds as a power of two. The maximum 
    poll interval defaults to 10 (1,024 s), but can be increased 
    by the maxpoll option to an upper limit of 17 (36.4 h).
    The minimum poll interval defaults to 6 (64 s), but can be 
    decreased by the minpoll option to a lower limit of 4 (16 s).
    These option are valid only with the server and peer commands.

systemdなどの代替案には、timesyncdポーリング間隔オプションもありますtimesyncd.conf

PollIntervalMinSec=, PollIntervalMaxSec=
    The minimum and maximum poll intervals for NTP messages. Each
    setting takes a time value (in seconds).  PollIntervalMinSec= must
    not be smaller than 16 seconds.  PollIntervalMaxSec= must be larger
    than PollIntervalMinSec=.  PollIntervalMinSec= defaults to 32
    seconds, and PollIntervalMaxSec= defaults to 2048 seconds.

現在何を使用しているかを確認できます。

$ timedatectl show-timesync --all
[...]
PollIntervalMinUSec=32s
PollIntervalMaxUSec=34min 8s
PollIntervalUSec=34min 8s

時計が奇妙に動作しない限り、それ自体は最大ポーリング間隔に達する必要があります。

ntpdatecronジョブまたは同様のジョブでNTPクライアント(たとえば)を使用するオプションもあります。これにより、同期状態に関係なく、指定した間隔でのみクロックが更新されます。

このデバイスのクロックが異常に動作しますが、ローカルネットワーク上の他のデバイスがクロックをよりよく維持している場合は、そのデバイスをローカルタイムサーバーとして使用できます。これにより、インターネットサーバーをほとんどポーリングせずにローカルにポーリングするデバイスが頻繁に提供されます。これらのローカルタイムサーバーを使用すると、外界との接触を最小限に抑えることができます。

どのオプションを選択しても、システムクロックが常に正しいことを確認してください。

答え2

解決策はDebian12にアップグレードし、openntpdを削除してからインストール時間の同期上記のようにここ
デフォルトオプションはtimedatectl show-timesyncFrostschutzの便利な答えを表示し、これらのオプション編集で修正できますが、/etc/systemd/timesyncd.conf動作する時計を持つには十分に見えます。

関連情報