问题:
- Windows 2008 R2 或 Windows 2012 服务器在重新启动后无法访问网络
- 并非所有虚拟机都受到影响,但多台虚拟机和多台主机都会受到影响。
- Windows 网络配置显示正确的信息
- Ipconfig 显示 169.254.xx IP 地址
- 禁用并重新启用客户 NIC 可修复此问题。此外,VM 断开/连接也可修复此问题。
我尝试过的事情:
- 将 vNIC 从 E1000 和 E1000e 切换到 VMXNET3(根据 VMware 支持)。这似乎在一段时间内有效,但问题仍然存在。
- 更新了 VMware 工具(一开始似乎有帮助)
- 更新虚拟机管理程序(起初似乎有帮助)
- 今天我开了一张新的 VMware 支持单
serverFault 上的一个类似问题提出了一种解决方案,即在设备管理器中关闭电源管理。我会看看这是否有用,但我怀疑这是否有用。我不认为操作系统在启动过程中试图节省电量。
答案1
我目前无法确认,但我相信我找到了解决方案。我之所以这么说,是因为症状与我所见的情况非常非常接近。
VMware KB:在环境中使用 Cisco 设备时,在 ESX/ESXi 上的 Microsoft Windows Vista 及更高版本的虚拟机上检测到错误的重复 IP 地址 http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1028373
重复 IP 地址 0.0.0.0 错误消息故障排除 - Cisco http://www.cisco.com/c/en/us/support/docs/ios-nx-os-software/8021x/116529-problemsolution-product-00.html
笔记:我正在尝试使用以下 Cisco 命令组合
ip device tracking probe delay 20 ip device tracking probe interval 45
这两个命令中的一个可能会导致我的网络瘫痪一两分钟。:-/
您可能希望在维护期间执行此操作!!!
答案2
尝试将其移至另一个集群上的另一个 VLAN,看看问题是否仍然存在。我发现 VLAN ID 可能会导致此问题,尤其是在 VDS 配置中。
看这里:
尝试更改端口 ID。
答案3
这种情况在我们的一些 Windows VM(2008 R2 和 2012)上经常发生。但是,问题只会在多次重启后才会显现出来 - 实际次数似乎相当不确定(介于 2 和 20 之间)。
按照建议将 ArpRetryCount 设置为 0 后知识库文章 1028373问题不再出现。
要解决此问题,请关闭客户机操作系统中的免费 ARP。要关闭客户机操作系统中的免费 ARP,请执行以下操作:
关闭客户操作系统并关闭虚拟机。
将虚拟机更改为没有上行链路的网络 vSwitch。您可以为此过程创建一个。
启动虚拟机并登录。
- 打开注册表编辑器。
- 在 Windows XP 至 Windows Server 2003 中 - 单击开始 > 运行,键入 regedit,然后单击确定。
- 在 Windows 7 和当前版本中 - 单击“开始”,键入 regedit,然后单击“确定”。
- 找到此注册表项:
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\参数
- 单击编辑 > 新建,然后单击 DWORD 值。
- 键入 ArpRetryCount。
- 右键单击 ArpRetryCount 注册表项,然后单击“修改”。
- 在值框中,键入 0,然后单击确定。
- 退出注册表编辑器。
- 关闭客户操作系统并关闭虚拟机。
- 将虚拟机改回具有上行链路的网络 vSwitch。
- 启动虚拟机。
这现在已成为我们所有 Windows 服务器虚拟机的标准程序。