我有一个 Server 2008 R2 x64 安装(我们称之为 MARS),它无法与我的一个 Server 2008 R2 x64 Hyper-V 主机(我们称之为 VENUS)或其任何客户机进行通信。
- 它们都位于同一个 VLAN 上并插入同一个交换机。
- 网络上的所有其他节点都可以连接到 MARS 和 VENUS(+ 客户机),包括其他 Server 2008 R2 x64 服务器和 Hyper-V 主机。
- 两台服务器上所有网络配置文件的防火墙均被禁用。
- 我已经重建了 MARS,但问题仍然存在。
- VENUS 是我们唯一运行完整安装的 Server 2008 R2 Datacenter 版的 Hyper-V 主机。其他主机运行安装了 Hyper-V 角色的 2008 R2 Server Core。
- VENUS 有 4 个组合的 HP NC382i NIC。
我们计划将所有客户机从 VENUS 迁移并在 Server Core 上重建。这可能会解决问题,但我很好奇是否有人以前遇到过类似的情况。
答案1
由于两个 NIC 都位于同一个交换机和 VLAN 上,因此开始查看第 2 层。从任一方向进行简单的“ping”后,ARP 表上会出现什么情况?相应的 MAC 是否显示在另一端的 ARP 表中?如果 ARP 条目正确,则通过检查 IP 级别过滤器作为 OSI 模型的下一个停止/步骤(根据需要前往事件日志)来向上移动到第 3 层。
答案2
事实证明,即使 Windows 防火墙默认阻止 ping,发出 ping 的机器仍会出现在接收机器的 ARP 表中。
由于网络完全是内部的,我的解决方法是关闭私有网络上的 Windows 防火墙,然后确保相关的 NIC 指向该外部网络。
(之前在虚拟网络(虚拟交换机)上发表过 Hyper-V 中的 IPv6 问题)
答案3
我在组合 NIC 中看到过这个问题 - 一个有问题的交换机端口,团队无法将其识别为故障,但配置错误或轻微损坏,可能只会影响特定主机对的流量,而不是所有主机对。这可能会非常令人困惑。
例如:
服务器 X 可以愉快地与服务器 A 通信,
服务器 X 可以愉快地与服务器 B 通信,
但是服务器 A 和服务器 B 无法相互通信。
我在 Hyper-V 中没有见过这种情况,但在 VMware ESX 中见过不止一次这种情况 - 尽管在那种情况下,问题并不像您这种情况那样在主机上的所有 VM 中都存在。