トップ  > サーバ設定:運用  > OSのインストール~初期設定  > NTPサーバ構築

NTPサーバ構築  (最終更新日:2009/11/16)

NTPサーバを構築して、LAN内の時計を日本標準時間に合わせます。

NTPサーバのインストール

[root@sv ~]# yum install ntp ← NTPサーバインストール

NTPサーバ設定

BIGLOBEではNTPサーバを提供していない為、日本標準時に合わせます。

[root@sv ~]# vi /etc/ntp.conf ← ntp設定ファイル編集
# Hosts on local network are less restricted.
#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap ← 追加(内部からの時刻同期を許可)

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server 0.rhel.pool.ntp.org ← 削除
server 1.rhel.pool.ntp.org ← 削除
server 2.rhel.pool.ntp.org ← 削除
 ↓ 時刻同期先NTPサーバを変更
server -4 ntp.nict.jp		# 日本標準時を提供しているNTPサーバ(stratum 1)
server -4 ntp.jst.mfeed.ad.jp	# 上記サーバと直接同期しているNTPサーバ(stratum 2)
IPv4以外で接続する場合は「-4」を削除します。

NTPサーバ起動

NTPサーバ起動時に大幅に時刻がずれているとエラーで起動できない為、先に手動で時刻を合わせます。
[root@sv ~]# ntpdate ntp.nict.jp ← ntp.nict.jpと同期
 1 Nov 00:18:43 ntpdate[15217]: step time server 133.243.238.244 offset -6.190297 sec

[root@sv ~]# /etc/rc.d/init.d/ntpd start ← NTPサーバ起動
ntpd を起動中:                                             [  OK  ]

[root@sv ~]# chkconfig ntpd on ← NTPサーバ自動起動設定
[root@sv ~]# chkconfig --list ntpd ← NTPサーバ自動起動設定確認
ntpd            0:off   1:off   2:on    3:on    4:on    5:on    6:off

NTPサーバ動作確認

[root@sv ~]# ntpq -p ← NTPサーバへの同期確認
      remote           refid      st t when poll reach   delay   offset  jitter
===============================================================================
ntp.nict.jp     .NICT.           1 u   11   64  377   11.423   -2.496   1.602
ntp.jst.mfeed.a 210.173.160.86   2 u    8   64  377    6.542   -0.629   1.422
LOCAL(0)        .LOCL.          10 l    2   64  377    0.000    0.000   0.001

[root@sv ~]# ntpq -p ← 約10分後、再度NTPサーバへの同期確認
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*ntp.nict.jp     .NICT.           1 u   11   64  377   11.423   -2.496   1.602
+ntp.jst.mfeed.a 210.173.160.86   2 u    8   64  377    6.542   -0.629   1.422
 LOCAL(0)        .LOCL.          10 l    2   64  377    0.000    0.000   0.001
の部分が「*」「+」になっていればOK

項目の意味
の部分
' '(reject)     距離が遠くて捨てられたサーバ
'x'(falsetick) falseticker検査で捨てられたサーバ
'.'(excess)     参照サーバが多くて捨てられたサーバ
'-'(outlyer)    クラスタリング検査で捨てられたサーバ
'+'(candidat)   接続テストに合格し、いつでも参照可能なサーバ
'#'(selected)   同期距離が遠いが参照可能なサーバ
'*'(sys.peer)   同期中であると宣言されたサーバ
'o'(pps.peer)   同期中であると宣言されたサーバ(同期はPPS信号から間接的に行なう。)

各項目の説明
remote          リモート・サーバのホスト名
refid           参照ID(不明の場合は、0.0.0.0)
st              stratum番号、サーバが第何階層かを表します。
t               階層タイプ(l:local,u:unicast,m:multicast,b:broadcast)
when            最後のパケットを受け取ってからの時間(単位:秒)
poll            ポーリング間隔(単位:秒)
reach           到達可能性に関するレジスタ・データ(8進数表現)
delay           ポーリングインターバルの遅延見積もり(単位:ミリ秒)
offset          階層のオフセット(単位:ミリ秒)
disp            階層の分散(単位:ミリ秒)

クライアントの時刻同期(Windows編)

タスクバーに時計を表示している場合、時計部分を右クリックし「日付と時刻の調整」をクリック。

ない場合、「コントロールパネル」-「日付と時刻」を選択。

「インターネット時刻」タブの「設定の変更」を選択。

「インターネット時刻サーバーと同期する」にチェックが入っていることを確認し、サーバーの欄にサーバのIPアドレスを入力。

「今すぐ更新」を選択し、表示が「時計は正常に…と同期しました」となることを確認。確認したらOKを選択し開いたウィンドウをすべて閉じます。

運用自体は問題ないですがここでもう一手間。「レジストリエディター」を起動(Windosキー+Rキーでファイルを指定して実行かコマンドプロンプトを起動しregeditを入力)し、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\W32Time\TimeProviders\NtpClientへ移動し、SpecialPollIntervalを探します。

SpecialPollIntervalは時刻を同期する間隔です。デフォルトでは604800秒で1週間に1回同期する設定になっています。1日1回(86400秒)等に変更します。