奇葩问题:分时单向 ping 没问题,同时互 ping 后,某单向 ping 不通

2021-04-16 12:09:31 +08:00
 gBurnX
PC1:Windows 7 x64 sp1 旗舰,双网卡,一张外网,一张内网。外网网卡设置了共享给内网网卡。

PC2:Windows 10 x64 企业版,单网卡。

两台电脑处于同一个局域网,都已经关闭防火墙,并且以下步骤在更换网卡与路由器的情况下,测试结果相同。


步骤 1:
Windows 10 ping Windows 7,能 ping 通,然后停止 ping 。

Windows 7 ping Windows 10,能 ping 通,然后停止 ping 。

Windows 10 做 TCP Server,Windows7 的 TCP Client 能连接上 Windows 10 的 TCP Server 并且能通信。双方互换后仍然能通信。


步骤 2:
Windows 10 ping Windows 7,加参数 -t 一直 ping,能 ping 通,不停止 ping 。

Windows 7 ping Windows 10,加参数 -t 一直 ping,能 ping 通,不停止 ping 。此时,3 秒后,Windows 10 电脑上,ping Windows 7,开始连续显示超时。

Windows 10 做 TCP Server,Windows7 的 TCP Client 仍然能连接上 Windows 10 的 TCP Server 并且能通信。双方互换后仍然能通信。

双方打开 Wireshark 抓包,发现问题,在 Windows7 上,Windows7 向 Windows10 回复的 ICMP reply 包,ICMP 的标识符 Identifier,大小端 BE 与 LE 居然互换了。正常能 ping 通的情况下,ICMP request 与 reply,ICMP 的标识符 Identifier,大小端都不会互换。


后续:
在 Windows7 上,把两张网卡,停止共享,问题解决。恢复共享,问题又再次出现。

个人觉得,这种场景,是非常罕见的,难怪我搜遍百度与谷歌都没找到相同案例,当然也有可能是我搜索关键字不对。
1662 次点击
所在节点    分享发现
5 条回复
om2mo
2021-04-16 12:34:31 +08:00
路由问题,做桥接
gBurnX
2021-04-16 13:05:22 +08:00
@om2mo 你好,我不觉得是路由问题,因为 Win7 能收到 Win10 的 ICMP request,Win10 能收到 Win7 的 ICMP reply 。
om2mo
2021-04-16 13:17:39 +08:00
双网卡就是会引起路由问题无法 ping 通,解决方法是把承载 pppoe 的网卡,也就是连接路由器或者 dsl 猫的网卡,取消 ip 分配。它不需要 ip 地址。

另外的网卡,也就是你连接另一台主机的网卡,设置和主机同网段即可。

取消 ip 分配可能它会从路由器自动获取,如果没有 dhcp 就不用管它,有点话就手动设成 169.254.1.1 。
om2mo
2021-04-16 13:26:08 +08:00
你对问题理解还不清楚,甚至网络拓扑和 ip 地址分配都不说明,我只能猜测你的环境是没有路由器,靠 dsl 猫拨号,主机双网卡共享给另一台主机上网。

既然你说有路由器,那为什么主机不直接连接到路由器上?

所以问题要介绍清楚。自行车链条掉了,你把车轱辘拆光了也没用。
gBurnX
2021-04-16 13:42:05 +08:00
@om2mo

谢谢指点。问题的确没说清楚,补充一下:

1.路由器开启 DHCP 。

2.Win10 的唯一网卡,连接路由器,网卡 IP 与 DNS 都是自动获取。

3.Win7 外网网卡,连接路由器。网卡 IP 与 DNS 都是自动获取。

4.Win7 内网网卡,没有插网线。

不过我在上面说了,这不是 Windows 7 的双网卡问题,而是 Windows 7 的双网卡开启共享后才出现的问题,关掉共享就没问题了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/771065

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX