CentOS 6.4サーバーを使用していますが、iptableルールはありません。次の構成を使用して、サービスとしてNTPデーモンを実行します。
driftfile /var/lib/ntp/drift
server 0.pool.ntp.org
server 1.pool.ntp.org
server 2.pool.ntp.org
server 3.pool.ntp.org
restrict default ignore
restrict 127.0.0.1
ntpq
を実行してピアをクエリすると、次の応答が返されます。
ntpq> peers
localhost.localdomain: timed out, nothing received
Dig
は以下を示します:
localhost.localdomain. 86400 IN A 127.0.0.1
Ntpクエリが機能しないのはなぜですか?
ntpq
が127.0.0.1経由でローカルサーバーにクエリを実行することを期待していましたが、イーサネットネットワークインターフェイス経由でローカルサーバーにクエリを実行していることがわかりました。
ローカルntpクエリがイーサネットを経由する必要がある理由はわかりませんが、設定ファイルに追加しました
restrict <eht0 ip address>
そして今NTPはうまくいきます。
RHEL/CentOS 6および7では、何らかの理由でntpq
が127.0.0.1のIPv4ループバックではなく:: 1のIPv6ループバックをクエリしようとします。これを念頭に置いて、次の行を/etc/ntp.conf
ファイルに追加しました。
restrict ::1
ファイルを保存してから再起動しましたntpd
service ntpd restart
ここでコマンド:
ntpq -p
期待どおりに動作します。 (これは、コマンドラインモードでntpq
を実行してからpeers
コマンドを発行するのと同じです。)
セキュリティ上の問題となる可能性のあるパブリックイーサネットインターフェイスを介してntpd
との通信を有効にする必要がないため、このソリューションを選択します。
2番目の回答を読んだとき、この問題の原因が多分/ etc/hostsにあることに気づきました。次に、/ etc/hostsにlocalhostを追加して再試行します。
127.0.0.1 localhost
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
前:
ems@rack6-storage-2:~$ Sudo service ntp stop ; Sudo ntpdate 0.debian.pool.ntp.org 1.debian.pool.ntp.org 2.debian.pool.ntp.org 3.debian.pool.ntp.org ; Sudo service ntp start ; PATH=/usr/bin:/usr/sbin ntpdc -p
* Stopping NTP server ntpd
...done.
18 Dec 08:18:31 ntpdate[35729]: adjust time server 202.156.0.34 offset -0.000467 sec
* Starting NTP server ntpd
...done.
localhost.sdcorp.global.sandisk.com: timed out, nothing received
***Request timed out
後:
ems@rack6-storage-2:~$ Sudo vim /etc/hosts
ems@rack6-storage-2:~$ Sudo service ntp stop ; Sudo ntpdate 0.debian.pool.ntp.org 1.debian.pool.ntp.org 2.debian.pool.ntp.org 3.debian.pool.ntp.org ; Sudo service ntp start ; PATH=/usr/bin:/usr/sbin ntpdc -p
* Stopping NTP server ntpd
...done.
18 Dec 08:27:09 ntpdate[36056]: adjust time server 202.156.0.34 offset 0.015872 sec
* Starting NTP server ntpd
...done.
remote local st poll reach delay offset disp
=======================================================================
=golem.canonical 10.242.43.103 16 64 0 0.00000 0.000000 4.00000
=frontier.innola 10.242.43.103 16 64 0 0.00000 0.000000 4.00000
=sg01.7asecond.c 10.242.43.103 16 64 0 0.00000 0.000000 4.00000
=time2.maxonline 10.242.43.103 16 64 0 0.00000 0.000000 4.00000
=pontoon.latt.ne 10.242.43.103 16 64 0 0.00000 0.000000 4.00000
IPv6を使用しない場合は無効にして、インターフェース構成ファイルに以下を追加します。
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
....
IPV6INIT="no"
....
次に、ネットワークとntpdサービスを再起動して適用します。これは私に役立ちました。