N=1

主にコンピュータ技術関連のことを投稿。 / 投稿は個人の意見であり所属団体の立場を代表するものではありません。

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/
これの通りにしました。おしまい。