¿Por qué ntpd indica "no se encontró ningún servidor" cuando sincronizo la hora manualmente?

¿Por qué ntpd indica "no se encontró ningún servidor" cuando sincronizo la hora manualmente?

Mi servidor está alojado en IDC, debido a que este servidor IDC no puede acceder a Internet, puedo usar el servidor NTP de Internet. Pero el proveedor de servicios IDC tiene un reloj atómico, por lo que puedo sincronizar la hora con el reloj atómico.
La IP del reloj atómico es 192.168.90.118y la IP de mi servidor es 192.168.90.18. El sistema operativo de mi servidor es Debian 8.11e instalo ntp por sudo apt install ntp, la versión de ntpd es 4.2.6p5. El contenido
del servidor /etc/ntp.confes el siguiente:

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 intenté ejecutar el siguiente comando para sincronizar la hora con el reloj atómico, muestra "no se encontró ningún servidor".

sudo service ntp stop
sudo ntpd -gq

Intenté hacer ping a la dirección IP del reloj atómico, es accesible y tiene baja latencia. Intenté capturar algunos paquetes entre el reloj atómico y mi servidor con tcpdim, se muestra a continuación:

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

El texto anterior se ingresa manualmente. Según el resultado anterior, parece que kernellos paquetes ntp recibidos y el protocolo entre el servidor y el cliente coinciden. Pero el ntpd de mi servidor no recibió o no reconoció los paquetes. ¿Cómo puedo arreglarlo?

Ejecuté el comando ntpq -np, se muestra a continuación:

ntpq: read: Connection refused

Respuesta1

Después de preguntarle a mi proveedor de servicios, el servidor NTP se basa en Windows, cuyo protocolo es SNTP. En el software NTP predeterminado de Debian 8.11, no puede aceptar paquetes SNTP. Entonces necesito actualizar la versión ntp.

Respuesta2

No lo indicó en su pregunta (sino en los comentarios), pero dice que su sistema no puede acceder a Internet y solo puede acceder a los servicios en su centro de datos, que no incluyen ntp sino solo sntp.

Si no hay un servidor ntp real disponible y no puede obtener la alternativa de sincronización GPS, entonces su única opción es deshabilitar ntpd en su sistema y usar un cliente sntp, posiblemente en cron.

información relacionada