我注意到通过主机名 ping 比使用 IP 地址慢。例如,在 Linux 命令行中:
$ time ping google.com -c 1
PING google.com (150.101.213.160) 56(84) bytes of data.
64 bytes from 150.101.213.160: icmp_seq=1 ttl=61 time=14.4 ms
--- google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 14.425/14.425/14.425/0.000 ms
real 0m5.251s
user 0m0.003s
sys 0m0.005s
$ time ping 150.101.213.160 -c 1
PING 150.101.213.160 (150.101.213.160) 56(84) bytes of data.
64 bytes from 150.101.213.160: icmp_seq=1 ttl=61 time=14.5 ms
--- 150.101.213.160 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 14.537/14.537/14.537/0.000 ms
real 0m0.019s
user 0m0.001s
sys 0m0.004s
Run Code Online (Sandbox Code Playgroud)
我一开始以为是DNS服务器需要一段时间来解析,但是当我按主机名ping时,几乎立即出现第一行,表明IP地址已经确定。五秒钟的暂停是在此 DNS 解析之后,就在收到(第一个)ping 之前。
use*_*686 15
延迟是由于ping
尝试通过查找(反向 DNS)将 IP 地址解析回名称1引起的。160.213.101.150.in-addr.arpa
通常,回复(无论是成功还是 nxdomain)应该是即时的,但也可能是您的 ISP 没有缓存它,并且当时权威服务器213.101.150.in-addr.arpa
出现了问题。
它也可能是由错误配置或某些 DNS 服务器中的错误引起的。如果您每次都看到这种延迟发生,则可能是您的 DNS 解析器没有正确缓存回复(即使否定回复也是可缓存的)。
使用ping
from iputils 时,添加-n
选项以避免反向 DNS 查找。
1是域名或主机名,不是网址;它没有指定任何特定的协议或资源。http://google.com
将是一个网址。http://150.101.213.160
也将是一个 URL。
归档时间: |
|
查看次数: |
7300 次 |
最近记录: |