昨天ping,远程 都没有问题。今天就出问题了!
我的ip地址,网关。
简单的一张图片背后隐藏很多信息,一起来挖掘一下吧。
这是Windows中文化的显示,英文原文是:
ICMP Echo Reply from 192.168.4.254:DestinationHost Unreachable
通过这一行信息,可以推理:
你的网关(gateway) = 192.168.4.254,他拥有到达你Ping的IP地址=192.168.3.9的路由,为什么这么说呢?
如果网关没有192.168.3.9的路由,他会这么回复:
ICMP Echo Reply from 192.168.4.254:Destination Network Unreachable
所以,网关拥有到达192.168.3.9的路由。
接下来需要判断,网关和你要Ping的主机(192.168.3.9)是直连的,还是非直连的?
假如是非直连的,你的网关查路由表,得到下一跳(Next-Hop)。然后用ARP广播请求Next-Hop的MAC地址。
如果获取Next-Hop的MAC地址,你的网关就将Ping包Forward出去了,接下来发生什么,和他没有一毛关系。这显然与事实不符,否决。
如果没有获取到Next-Hop的MAC地址,说明网关无法到达你要Ping的主机(192.168.3.9)所在的整个网段,而不仅仅是一台主机。他应该回复的是:
ICMP Echo Reply from 192.168.4.254:Destination Network Unreachable
很显然,这也与事实不符,否决。
剩下的唯一可能,就是你的网关与你要Ping的主机(192.168.3.9)是直连(Directly Connected)的。
所谓直连,不是网线的一端连着网关,另一端连接你要Ping的主机(192.168.3.9)。“直连”真实意思是,网关有一个接口处在192.168.3.x 这个网段里,你要Ping的主机192.168.3.9也在这个网段里,两者恰好在同一个网段,同一个广播域。
至于它们的网络掩码是多少?从这副图片里无法得知,但是很显然网络掩码的长度是相同的。
为了简单起见,假设它们的掩码是255.255.255.0 = /24。假设网关接口的IP =192.168.3.254/24,要Ping的IP地址 = 192.168.3.9/24。
既然网关在广播域(192.168.3.x/24)就可以找到要Ping的主机,直接用ARP广播请求被Ping主机192.168.3.9的MAC地址即可通信了。
网关ARP请求得到回复了吗?
很显然没有。如果yes,Ping包就forward出去了,和他不再有一毛关系,更不会给你发图片里的ICMP出错信息(Type 3, Code 1)了。 显然和事实不符,否决!
那么就剩下的可能,网关的ARP广播请求,如同肉包子打狗,有去无回。
ARP广播消息,不是只发一次,而是定时器触发发几次, 最后都没有回音。
网关很无奈,唯一能做的就是丢包。在丢包之前提取Ping包的源IP地址,这个源IP地址 == 你的主机IP地址,给你发图片中的出错信息。既然是网关给你发ICMP出错信息,源IP地址肯定是网关的了,就是你看到的192.168.3.254,这点非常关键!!!。
为何192.168.3.254主机不回复ARP消息?
可能1:主机下线了。
可能2:主机被自身防火墙关闭了ARP应答。
可能3:主机192.168.3.9可能和网关(192.168.3.254)被VLAN隔离。
可能4:主机192.168.3.9/25,网关192.168.3.254/24。在主机眼里,网关和自己不在一个网段/广播域,自己的网段ID= 192.168.3.0,网关的网段ID=192.168.3.128,选择不ARP应答网关的ARP请求是合理的。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...