virbr# 和 vnet# 之间有什么区别?

virbr# 和 vnet# 之间有什么区别?

我在 RHEL6 上运行 KVM,并在其中创建了多个虚拟机。向主机系统命令行发出ifconfig命令会显示 virbr0、virbr1... 和 vnet0、vnet2... 的列表,它们是来宾操作系统的 IP 地址吗? virbr# 和 vnet# 之间有什么区别?

答案1

这些是网络接口,而不是 IP 地址。网络接口可以交换任何协议的数据包,包括 IPv4 或 IPv6,在这种情况下,可以为它们提供一个或多个 IP 地址。

virbr是桥接口。它们是虚拟的,因为没有与它们关联的网络接口卡。它们的作用就像一个真正的网桥或交换机,即在连接到它的接口(真实或其他)之间交换数据包(在第 2 层),就像真正的以太网交换机一样。

您可以为该设备分配一个 IP 地址,这基本上为主机提供了网桥连接到的子网上的 IP 地址。然后它将使用连接到网桥的接口之一的 MAC 地址。

它们的名称以 开头的事实vir并不使它们与任何其他桥接接口有任何不同,只是这些接口是通过为接口libvirt保留名称空间而创建的bridge

vnet接口是其他类型的虚拟接口,称为tap接口。它们附加到一个进程(在本例中是在模拟器中运行的进程qemu-kvm)。进程写入该接口的内容将显示为已由主机在该接口上接收,并且主机在该接口上传输的内容可​​供该进程读取。qemu通常将其用于来宾中的虚拟化网络接口。

通常,vnet将添加到桥接接口,这意味着将虚拟机插入交换机。

答案2

病毒#是虚拟网桥(交换机)。

虚拟网#是运行虚拟机的网卡,从主机(物理机)来看。这意味着,从您的物理机上,您可以看到正在运行的虚拟机网卡。

你可以通过执行来检查“ipa”来自物理机和虚拟机的命令。

相关内容