Por que o ntpd solicita 'nenhum servidor encontrado' quando sincronizo a hora manualmente?

Por que o ntpd solicita 'nenhum servidor encontrado' quando sincronizo a hora manualmente?

Meu servidor está hospedado no IDC, pois neste servidor IDC não consigo acessar a Internet, então posso usar o servidor NTP da Internet. Mas o provedor de serviços IDC tem um relógio atômico, então posso sincronizar a hora com o relógio atômico.
O IP do relógio atômico é 192.168.90.118e o IP do meu servidor é 192.168.90.18. O sistema operacional do meu servidor é Debian 8.11e eu instalo o ntp by sudo apt install ntp, a versão do ntpd é 4.2.6p5. Conteúdo
do servidor /etc/ntp.confcomo abaixo:

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

E tentei executar o comando abaixo para sincronizar a hora com o relógio atômico, mostra 'nenhum servidor encontrado'

sudo service ntp stop
sudo ntpd -gq

Tentei fazer ping no endereço IP do relógio atômico, ele é acessível e tem baixa latência. Tentei capturar alguns pacotes entre o relógio atômico e meu servidor com tcpdim, mostra abaixo:

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

O texto acima é inserido manualmente. Com base no resultado acima, parece que kernelos pacotes NTP recebidos e o protocolo entre o servidor e o cliente são correspondentes. Mas o ntpd do meu servidor não recebeu ou não reconheceu os pacotes. Como posso consertar isso?

Executei o comando ntpq -np, mostra abaixo:

ntpq: read: Connection refused

Responder1

Após perguntar ao meu provedor de serviços, o servidor NTP é baseado em Windows, cujo protocolo é SNTP. No software NTP padrão do Debian 8.11, ele não pode aceitar pacotes SNTP. Então eu preciso atualizar a versão NTP.

Responder2

Você não declarou isso na sua pergunta (mas nos comentários), mas diz que seu sistema não pode acessar a Internet e só pode acessar os serviços do seu data center, que não incluem o ntp, mas apenas o sntp.

Se um servidor ntp real não estiver disponível e você não conseguir a alternativa de sincronização GPS, sua única opção é desabilitar o ntpd em seu sistema e usar um cliente sntp, possivelmente no cron.

informação relacionada