LAN 上のマシンの時刻を LAN 上の GPS NTP サーバーに同期する

LAN 上のマシンの時刻を LAN 上の GPS NTP サーバーに同期する

LAN 上に 4 台のコンピュータがあり、システム クロックを可能であれば 1 ミリ秒程度で厳密に同期させる必要があります。LAN に GPS ベースのタイム サーバー (ESE-104A) をインストールしたところです。この時点で、LAN はルーターとインターネットに接続されていますが、ルーターは動作中はインターネットに接続されません。

動作中は、マシン、NTP サーバー、ルーターに電源が投入されると、システム全体が起動します。

  1. Ubuntu を何分ごとに同期するように設定し、その期間を計算するにはどうすればよいでしょうか?

  2. 落ち着くまでにどれくらいの時間がかかるか、また時間管理の質はどの程度かを知るにはどうしたらよいでしょうか?

  3. おそらく 2000 年頃の資料で、シャットダウン時にのみ hwclock をシステム時刻と同期させる必要があると示唆しているものを見つけました。これを実行するべきでしょうか、またその方法は?

  4. どのようなログファイルを保持する必要がありますか?

「ntpq -」の結果は次のとおりです。

    remote   refid       st t when poll reach   delay   offset  jitter
    *nts   .M-@M-(^AM-R.  1 u  29  128   377    38.912  -7.739   7.195

これが私の ntp.conf です (IPv4 のみ使用)

    driftfile /etc/ntp.drift

    statistics loopstats peerstats clockstats
    filegen loopstats file loopstats type day enable
    filegen peerstats file peerstats type day enable
    filegen clockstats file clockstats type day enable

    server 192.168.1.210

    restrict -4 default kod notrap nomodify nopeer noquery
    restrict -6 default kod notrap nomodify nopeer noquery

    restrict 127.0.0.1
    restrict ::1

答え1

ntpdすべてのマシンで実行します。サーバGPS受信機から時間を取得し、他のマシンをサーバーに向けます。iburstクライアントは目的に応じて十分な速さで同期します。

答え2

私は通常、システムの起動ルーチンの一部として、最初に実行されntpdate、ローカル タイム サーバーから時刻がブートストラップされるようにシステムを設定し、最初に大幅にずれないようにしています。その後、ntpd をデフォルト オプションを使用して起動します。

たとえば、ファイルの最後に/etc/rc.local次の行を追加します。

/etc/init.d/ntpd stop
ntpdate <local time server>
/etc/init.d/ntpd start

ハックっぽいですが、役に立ちます。このスレッドはサーバー障害についてですNTP が本来意図されていないこと、主に正確な時間を保つことを実行させることで、NTP をフランケンシュタインの怪物に変えない理由について説明します。

本当に正確な時間を取得したい場合は、次の方法の方が良いと思います。正確な時間プロトコルPTPプロトコルを実装したオープンソースプロジェクトがあり、その名もLinux PTP プロジェクト

関連情報