ネットにおける時間同期の負荷分散を目的にして、家庭ネットワーク内にNTPサーバーを構築し、家庭ネットワーク内のPCの時刻同期は、このサーバーで行うようにします(まぁ、たかだか数台のPCで、そんな大上段に振りかぶるような話ではない訳ですが)。
更に、実はインストールの段階で、時刻設定をし、「ntpd」を選択しているので、既にntpサーバーとして機能しているはずです。なので、ここで行うのは、参照するタイムサーバーの設定とアクセス制限です。
まず、コマンドプロンプトで
# ee /etc/ntp.conf[ENTER]
と打ってntp.confを開き、以下の編集を行います。
32行目あたりにある以下の記載の行頭に#を入れてコメントアウトし、
pool 0.freebsd.pool.ntp.org iburst
↓
# pool 0.freebsd.pool.ntp.org iburst
51行目あたりのserverの記載に以下の記載を追記します。
server ntp1.jst.mfeed.ad.jp
server ntp2.jst.mfeed.ad.jp
server ntp3.jst.mfeed.ad.jp
家庭内ネットワークからのアクセスに制限するため、69行目あたりのrestrictの記載に以下の記載を追記します。
restrict 192.168.10.0 mask 255.255.255.0 nopeer nomodify notrap
IPアドレス(192.168.10.0)とサブネットマスク(255.255.255.0)は、環境に合わせてください。
再起動する(service ntpd startの方が普通かも知れませんが)と変更が有効になるはずです。
動作しているかどうかを確認します。コマンドプロンプトで、
# ntpq -p[ENTER]
と、打つと、状況が表示されます。
remote refid st t when poll reach delay offset jitter
===================================================================================
+ntp1.jst.mfeed. 210.173.160.56 2 u 196 1024 377 10.394 0.439 0.130
+ntp2.jst.mfeed. 210.173.176.251 2 u 205 1024 377 10.142 0.587 0.811
*ntp3.jst.mfeed. 210.173.160.56 2 u 122 1024 377 9.719 0.599 2.245
といったような表示がされれば、動作しています。行頭に*や+がない場合は同期中なので、15分ほど待ってから再度ntpq -pを実行してください。全く表示されない場合は、ntpが起動していませんので、以下の点をチェックします。
コマンドプロンプトで
# ee /etc/rc.conf[ENTER]
と打ってrc.confを開き、以下の記載があるか確認します。ない場合は追記します。
ntpd_enable="YES"
サーバーの時刻と実際の時刻が大きくずれている(1000秒以上らしいです)とntpdが動作を停止してしまうので、dateコマンドでサーバーの時計を確認して、大きくずれているようであれば、時間あわせをします。rootでログインしたコマンドプロンプトで以下の入力をします。
# ntpdate ntp1.jst.mfeed.ad.jp[ENTER]
これで、再起動する(service ntpd startの方が普通かも知れませんが)と、ntpが動作するはずです。
なお、このページを書くに当たって、以下の記事を参考にしました。
(2018年 8月 4日 記)