![hyper-v 外部虚拟交换机仅提供与 1 个虚拟机的连接](https://linux22.com/image/709085/hyper-v%20%E5%A4%96%E9%83%A8%E8%99%9A%E6%8B%9F%E4%BA%A4%E6%8D%A2%E6%9C%BA%E4%BB%85%E6%8F%90%E4%BE%9B%E4%B8%8E%201%20%E4%B8%AA%E8%99%9A%E6%8B%9F%E6%9C%BA%E7%9A%84%E8%BF%9E%E6%8E%A5.png)
我们最近购买了一台新的 Supermicro 服务器 (X10DRi-Ln4+ MB、Intel i350 网卡),但在 Hyper-V 方面遇到了问题:
服务器正在运行 Windows Server 2016 Datacenter,并安装了最新的更新和驱动程序。已安装 Hyper-V 角色。我们遇到的问题是由服务器托管的虚拟机的连接性。
当我设置虚拟交换机供外部使用并将其提供给虚拟机(虚拟机 A)时,一切都按预期工作(因为虚拟机 A 获得正确的 IP 地址并可通过该地址访问)。现在,当我尝试将同一虚拟交换机连接到另一个虚拟机(虚拟机 B)时,虚拟机根本无法连接。相反,虚拟机内的连接显示为未识别的连接。当我关闭虚拟机 A 时,虚拟机 B 突然获得连接并收到 IP 地址。我们尝试了 DHCP 和手动 IP 配置,结果相同。我们用于测试目的的虚拟机具有不同的 MAC 地址。
所有 NIC 的行为都相同:我只能将一个 VM 连接到虚拟交换机,如果我将任何其他 VM 连接到交换机,则无法在额外添加的 VM 上建立任何连接。所有 VM 都运行 Windows Server 2016。我们在现有 VM 和新建 VM 上尝试了此操作,结果相同。我们已经在网络中运行了两个 hyper-v 主机,每个外部虚拟交换机有多个 VM(不同之处:带有 Broadcom nics 的 hpe 服务器)。
到目前为止,我们尝试了以下方法:
- 启用/禁用虚拟机队列
- 在物理服务器上重新安装操作系统
- 尝试不同的驱动程序并在驱动程序中设置物理网络端口
我们几乎没有主意了。所以如果你们中有人遇到过类似的问题,我们很乐意得到关于如何解决问题的指点。
答案1
我们修复了这个问题:
问题在于我们的物理交换机上的端口安全性将每个端口的最大 MAC 地址数量限制为 2。我们之前没有意识到这一点,因为我们的其他两台服务器在每个端口上运行多个虚拟机时运行良好。原来这些服务器的限制之前已经提高过,当时没人记得/在场