我在这里有一些关于 ping 的基本网络问题。
在对完全不同的子网上的特定主机执行 ping 操作时,我得到如下响应:
PING myhost.example.com (1.2.3.4) 56(84) bytes of data.
64 bytes from 1.2.3.4: icmp_req=1 ttl=115 time=1.88 ms
64 bytes from 1.2.3.4: icmp_req=2 ttl=115 time=1.66 ms
64 bytes from 1.2.3.4: icmp_req=3 ttl=115 time=1.96 ms
64 bytes from 1.2.3.4: icmp_req=4 ttl=115 time=1.95 ms
--- myhost.example.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 48191ms
rtt min/avg/max/mdev = 1.669/1.868/1.969/0.127 ms
Run Code Online (Sandbox Code Playgroud)
这最初看起来很正常,但随后您会看到获得这 4 个响应的总时间为 48 秒。当 ping 运行时,在打印每行之前有大约 10 秒的明显间隙。但是,rtt 几乎是我所期望的。
这引起了一些问题,因为我正在尝试使用 nagios 监视此主机,并且主机检查当前收到“网络无法访问”错误。网络是可达的,rtt 是正常的,但我不禁想知道这个缓慢的总时间是否与它有关。
主机在 14 跳之外,traceroute 看起来像这样(中间步骤我已经匿名了,它们都是不同的 IP!):
traceroute to myhost (1.2.3.4), 30 hops max, 60 byte packets
1 10.A.B.C (10.A.B.C) 0.680 ms 0.729 ms 0.833 ms
2 10.A.B.C (10.A.B.C) 0.636 ms 0.678 ms 0.759 ms
3 10.A.B.C (10.A.B.C) 0.803 ms 0.867 ms 0.923 ms
4 10.A.B.C (10.A.B.C) 0.702 ms 0.738 ms 0.782 ms
5 10.A.B.C (10.A.B.C) 1.027 ms 1.251 ms 1.342 ms
6 10.A.B.C (10.A.B.C) 2.688 ms 1.436 ms 1.484 ms
7 10.A.B.C (10.A.B.C) 2.960 ms 3.475 ms 3.527 ms
8 10.A.B.C (10.A.B.C) 1.284 ms 1.310 ms 1.393 ms
9 10.A.B.C (10.A.B.C) 1.990 ms 1.865 ms 1.964 ms
10 10.A.B.C (10.A.B.C) 1.750 ms 1.841 ms 1.748 ms
11 10.A.B.C (10.A.B.C) 1.849 ms 1.614 ms 1.628 ms
12 10.A.B.C (10.A.B.C) 1.997 ms 2.150 ms 2.119 ms
13 10.A.B.C (10.A.B.C) 2.442 ms 2.454 ms 2.560 ms
14 1.2.3.4 (1.2.3.4) 1.978 ms * *
Run Code Online (Sandbox Code Playgroud)
什么会导致这种情况?
这是一个有点疯狂的猜测......
您正在按 DNS 名称 ping。
myhost.example.com 的 DNS 查找需要那么长时间才能解决吗?
如果通过 ip-address ping 会发生什么?