我正在做一个论文研究项目,在弄清楚如何让一个 NIC 产生多个“桥接”接口以便每个 KVM VM 都可以在本地网络上看到时遇到了一些困难。我对 KVM 还很陌生,仍在探索它能做什么。以下是我尝试制作的场景(在 CentOS/RHEL 6 系统上):
- Linux KVM 主机有 1 个 NIC(
eth0
)连接到交换机。 - 创建多个“桥接”或等效接口,这些接口
eth0
将为每个虚拟机提供唯一的 IP。这样,每个虚拟机都可以与网络上的其他主机通信,并且网络上的其他主机也可以与虚拟机通信。 - 重要的:我希望
iptables
KVM 主机能够操纵/控制/限制在这些“桥接”接口上发送的流量。 - 我想要创建至少三台虚拟机,每台虚拟机都使用自己独特的“桥接”接口。
我之前已创建了一个br0
接口eth0
,但不幸的是,我无法再添加任何接口。看来您只能将 1 个接口桥接到 NIC。我想将多个接口桥接到一个。
设备能tap
做到这一点吗?如果能,该如何设置?
实际上,我试图复制在 Windows 上使用 VirtualBox 轻松创建的内容,其中每个 VM 都分配有一个“桥接”接口,并且可以在网络上运行。我想使用 Linux KVM 实现同样的事情。
谢谢
编辑:为了更具描述性,我想要实现如下目标:
您可在此页面找到:http://en.gentoo-wiki.com/wiki/KVM#Networking_2
HOST
+---------------+
| | KVM GUEST1
| | +--------------+
| +------+ | | |
LAN ---+--- eth0 | +--+---+---- nic0 | KVM GUEST2
| | tap0----+ | |192.168.1.13 | +--------------+
| | tap1----+ | +--------------+ | |
| +------+ | | | |
| br0 +--+----------------------+---- nic0 |
|192.168.1.12 | |192.168.1.14 |
+---------------+ +--------------+
答案1
您可以在 eth0 上创建一个网桥,并将虚拟机的虚拟网卡插入该网桥。将网桥视为虚拟集线器,使概念更容易理解