なんえ?なんえ?

記憶の片隅として利用

NTPとは

NTPとは


Network Time Protocol(ネットワーク・タイム・プロトコル)の略称。みんなエヌテーピーと呼ぶ。 ネットワークに接続される機器の時刻を正しい時刻に同期する通信プロトコル。(wikiありがとうございます)

  • UPD / 123番ポートを利用
  • L7アプリ層

なんで同期しなきゃいけないのか?


例えば、不正侵入が発覚し、どのような経路や手段で侵入されたかを調べる時、各機器のログ時刻がズレていたら整合性が取れなくなる。また、ADとかでも、Kerberosチケットは時刻を見ているので、ズレてたら通信できないとかある。

どうやって同期するのか?


協定世界時(UTC)を使って時刻を送受信する。

うるう秒 ?

4年に一度?1秒を追加したり削除したりするやつ。ネットワーク機器がトラブル事も前はよくあった。

協定世界時 ?

世界の基準時刻とでもいうのか。日本標準時(JST)より9時間早いのがUTC

どういう仕組み?

同期と言うだけあって、クライアントからサーバに時刻の問い合わせがあり、レスがある。 つまり、大量のクライアントが一つのサーバに集中すると辛い。だから、世界で複数のNTPサーバを用意して、階層管理して、負荷を分散している。

また、社内から外部に対するNTPのトラフィックを低減するため、社内にNTPサーバを置き、 社内のNTPサーバはプロバイダ等のNTPを参照するケースが普通。

ntp の存在有無を確認

# service ntpd status  
ntpd (pid  2004) を実行中...  

→います

設定ファイルを確認


# cat /etc/ntp.conf

同期状態を確認


# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
xv157-7-235-92.z 133.100.11.8     3 u   62   64   77    2.205   11.012   4.112
-210-140-66-77.j 133.243.238.164  2 u   60   64   77   11.022  -16.764   5.394
+extendwings.com 133.243.238.164  2 u   58   64   37    1.965  -12.849   4.898
-balthasar.gimas 210.173.160.87   3 u   60   64   77    2.550  -12.387  25.511
*ntp-a3.nict.go. .NICT.           1 u    1   64  177    2.472   -9.111   5.778
+ntp1.jst.mfeed. 133.243.236.17   2 u    2   64  177    1.960   -1.486   7.764

→ * は現在同期中のサーバ、+は参照可能なサーバ

どんなログでるの?


デフォルトでは ntpd はログをはかない。ntp.conf にログ設定がない。

どうやって同期状態を監視するのか?


  • ntpサーバ上の時刻とntpクライアント上の時刻比較?
  • loggerでログ出力させて、特定の値/メッセージをトリガーにする?
  • zabbixで実装か
  • zabbixテンプレ

同期方法は?


時刻の同期は2つ方式がある。 - step方式:時刻のずれを即座に修正 - slew方式 : 時刻の進み具合をずらしていくことで、少しずつ時刻を合わせていく方式 ntpd はslew方式。ntpdate [サーバ] で即座に同期可能だが、ntpd を停止する必要がある。