NTP時計合わせ

安物家庭用ルータにはNTPクライアント機能がある。パソコン2台ともNTPで時刻合わせをしたいのだが、せっかくルータが時刻合わせしているのにルータにはNTPサーバ機能は無い。だからパソコン2台が時計合わせしたい場合、別々に他所のNTPサーバへアクセスしなければならない。これでは無駄が多いので、パソコンAだけがNTP公開サーバから取ってくるようにして、パソコンBとルータはパソコンAから時間を取得することにした。どうせパソコンBはWinXPだから受け取るだけなら設定は簡単だと思う。ルータは設定画面からすぐ設定できる。問題はパソコンA。昔やろうとして失敗して放置してた気がする。


[NTP公開サーバ]--------[パソコンA]__[パソコンB]
|
|_[ルータ]

ntp-4.2.0aインストール

BLFSに書いてある通りに入れた。最後、ntpd -qをcronで、というのは無視。ntp.confは自力で編集してみる。

ntp.conf編集

NTPサーバの選択するときは人の迷惑にならないようにしましょう。http://wiki.nothing.sh/page/NTP
無難に推奨公開サーバのntp.jst.mfeed.ad.jpにした。
デフォルトのntp.confではローカルなホスト以外、どの通信も許可してない。restrictが通信の許可などを制御する行。ちなみにうちの場合、パソコンBは192.168.11.2,ルータは192.168.11.1なのでこのままでサーバ側は大丈夫かな?


restrict default noquery notrust nomodify
restrict 127.0.0.1
restrict 192.168.11.0 mask 255.255.255.0
fudge 127.127.1.0 stratum 3
driftfile /etc/ntp.drift
logfile /var/log/ntp.log

詳しい説明は http://www.asahi-net.or.jp/~AA4T-NNGK/ntpd.html にあった。
ntp.jst.mfeed.ad.jpへのアクセスを許可し、不都合な通信をしないようにするには、

restrict ntp.jst.mfeed.ad.jp mask 255.255.255.255 nomodify notrap noquery

をrestrictが並んでいるうちの最後の行に追加。restrictは後続行で設定が上書きされる仕組み。それより前に書いてもrestrict default〜という全ての通信を遮断する設定に上書きされてしまう。
fudge〜の次の行あたりに、

server ntp.jst.mfeed.ad.jp

を追加するとこのサーバから時間の情報を取得するようになるはず。

実行


# /etc/rc.d/init.d/ntp start
Starting ntpd... [ OK ]

きちんと動作しているか確認する。

$ ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
*ntp2.jst.mfeed. 210.173.160.56 2 u 33 64 37 19.584 -2.072 3.485

ホスト名の頭に*が付いてるので成功。同期されるまでしばらくかかった(1分くらい)。それまでは空白。
状態の読み方はこちら http://www.oiden.net/Flets/bangai02/ntpq_output
待ちきれない場合、

# ntpd -q

boot時に時間がかかってしまうblfsのntp起動スクリプト

/etc/rc.d/init.d/ntp


/usr/sbin/ntpd -gqx
loadproc /usr/sbin/ntpd

ntp自体の動作は正常なんだけど、時刻を取ってくるまでの数分間boot時に待たされる。
http://linuxfromscratch.org/pipermail/blfs-support/2005-January/053292.html ここの一連の流れに回答があった。
1. 速いサーバをたくさん登録して早くデータを取ってきてもらう
もしくは
2. ntpd -gqxの行の後ろに追加

2>&1 > /dev/null &

自分は2の方法で、後ろでコツコツと作業してもらうことにした。

WindowsXPマシンのNTPデータ取得先変更

パソコンBのWindowsXPの設定をしようとしたところ、XPってデフォルトだとマイクロソフトのサーバから取ってきてるのね。一週間に1回。取得スパンの変更は面倒なので放置する。っていうかWindowsいじるのは全体的に楽しくない。
http://arena.nikkeibp.co.jp/article/tec/winxp/20070511/121922/
これの通りにしました。おしまい。