web-dev-qa-db-ja.com

インターネットがない起動後にntpが回復しないのはなぜですか?

インターネットにアクセスせずに起動する可能性のあるLinuxデバイス(TOYチップがないため完全にntpに依存している)がいくつかあります(スイッチへのリンクがアップしています)。 ntpサービスが開始されますが、明らかにピアには接続されません。次に、実行されているがピアと同期していないntpサービスになります(ntpq -p.INIT.ステータスを提供します)

問題は、インターネットへの接続が確立されたときにこれが変わることです。

起動時に接続が利用できる場合は、すべて正常に機能します。手動でservice ntp restartを発行した場合は同じです(ntpはピアに接続し、時刻は正しく同期されます)。

Ntpは定期的に再接続を試みるべきではありませんか?

  • はいの場合:これは私が構成することが期待されているものですか(構成に何も表示されませんでした)
  • そうでない場合:サービスの再起動またはサービスの開始の遅延を処理するための良い方法は何でしょうか(インターネットへの接続が回復すると想定できますn分起動後)

注: ドキュメントから 最大プール時間(ntpが諦める前にピアに接続しようとする最大時間であると私は理解していますか?)は1024秒= 17分であるように見えます、これは方法ですインターネットアクセスの確立に必要な時間以上(約2〜5分、最悪の場合)

11
WoJ

NtpdのEdgeケースに噛まれた可能性があります。

IIRC ntpdバージョン<4.2.4p3は、ある時点で到達できなかったサーバーを同期リストから削除しました。もちろん、この場合、ntpdはインターネット接続を取得する前にピアのリストを「使い果たす」可能性があるため、これは非常に悪いことです。

この問題を回避するために、ntp.confでこれらのサーバーのdynamicオプションを設定できます。

新しいバージョンでは、これはもう必要ないはずです(また、動的オプションはある時点で廃止されたため、ntpが突然不平を言っている人たちに小さな不満を引き起こしました)。

したがって、ntpdをアップグレードするか、オプションを設定することができます。

3番目のオプションとして、initシステムに適切な依存関係を作成できます。 ntpdを確立されたインターネット接続(notネットワークのみ)に依存させる。結果として、これを他のサービスでも再利用できるようになります。

12
Roman

Debian OpenNTPDパッケージは、インターフェースが起動すると自動的に再起動します。これは一般的です。

また、 通常はxntpdを開始する前にワンショットを同期する必要があります とにかく、これが進むべき方法であることをお勧めします。

1
mirabilos