为虚拟机和容器创建的网络的正确术语?

网络工程 虚拟专用网 术语 私有VLAN 虚拟的
2021-07-16 22:54:16

为虚拟机和容器创建的网络类型的正确术语是什么?举例来说,Linux 虚拟主机的设备可能docker0为 02:42:a6:79:a6:bc,地址为 172.17.0.1/24,52:54:00:b1:aa:1fvirbr0为 192.168.122.1/24。它们不是真正的网络,对吗?

它们是“虚拟专用网络”,即 VPN、专用 VLAN 还是其他什么?

3个回答

在幕后,包括 docker 在内的所有虚拟化系统都使用相同的机制:它们在主机上使用软件开关。这样的开关可以称为“虚拟开关”(但这有点灰色,因为您现在拥有使用 linux 内核和完全相同的软件来运行的硬件开关)。

所有现代操作系统都有一个内置的、基本的软件开关,虚拟化软件可以利用它。

可以将更高级的功能添加到这个基本的开关实现中,最常见的是 OpenVSwitch。

这些软件交换机的工作方式与硬件交换机的运行方式完全相同,并且可以处理 VLAN、绑定(静态或 LACP)、(x)STP、VxLAN、NetFlow 等...

默认情况下,VMware Workstation/Fusion 或 VirtualBox 等桌面虚拟化软件也会执行 NAT 以使用虚拟机的主机 IP 地址,但您也可以将它们配置为纯桥接(网桥 = 交换机)。

因此,引用这些网络的正确术语是software switchvirtual switch

没有特定的术语(我知道)。“虚拟网络”、“虚拟段”或“第 2 层域”都可能是可以接受的。您还可以查看 Docker 或 Kubernetes 文档,了解它们是如何描述的。无论他们使用什么术语,最有可能被接受的术语。

我将其称为“虚拟以太网”:有以太网地址、ARP 数据包、广播。它是虚拟的,因为没有媒介。

它绝对不是 VPN,因为它被理解为一个系统,其中专用租用线路被虚拟化到共享线路上,通常是通用互联网。虽然它显然是某种虚拟 LAN,但我永远不会称其为 VLAN,因为它不会将多个 LAN 虚拟化到单个介质上,这是 VLAN 的正常含义。