我正在尝试通过支持文档获得关于虚拟机如何在同一主机上相互通信的具体确认。从我在多个线程中读到的内容来看:
“如果两个虚拟机位于同一个 vSwitch 上,则虚拟机将不会使用物理 NIC。”
以下是我的场景:2 节点集群
病毒核型
病毒
IP:192.168.100.0/24
网络:物理 NIC <-> NIC 团队 <-> (外部)vSwitch <-> VM
这样我就知道我 100% 正确。
任何/所有流量,无论其来源/目的地,来自/到达位于同一主机服务器上的虚拟机,使用相同的 vSwitch,都将通过该 vSwitch 进行遍历。
正确的:
VMa <-> (外部)vSwitch <-> VMb
不是
VMa <-> (外部) vSwitch <-> NIC 团队 <-> 物理 NIC <-> NIC 团队 <-> (外部) vSwitch <-> VMb
如果我能得到一些支持文档,那将非常有帮助。我自己没找到。
答案1
我是 Hyper-V 新手,但虚拟机间通信不应该通过私有或内部交换机进行吗?
“Hyper-V 的私有交换机 私有交换机只允许主机上的虚拟机之间进行通信,不允许其他任何设备进行通信。甚至管理操作系统也不允许参与。此交换机是纯逻辑的,不以任何方式使用任何物理适配器。这种意义上的“私有”与私有 IP 寻址无关。您可以将其想象为无法上行连接到其他交换机的交换机。
Hyper-V 的内部交换机 内部交换机与私有交换机类似,但有一个例外:管理操作系统可以在这种类型的交换机上拥有虚拟适配器。这允许管理操作系统直接与在同一内部交换机上也拥有虚拟适配器的任何虚拟机进行通信。与私有交换机一样,内部交换机与物理适配器没有任何关系,因此也无法上行链接到任何其他交换机。
Hyper-V 的外部交换机 外部交换机类型必须连接到物理适配器。它允许物理网络与管理操作系统以及虚拟机上的虚拟适配器之间的通信。不要将此交换机类型与公共 IP 寻址方案混淆,也不要让其名称暗示它需要连接到面向 Internet 的系统。您可以为外部虚拟交换机上的适配器使用与其连接的物理网络相同的私有 IP 地址范围。在此用法中,外部意味着它可以连接到 Hyper-V 主机外部的系统。
https://www.altaro.com/hyper-v/virtual-networking-configuration-best-practices/
答案2
-HyperV 虚拟 - 第 2 层设备(交换机) -物理 NIC - 充当第 3 层设备(路由器)
1.如果您在同一个子网中拥有两个虚拟机并连接到同一个 HyperV 虚拟交换机,则两个虚拟适配器之间的通信将如下所示
VM1 <-> HyperV 虚拟 <-> 物理 NIC <-> VM2
2.如果您在不同的子网中拥有两个虚拟机并连接到不同的 HyperV 虚拟交换机,则两个虚拟适配器之间的通信将如下所示
VM1 <-> HyperV 虚拟 <-> 物理 NIC <-> HyperV 虚拟 <-> VM2。
注意:基本上所有虚拟机都将使用虚拟 NIC 连接到 HyperV 虚拟交换机。
默认情况下,物理网卡绑定到管理网络(所有通信和网络调试和退役都通过该网络进行)
在这种情况下,如果您有多个虚拟机,则可以将所有虚拟机连接到单个 HyperV 虚拟交换机(如果都在同一个子网中)或单个 HyperV 虚拟交换机(对于单个子网)。
如果有多个子网,最好进行单独的虚拟子网设置,以便更好地工作和理解。
https://www.altaro.com/hyper-v/the-hyper-v-virtual-switch-explained-part-1/
答案3
以下链接有不同的看法:科技网
此外,Altaro 链接指出:
Ethernet Frame Switching The Hyper-V virtual switch is able to read the MAC addresses in an Ethernet packet and deliver it to the correct destination if it is present on the virtual switch. It is aware of the MAC addresses of all virtual network adapters attached to it. An external virtual switch also knows about the MAC addresses on any layer-2 networks that it has visibility to via its assigned physical adapter or team.
这是否意味着没有流量会穿过物理交换机?
两个虚拟机都连接到同一个 vSwitch,位于同一个子网内并驻留在同一个主机上?