众所周知,虚拟机通过其 vNIC 连接到 vSwitch,而 vSwitch 又连接到物理机或 ESXI 主机的网络适配器 (vmnic)。然后,vmnic 连接到实际的 L2/L3 交换机。
[VM 的 vnic] <---> [vswitch] <---> [vmnic] <---> [物理交换机]
现在我不明白的是 vmnic 是如何工作的?我真的想不出一个问题来解释我的疑问,但以下是我一直在问自己的问题 ->
- 它如何能够为内部虚拟机分配 IP?
- 当来自物理交换机的外部数据包被发送到 vmnic 时,它如何将其内部传递到内部 VMS?
- 它怎么知道指定的 IP 属于内部的 VM 并将其“向内”传递给 vswitch?
- vmnic 是否使用 IP 还是 MAC 地址来决定是否将数据包传递到交换机?
- 当从外部发出针对虚拟机 IP 的 arp 请求时,vmnic 会使用其 mac 地址进行回复吗?
- 当从内部虚拟机发出 arp 请求时,vmnic 是否会跟踪虚拟机的 mac 地址,以便下次看到对该 MAC 的回复时,它知道“转发”到内部的 vSwitch
- 它的工作方式类似于“桥接模式”,将内部 vswitch 桥接到外部物理交换机吗?是否有属于 vmnic 的 mac 地址表?
- 每当分配 VM 的 IP 时,该 IP 是否会绑定到 vmnic ?
- 我们如何列出与 vmnic 关联的所有 IP 或 MAC(如果有)?
有哪位专家可以进一步阐述 IP 数据包/帧从虚拟机到物理交换机的实际流动情况吗?
谢谢。
问候,Noob