web-dev-qa-db-ja.com

NTPの問題をどのように管理し、トラブルシューティングする必要がありますか?

しばらくの間、私は会社のネットワークでいくつかのNTPの問題と戦ってきましたが、コマンドがサービスとどのように組み合わされるかを理解するのに苦労しています。例:サーバーの/etc/ntp.conf次の行があります:

server IP_of_internal_ntp_server

しかし、ntpq -pと入力すると、別のサーバーのIPが表示されます。さらに、時間の経過とともに、サーバーの時刻をNTPサーバーと再同期する方法は次のとおりです。

service ntpd stop && ntpdate ntp_server && service ntpd start

私の質問は次のとおりです。

  1. ntpdデーモンとntpdateコマンドは連携していますか?もしそうなら、なぜntpdを同期するためにntpデーモンを停止しなければならないのですか?
  2. ntpq -pコマンド、それは/etc/ntp.confファイルの影響を受けますか?
  3. 一部のサーバーではNagios NTPチェックがNTP OK: Offset unknownを返しますが、他のすべてのサーバーでは適切な応答が得られ、他のすべてのサーバーはまったく同じように構成されています。なぜですか?

よろしくお願いします、板井

編集#1:/etc/ntp.conf

driftfile /var/lib/ntp/drift
fudge   127.127.1.0 stratum 10  
keys /etc/ntp/keys
restrict 0.centos.pool.ntp.org mask 255.255.255.255 nomodify notrap noquery
restrict 127.0.0.1 
restrict 1.centos.pool.ntp.org mask 255.255.255.255 nomodify notrap noquery
restrict 2.centos.pool.ntp.org mask 255.255.255.255 nomodify notrap noquery
restrict -6 ::1
restrict default kod nomodify notrap nopeer noquery
server 127.127.1.0
server 130.117.52.203 

ntpq -pの出力:

[root@nyproxy15 ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 38.74.128.71    .INIT.          16 u    -   64    0    0.000    0.000   0.000
*LOCAL(0)        .LOCL.          10 l   45   64  377    0.000    0.000   0.001
[root@nyproxy15 ~]#

層16は無視してください。修正する必要があることはわかっています。

編集#2:/etc/ntp.confを編集し、あなたが言及した行をコメントアウトしました。

[root@nyproxy15 ~]# service ntpd stop ; ntpdate 130.117.52.203 ; service ntpd start
Shutting down ntpd:                                        [  OK  ]
30 Sep 08:16:30 ntpdate[31192]: adjust time server 130.117.52.203 offset -0.078324 sec
ntpd: Synchronizing with time server:                      [  OK  ]
Starting ntpd:                                             [  OK  ]
[root@nyproxy15 ~]# ntpq -p
localhost.localdomain: timed out, nothing received
***Request timed out
root@nyproxy15 ~]# ps -ef |grep ntp
root     31210     1  0 08:16 ?        00:00:00 ntpd -u ntp:ntp -p /var/run/ntpd.pid

編集#3:

数分後、ntpq -pが正しい応答を返したようです。

[root@nyproxy15 ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*130.117.52.203  46.4.54.78       3 u    9   64  377   80.633   -9.950   1.420
[root@nyproxy15 ~]#
1
Itai Ganot

NTPサーバーに確実に何かを実行させたい場合は、サーバー自体のクロックの信頼性について嘘をつく必要はありません。

server 127.127.1.0

そして

fudge 127.127.1.0 stratum 10

まさにそれをしなさい、そしてそれらを取り除くことは物事を修正したように見える。

ntpdで時間をブルートフォースする前に、ntpdateを停止することに関しては、カーネル内に時計で遊ぶための単一の構造があり、ntpdがその上にあることを理解しています。 (必要に応じて時間を歪めるため)。そこにある限り、ntpdateは調べることができません。したがって、ntpdateが機能するのに十分な時間、画像からそれを取り出す必要があります。

しかし、私の理解は厳密にはプールサーバーの実行からです。私はカーネルプログラマーではないので、それについて間違っている可能性があります。

1
MadHatter