我运行一个小型 ESXi Homelab,我的所有虚拟机都在 10.0.0.x 子网上运行,并且它桥接到我的本地 PC 连接的交换机 - 因此我可以访问 10.0.0.x 子网上的所有内容。
我的所有虚拟机都可以毫无问题地连接到互联网。我的其中一台虚拟机正在运行 Hyper-V Server 2016(独立版,不是 Windows 角色),并且与所有其他虚拟机一样连接到网络,并且可以访问互联网。
但是,尽管在各自的网络配置中静态分配了 IP,但 Hyper-V VM 均无法访问外部网络。所有 VM 都直接连接到外部 Hyper-V 交换机,该交换机连接到 Hyper-V 服务器 NIC,该 NIC 连接到 10.0.0.x LAN。
VM 可以访问 10.0.0.2(Hyper-V 服务器 IP),但除此之外什么都无法访问。我尝试 ping 的机器上的防火墙已禁用(可从其他 ESXi VM 工作),但仍然不起作用。
偶尔,在 ping 时我会在 CMD 中收到“目标主机不可达”错误。
答案1
您需要启用 MAC 地址欺骗,以便嵌套的 Hyper-V VM 可以在外部物理网络上进行通信。
https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/nested-virtualization