我正在对 Windows PC 上的 SMB 共享进行故障排除,导致 Android TV 设备(Nvidia Shield TV)无法访问它,这时我发现这可能不是 SMB/共享问题,因为 PC 甚至无法 ping 通 Nvidia 设备。
网络上的所有设备都有静态 IP 地址:
- 路由器是192.168.1.1
- PC 为 192.168.1.2(硬连线)
- Nvidia 是 192.168.1.3(硬连线)
PC 无法 ping 通 Nvidia,Nvidia 也无法访问 PC 上的 SMB 共享,但两台设备都可以访问互联网和两者都可以通过同一 LAN 上的第三个设备(Android 手机)进行 ping 操作。
当 PC 对 Nvidia 进行 ping 操作时,它会得到以下输出:
Pinging 192.168.1.3 with 32 bytes of data:
Reply from 192.168.1.2: Destination host unreachable.
Reply from 192.168.1.2: Destination host unreachable.
Reply from 192.168.1.2: Destination host unreachable.
Reply from 192.168.1.2: Destination host unreachable.
Ping statistics for 192.168.1.3:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
为了进行故障排除,我尝试关闭 Windows 防火墙,并尝试从 Nvidia 设备中删除静态 IP。我还尝试为路由器和 LAN 设备使用不同的 IP。
今天更换路由器后,这一切都开始发生了。
为什么同一 LAN 上的两台设备无法互相 ping 通,但第三台设备却可以 ping 通(并且互联网可以正常访问,这意味着它们的 IP 有效)?您将如何进一步排除故障?
编辑:为了进一步排除故障,我禁用了路由器中的 SPI 防火墙以及以下功能:
- APR 欺骗保护
- 阻止匿名 WAN 请求 (ping)
- 过滤多播
- 过滤器 IDENT(端口 113)
问题仍然存在。
答案1
这是一个棘手的问题。
意识到有不止 1 个 ping 协议,有些 ping 协议可能被阻止,但其他协议不会。我首先会在 PC 和 smb 系统之间放置一个交换机/集线器,假设网络掩码正确(我认为这很可能),它将排除路由器 [或确认问题存在],因为除非设备连接到其 lan 端口,否则 lan 流量不会通过它。
我还将在 smb 盒上使用 tcpdump,查看它是否接收 ICMP 数据包,并检查其上的防火墙。
我可能还会尝试其他 ping 工具(例如尝试基于 UDP 和 ICMP 的 ping)
我要做的另一件事是执行一些 ping 命令,然后检查每个设备上的 ARP 表以查看其他设备的 Mac 地址是否存在。