時間を手動で同期すると、ntpdが「サーバーが見つかりません」というメッセージが表示されるのはなぜですか?

時間を手動で同期すると、ntpdが「サーバーが見つかりません」というメッセージが表示されるのはなぜですか?

私のサーバーはIDCでホストされていますが、このIDCサーバーはインターネットにアクセスできないため、インターネットNTPサーバーを使用できます。ただし、IDCサービスプロバイダにはアトミッククロックがあるため、アトミッククロックと時刻を同期できます。
原子時計のIPはで192.168.90.118、私のサーバーのIPはです192.168.90.18。私のサーバーのオペレーティングシステムはDebian 8.11ntpをインストールし、sudo apt install ntpntpdのバージョンはです4.2.6p5
サーバー/etc/ntp.confの内容は次のとおりです。

driftfile /var/lib/ntp/ntp.drift
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
server 192.168.90.118 version 3
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1

原子時計と時刻を同期するために、以下のコマンドを実行しようとしましたが、「サーバーが見つかりません」と表示されます。

sudo service ntp stop
sudo ntpd -gq

原子時計のIPアドレスにpingしようとしましたが、接続が可能で待ち時間も短くなりました。私はtcpdimを使って、次のように原子時計とサーバー間のいくつかのパケットをキャプチャしようとしています。

sudo tcpdump -vvv -ni eth0 port 123

16:43:44.802334 IP (tos 0x0, ttl 126, id 12371, offset 0, flags [none], proto UDP (17), lenth 76)  
    192.168.90.118.123 > 192.168.90.18.123: [udp sum ok]NTPv3, lenth 48
        Server, Leap indicator: (0), Stratum 6 (secondary reference), poll 6 (64s), pricision -6
Root Delay: 0.000000, Root disprsion: 10.371246, Reference-ID: 95.31.153.26
            Reference Timestamp: 3843677595.431751999 (2021/10/20 08:13:15)
            Originator Timestamp: 3843708224.802159560 (2021/10/20 16:43:44)
            Receive Timestamp: 3843708322.196751999 (2021/10/20 16:45:22)
            Transmit Timestamp: 3843708322.196751999 (2021/10/20 16:45:22)
                Originator - Receive Timestamp: +97.394592739
                Originator - Transmit Timestamp: +97.394592739
16:43:46.802173 IP (tos 0x0, ttl 64, id 19514, offset 0, flags [DF], proto UDP (17), lenth 76)  
    192.168.90.18.123 > 192.168.90.118.123: [bad udp cksum -> 0x4b29!]NTPv3, lenth 48
        Client, Leap indicator: clocl unsynchornized(192), Stratum 0 (unspecified), poll 6 (64s), pricision -23
Root Delay: 0.000000, Root disprsion: 0.000091, Reference-ID: (unspec)
            Reference Timestamp: 0.000000000
            Originator Timestamp: 3843708322.196751999 (2021/10/20 16:45:22)
            Receive Timestamp: 3843708224.1802334560 (2021/10/20 16:43:44)
            Transmit Timestamp: 3843708226.802159634 (2021/10/20 16:43:46)
                Originator - Receive Timestamp: -97.394417439
                Originator - Transmit Timestamp: -95.394592365

上記のテキストは手動で入力されました。上記の結果を見ると、kernelntpパケットが受信され、サーバーとクライアント間のプロトコルが一致しているように見えます。しかし、私のサーバーのntpdはパケットを受信または認識しません。どうすれば解決できますか?

次のようにコマンドを実行しましたntpq -np

ntpq: read: Connection refused

答え1

サービスプロバイダに問い合わせた結果、NTPサーバーはWindowsベースで、プロトコルはSNTPです。 Debian 8.11 のネイティブ NTP ソフトウェアでは、SNTP パケットを受け入れることができません。したがって、ntpバージョンをアップグレードする必要があります。

答え2

質問に記載されていませんが(コメントに記載されている代わりに)、システムはインターネットにアクセスできず、データセンターサービスにのみアクセスでき、ntpは含まれておらずsntpのみが可能であると述べました。

実際のNTPサーバーが利用できず、GPS同期の代替手段が得られない場合、唯一のオプションはシステムでntpdを無効にし、sntpクライアント(おそらくcronで)を使用することです。

関連情報