使用跟踪路由来检查 NTP – 可以吗?

使用跟踪路由来检查 NTP – 可以吗?

过去我主要使用 tcptraceroute 来检查 http 和 ssh。

现在我需要检查我的主机是否可以访问 NTP 服务器。

这可能吗?

我有两台机器。

在应用程序级别我看到:机器 qual 无法访问 ntp 服务器,而机器 prod 可以访问 ntp 服务器。

如果我运行此命令,两者的输出是相同的:

产品:

prod:(/root/home/root)(root)#traceroute -U -p ntp 30.252.33.1
traceroute to 30.252.33.1 (30.252.33.1), 30 hops max, 60 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  * * *

品质:

qual:~ # traceroute -U -p ntp 30.252.33.1
traceroute to 30.252.33.1 (30.252.33.1), 30 hops max, 60 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  * * *

我猜测 NTP 服务器只是从 traceroute 中删除了 UDP 包,并且 traceroute 没有收到答复。

(对于基于 TCP 的服务,这可以正常工作,因为有一些“连接建立”答复)。

是否可以使用 traceroute 之类的网络工具在网络级别检查 ntp?

如果没有,如何检查一台机器是否可以访问 ntp 服务器?

答案1

“检查 ntp” 应该使用 NTP 感知实用程序进行。ntpd 和 chrony 都会将最后几个数据包的成功报告为“到达”寄存器。


“远程主机上的端口是否打开”可以使用端口扫描器来回答。

$ sudo nmap -6 -sU -p 123 2.pool.ntp.org

Starting Nmap 6.40 ( http://nmap.org ) at 2019-05-03 16:55 UTC
Nmap scan report for 2.pool.ntp.org (2600:3c01::f03c:91ff:fec8:5c8)
Host is up (0.067s latency).
Other addresses for 2.pool.ntp.org (not scanned): 2607:f3c8:3803:1::6 2001:19f0:8001:1de:5400:ff:fe60:f647 2001:4998:c:1028::1001
rDNS record for 2600:3c01::f03c:91ff:fec8:5c8: chl.la
PORT    STATE SERVICE
123/udp open  ntp

Nmap done: 1 IP address (1 host up) scanned in 0.38 seconds

“查找到主机的路径”可以使用 tracepath 或 traceroute 样式的实用程序来回答。这些实用程序要求 ICMP 响应准确,但在各种网络上可能会被过度过滤。

$ tracepath6 -b  2.pool.ntp.org
 1?: [LOCALHOST]                        0.007ms pmtu 1500
 1:  2600:3c03::8678:acff:fe0d:97c1 (2600:3c03::8678:acff:fe0d:97c1)   1.537ms
 1:  2600:3c03::8678:acff:fe0d:97c1 (2600:3c03::8678:acff:fe0d:97c1)   4.161ms
 2:  2600:3c03:6666:12::1 (2600:3c03:6666:12::1)           3.062ms
 3:  2600:3c03:6666:5::2 (2600:3c03:6666:5::2)             1.075ms asymm  2
 4:  2001:678:34c:56::2 (2001:678:34c:56::2)              26.746ms asymm  3
 5:  2001:678:34c:6a::1 (2001:678:34c:6a::1)              35.811ms asymm  4
 6:  2001:678:34c:52::2 (2001:678:34c:52::2)              67.198ms asymm  3
 7:  2600:3c01:3333:3::2 (2600:3c01:3333:3::2)            67.826ms asymm  5
 8:  chl.la (2600:3c01::f03c:91ff:fec8:5c8)               67.376ms reached
     Resume: pmtu 1500 hops 8 back 5

沿着路径来回查找,直到找到数据包发生了什么。例如,检查主机上的 NTP 服务器的配置文件,并检查路径上的所有防火墙。

相关内容