コンピュータの時計は特に精度が高いわけではなく、徐々にずれてしまいます。サーバとして動かすには正確な時刻を保つことがエチケットです。ここでは、NTP(NetWork Time Protocol)サービスを構築して正確な時間を保つ方法を説明します。
コンピュータの時計は特に精度が高いわけではなく、徐々にずれてしまいます。サーバとして動かすには正確な時刻を保つことがエチケットです。ここでは、NTP(NetWork Time Protocol)サービスを構築して正確な時間を保つ方法を説明します。
以下のURLから最新のソースを入手してください。
http://www.ntp.org/
今回はntp-4.2.0.tar.gzをダウロードしました。
http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2.0.tar.gz
ここではntp-4.2.0.tar.gzをダウンロードしたものとして説明します。
$ tar xvfz ntp-4.2.0.tar.gz $ cd ntp-4.2.0 $ ./configure $ make $ su # make install
これでインストールは完了です。
/usr/localディレクトリ以下にインストールされます。
設定には /etc/ntp.conf を編集します。
NTPデーモンは、上位のNTPサーバと同期をとる必要があります。私は、上位サーバは
http://www.jst.mfeed.ad.jp/
を参照しました。
そこから、私は3つのNTPサーバを指定し、以下のように /etc/ntp.conf を編集しました。
server 210.173.160.27 server 210.173.160.57 server 210.173.160.87 driftfile /etc/ntp.drift
server は同期をとるNTPサーバを指定します。今回3台のNTPサーバを指定しました。
driftfile は時刻の誤差を修正するときに使用するときのファイルとなります。
起動方法は以下のコマンドで起動できます。
# /usr/local/bin/ntpd
起動が完了すればntpdデーモンとしてシステムに常駐します。
NTPサーバの状態は以下のコマンドで確認ができます。
# ntpq -p
remote refid st t when poll reach delay offset jitter
============================================================================
ntp1.jst.mfeed. 210.173.160.86 2 u 7 64 3 23.228 0.928 10.667
ntp2.jst.mfeed. 210.173.160.56 2 u 7 64 3 22.675 0.963 10.683
ntp3.jst.mfeed. 210.173.176.4 2 u 5 64 3 22.988 11.740 11.779
同期が行われればホスト名の前に "*"が表示されます。また、"+"が表示されているホスト名は、同期が可能なサーバであることを示します。起動直後は上記の結果のように何も表示されませんが、起動して、10分程度で安定して以下の結果になると思います。
# ntpq -p
remote refid st t when poll reach delay offset jitter
============================================================================
+ntp1.jst.mfeed. 210.173.160.86 2 u 68 256 17 23.228 0.928 27.866
*ntp2.jst.mfeed. 210.173.160.56 2 u 71 256 17 22.675 0.963 27.295
+ntp3.jst.mfeed. 210.173.176.4 2 u 70 256 17 22.988 11.740 20.425
こうなれば、自分自身の時間も正確に保てますし、別のコンピュータやネットワーク機器から参照できるNTPサーバとなります。
自動起動スクリプトも用意しましたのでよろしければご利用ください。
/etc/rc.d/init.d/ntpd として保存
#!/bin/bash # init file for ntpd # # chkconfig: 345 41 41 # description: ntpd (Network Time Protocol daemon) # securlevel: 20 # processname: ntpd # # # source function library . /etc/rc.d/init.d/functions case "$1" in start) echo -n "Starting ntpd: " daemon /usr/local/bin/ntpd RETVAL=$? [ "$RETVAL" = "0" ] && touch /var/lock/subsys/ntpd echo ;; stop) echo -n "Shutting down ntpd: " killproc ntpd RETVAL=$? rm -f /var/lock/subsys/ntpd echo ;; restart) $0 stop $0 start RETVAL=$? ;; status) status ntpd RETVAL=$? ;; *) echo "Usage: ntpd {start|stop|restart|status}" RETVAL=1 esac exit $RETVAL
この状態では、NTPサーバはインターネットのあらゆるホストからNTPサーバとして利用されてしまいます。利用を制限するには /etc/ntp.conf に利用するホストを定義します。
restrict default ignore (1) restrict 127.0.0.1 (2) restrict 192.168.100.100 (3) restrict 192.168.1.0 mask 255.255.255.0 (4) restrict 210.173.160.27 (5) restrict 210.173.160.57 restrict 210.173.160.87
(1) デフォルトでNTPパケットを受信しない定義
(2) 127.0.0.1 を許可
(3) 192.168.100.100 を許可
(4) 192.168.1.0/24 を ネットワーク で許可
(5) serverとして参照している3台のNTPサーバの許可
設定後は、NTPデーモンを再起動してください。
SupportDeskパック Standard24(Linuxサポート付)3年[カスタムメイド対応] / |
|
SupportDeskパック Standard(Linuxサポート付)4年[カスタムメイド対応] / |
|
SupportDeskパック Standard24(Linuxサポート付)4年[カスタムメイド対応] / |