2024年3月10日发(作者:)

Ping无法访问目标主机

当 ping一个网站的时候,经常“请求超时”,而且提示“无法访问目标主机”

(destination-host-unreachable),但是ping 默认网关正确响应。这时候我们需要排查

故障点,可以使用 Tracert 工具检查到目标的路径。

在排除故障期间 Ping 通常返回四条错误消息:

一、TTL 传输中过期

访问目标所需的跃点数超过了发送方主机为转发数据包而设置的 TTL(生存时间)。

Ping 发送的 ICMP 回显消息的默认TTL 值是 128。如果这个值不足以将所需的链接数

传递到目标,您可以通过使用 ping -i 来增大 TTL,最高可增至 255个链接(最大值)。

如果增大 TTL 值未能解决问题,则说明在路由循环(即路由器之间的循环路径)中转发

数据包。使用 Tracert来跟踪路由循环(它在 Tracert 报告中显示为一系列重复的相同 IP

地址)中的一组路由器。接下来,对路由循环中路由器的路由表进行相应的更改。

二、目标主机无法访问

此消息表明存在以下两个问题之一:本地系统没有到所需目标的路由;或者,远程路

由器报告它没有到目标的路由。

通过消息的形式可以区分这两个问题:

1. 如果消息仅仅是“目标主机无法访问”,则没有自本地系统的路由,而且从未传输

要发送的数据包。使用 Route实用程序可以检查本地路由表,以确定到目标的路由是错误

的还是缺少该路由。

2. 如果消息是“应答来自 IP Address:目标主机无法访问”,则路由问题出在远程

路由器(IP Address表明了其地址)上。使用相应的工具来检查被分配了 IP 地址 IP

Address 的路由器的 IP 路由表。

如果您通过使用 IP 地址执行了 ping 操作,请使用主机名重试,以确保您所尝试的

IP 地址是正确的。

三、请求超时

此消息指示在四秒的默认时间内没有收到回显回复消息。许多不同的原因可以引起此

问题;最常见的原因包括网络堵塞、ARP解析下一跃点 MAC地址失败、数据包筛选、路

由错误或无提示放弃。通常,这意味着返回到发送方主机的路由已失败。这可能是因为目

标主机不知道返回到发送方主机的路由,或者,某一个中间路由器不知道返回路由,甚至

还可能是因为目标主机的默认网关不知道返回路由。在检查路由器的路由表之前,检查目

标主机的路由表以确定它是否具有到发送方主机的路由。

如果远程路由表是正确的,而且包含返回到发送方主机的有效路由,请通过使用 arp

-a 命令输出 ARP 缓存的内容来确定ARP 缓存是否缺少正确的地址。此外,请检查子网

掩码以确保没有将远程地址解释为本地地址。

接下来,使用 Tracert 确定到目标的路径。虽然 Tracert不记录回显回复消息在其返

回路径上经由的路径,但是它可能显示数据包使其到达目标。如果是这样,则问题很可能