无法从同一LAN上的Linux计算机ping Windows 7计算机

时间:2014-08-12 22:29:02

标签: linux networking windows-7 ping

  • 所有防火墙都已关闭。
  • 我在同一个172.x.x.x LAN上有3台Fedora 20计算机和1台Windows 7计算机。
  • 它们都有静态IP地址和相同的子网。 (255.255.255.0)
  • Fedora机器可以互相ping通。
  • Windows 7计算机可以ping所有3台Fedora计算机。
  • 然而,Fedora机器无法ping Windows 7机器。我得到了回复:目标主机无法访问。
  • 我在Windows机器上运行Wireshark。从Windows到Fedora的ping操作时会显示ICMP消息,但不是相反。
  • 为了使问题更加复杂,所有计算机还有第二个网络适配器连接到第二个10.x.x.x网络。在这个网络上,所有机器都可以相互ping通,Windows可以通过Fedora和Fedora连接到Windows。它只是172.x网络,Fedora机器无法ping通Windows机器。

我知道    那里有很多关于“无法ping”问题的帖子,    但是我找不到任何有用的东西    具体情况。或者当我这样做时,结果证明它是防火墙    问题,并且这些计算机上没有运行防火墙。

有什么想法吗?

谢谢。

2 个答案:

答案 0 :(得分:2)

在Windows计算机上,确保已打开网络发现协议。您可以通过点击" Network"来重复检查。在资源管理器中,资源管理器窗口顶部可能会出现一个提示,要求您将其打开。它可能在10.x.x.x网络上工作的原因是它可能将网络识别为家庭或工作网络,但将172.x.x.x网络识别为公共网络。每种类型的网络都有不同的设置。

答案 1 :(得分:1)

在172.x.x.x网络上从Fedora ping到Windows时,ping数据包的源IP可能会设置为10.x.x.x网络上的IP地址。这可能导致数据包立即被Windows丢弃,因为数据包到达172.x.x.x接口,其源IP属于另一个接口上的子网。这可以通过Fedora上的tcpdump / wireshark轻松确认。

========编辑========

因此我们确认当Fedora(172.124.16.128)ping Windows(172.124.16.39)时,目标MAC地址设置为00:00:00:00:00:00,这是不正确的。目标MAC应该是Windows上配置了IP地址为172.124.16.39的网络接口的MAC地址。

将IP解析为MAC地址的过程由ARP(地址解析协议)完成,并且应该在后台自动发生。要调试为什么MAC地址没有得到正确解析,请清除Fedora上的所有ARP缓存(Google如何清除Linux上的ARP缓存),开始捕获数据包,然后查看ARP数据包会发生什么。如果您无法理解数据包,可以在这里发布,我会看看。