使用一个网卡为Linux KVM创build多个接口

我正在进行一篇论文研究项目,而且我正在弄清楚如何让一个网卡产生几个“网桥”接口,以便在本地networking上可以看到每个KVM虚拟机。 我对KVM很陌生,现在还在探索它的function。 以下是我正在尝试的场景(在CentOS / RHEL 6系统上):

  1. Linux KVM主机有一个NIC( eth0 )连接到交换机。
  2. 创build多个“桥梁”或从eth0衍生而来的等效接口,为每个虚拟机提供一个唯一的IP。 这样每个虚拟机就可以和networking上的其他主机进行通信,networking上的其他主机也可以和虚拟机进行通信。
  3. 重要提示:我希望KVM主机上的iptables能够操纵/控制/限制在这些“网桥”接口上发送的stream量。
  4. 我想创build至less三个虚拟机,每个使用自己独特的“桥”接口。

我之前已经做了一个关于eth0br0接口,但不幸的是,我无法添加更多的东西。 看来您只能将1个接口桥接到NIC。 我想桥接一对一。

tap设备能做到这一点? 如果是的话,它将如何build立?

实际上,我试图复制在Windows上使用VirtualBox轻松创build的内容,每个虚拟机都有一个“桥接”接口,并且可以在networking上运行。 我想用Linux KVM来做到这一点。

谢谢

编辑 :为了更具描述性,我想要实现的东西看起来像这样:

这可以在这个页面上find: 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 | +---------------+ +--------------+ 

您可以在eth0之上创build一个网桥,并将虚拟机的虚拟网卡插入该网桥。 把这座桥看作是一个虚拟中心,让这个概念更容易理解