如何在ping网站时确定数据包丢失



在对网站进行ping和/或跟踪时,如何确定网站是否真的有数据包丢失或防火墙?

如果没有数据包到达目的地,则有几种可能的情况:

  • 未分配给任何内容的IP地址。根据最后一个可访问路由器的配置,您可能会收到一条"目的地/主机/网络不可访问"错误消息
  • 分配给机器的IP地址,但ping被防火墙阻止。根据配置的不同,一些防火墙可能会静默地丢弃数据包,其他防火墙则会返回"管理禁止"的错误消息
  • 分配给机器的IP地址,ping不会被阻止,但机器已关闭。根据最后一个可访问路由器的配置,您可能会收到一条"destination/host/net reachable"错误消息

如果一些数据包通过:防火墙通常要么允许你的所有流量,要么阻止它;它不应该只让一些数据包通过,除非它限制了探测的数量。因此,如果你看到间歇性丢失,它可能不是防火墙,尽管你不能100%肯定地排除它。

如果一些数据包通过了,而另一些数据包却收到了"无法访问"的消息,那么要么是防火墙限制了每秒一定数量的ping数据包,要么是路由问题(负载平衡,一条路径失败;或者路由摆动)。

如果一些数据包通过了,而另一些数据包却没有得到回复,那么很可能是数据包丢失。可能是链路问题,例如无线链路或拥塞链路;或者可能是路由问题。不太可能的是,它是一个限制ICMP数据包数量的防火墙。

还要记住,ping使用ICMP,而traceroute默认使用UDP(尽管它也可以通过命令行选项使用ICMP)。两种协议的防火墙规则可能不同。

最新更新