スポンサーリンク

ntpdで時刻同期ができない問題

ある日、何気にサーバーの時間を確認したら、2時間ぐらいずれてた!!

あれ、ntpdは起動しているはず何だけど…

環境はCentOS6
IPV4環境・・・のつもりだったけどIPV6も生きてたみたい。

というわけで、いろいろ確認してみた・・・

まずはNTPのチェックから

#ntpq -p
Name or service not known

うーん。ダメっぽい。
デーモン自体はちゃんと起動しているのに同期できないというのは、たちが悪い。

しらべたら /etc/hosts ファイルに
127.0.0.1 localhost
の記載がないのが原因とわかった。確かに書いてなかった。
追記してもう一度やってみたところ

#ntpq -p
localhost: timed out, nothing received
***Request timed out

なんかエラーが変わった。タイムアウト??

調べてみたら、IPV6関連でいろいろエラーになるらしい
ifconfigでNICに割り当てられているIPV6のIPがあるので、たぶんIPV6は有効なはず?

/etc/ntp.conf でIPV6用の設定
restrict -6 default ignore
restrict -6 ::1

も書いてあった。問題ないはず。
で、さらに調べていくと、hostsファイルでlocalhostの名前解決してないとエラーになるらしい記載を発見。
見てみたら。
/etc/hosts

#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

おおおう!!コメントアウトされてる!?WHY!?
というわけで、このコメントアウトを外して

#/etc/rc.d/init.d/ntpd restart
#ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
ntp1.sakura.ad. 10.84.87.146 2 u 1 64 1 0.917 15.432 0.000
[root@codelab conf]# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
ntp1.sakura.ad. 10.84.87.146 2 u 3 64 1 0.917 15.432 0.000

ふむ。成功のようだ!
何でこうなっていたかいまいちよくわからないが、以前IPV6は無効化した記憶があるようなないような。
その時にhostsファイルをいじったのかもしれません。その後、覚えはないけどIPV6が有効になった?うーん。何したんだ俺。

古いサーバーでいろいろいじっていると、過去に何をやったかよくわからなくなるんですよね。
デフォルト設定で使うならいいけど、カスタムでいろいろ入れたり設定を変えたりする場合は、設定変更をログとして記録に残しておいた方がいいのかもしれません。

Linux OS
スポンサーリンク
CodeLabをフォローする
スポンサーリンク
CodeLab技術ブログ