ping 如何知道我的主机是否宕机

ping 如何知道我的主机是否宕机

当我ping使用服务器时,我可能会得到两种结果:

  • 暂停
  • 主机关闭消息

该命令如何ping知道主机是否已关闭?在这两种情况下,主机都不会对 ping 数据包发送任何响应,那么如何ping区分呢?

答案1

主机关闭消息:

这表明您不知道到达目的地的路由,或者远程路由器报告它没有到达目的地的路由。

暂停:

表示没有收到 Echo Reply 消息。在默认时间内没有收到任何包。

答案2

响应之间的差异实际上不是由 ICMP 本身决定的,而是间接决定的。

ICMP 可以区分以下内容:

  0 = net unreachable;

  1 = host unreachable;

  2 = protocol unreachable;

  3 = port unreachable;

  4 = fragmentation needed and DF set;

  5 = source route failed.

但它对其他网络资源也一样。代码 0、1、4 和 5 可能来自网关。代码 2 和 3 可能来自主机。

如果根据网关路由表中的信息,目标网络不可达(例如,到网络的距离无穷大),网关可能会向数据报的互联网源主机发送目标不可达消息。此外,在某些网络中,网关可能能够确定互联网目标主机是否不可达。当目标主机不可达时,这些网络中的网关可以向源主机发送目标不可达消息,因此实际上不是 ICMP 在进行确定。

如果在目标主机中,IP 模块由于指示的协议模块或进程端口不活动而无法传送数据报,则目标主机可能会向源主机发送“目标不可达”消息。

最后,如果数据报必须分段才能由网关转发,但“不分段”标志处于打开状态,则网关将丢弃该数据报并返回“目的地不可达”消息。

现在来看一下这两种情况的区别:请求超时意味着在规定的时间内没有收到任何 Echo Reply 消息。这可能由多种不同的原因造成:ARP 请求失败、网络拥塞、数据包过滤、路由错误,甚至是静默丢弃。

当您收到来自 [IP 地址] 的回复:“目标主机无法访问”,则问题发生在远程路由器上或之后,其地址由 [IP 地址] 指示。因此,这是路由器告诉您它与目标地址之间存在问题。

答案3

如果计算机未连接到互联网,您就无法 ping 通,因为通过 ping 通您实际上是请求主机的 IP。

相关内容