我正在做一些有关在KVM主机上使用ebtables和iptables论文研究,以对KVM访客虚拟机执行即时防火墙限制。
问题是:我在eth0上build立了一个名为br0的网桥。 这工作正常。 然后我添加了两个tap设备: tap0和tap1使用br0 。
由于某些奇怪的原因,在KVM GUI中,只有一个水龙头设备被识别为桥接设备。 另一个是说macvtap 。 我不明白为什么是这样。 我不记得在另一个系统上运行这个问题,但我在ThinkPad上遇到这个问题。
下面是GUI的屏幕截图,显示了我正在谈论的内容: 
tap1为什么得到“( tap1 ')”标签而不是tap0 ? 他们都应该被认为是桥梁。
我在CentOS 6上运行这个,下面是水龙头的ifcfg文件:
对于tap0 :
DEVICE="tap0" TYPE="Tap" BRIDGE="br0"
和tap1 :
DEVICE="tap1" TYPE="Tap" BRIDGE="br0"
理论上,这应该是工作…
编辑:重新安装CentOS是一个好主意? 我想知道如果主机的设置搞砸了某个地方…
编辑2:我检查了我的问题多一点,我仍然很困惑,为什么只有一个接口被看作是一个桥接接口。 另外奇怪的是, br0接口没有出现在该列表中。 我记得我的另一个系统,它也会列出。 为了certificatetap0和tap1在桥上,这里是brctl show命令的输出:
bridge name bridge id STP enabled interfaces br0 8000.001c25990400 no eth0 tap0 tap1
正如你所看到的, eth0 , tap0和tap1被添加到br0桥…所以…这应该是工作….
如果你的目标是使用网桥br0作为你的虚拟机的开关。 您可以删除tap0和tap1。 在virt-manager中selectSpecify shared device name并inputbr0 int textfield。
不需要手动创buildtap0和tap1。 只需像下图所示configuration虚拟机。 LibVirt为您自动创buildvnet设备。 