运行Ubuntu 12.04,我们在每个虚拟机上都有12个虚拟机接口。 当我们只使用xml中的接口元素时,我们得到接口,但是我们无法预测/控制虚拟机中的eth0是否连接到HV上的eth0。 我们已经尝试使用lspci中看到的PCI总线编号来控制它,但是这似乎不起作用。
我们是否应该在HVnetworkingxml中的单独元素中定义我们的networking,或者我们应该如何configuration?
从当前xml为vm示例:
<interface type='hostdev'> <source dev='eth3' mode='vepa'> <address type='pci' domain='0x0000' bus='0x16' slot='0x10' function='0x1'/> </source> <target dev='macvtap0'/> </interface> <interface type='bridge'> <source bridge='br4'/> <target dev='vnet0'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface>
在Linux中一致地映射NIC的常规方法是通过在NIC定义中指定MAC地址,或者使用udev的70-persistent-net-rules
如果您在domXML中定义了一个MAC(使用桥接或MACVTAP直通模式),则您可以控制该MAC并在VM中定义它。 如果您使用的是vepa(您应该有一个支持802.1Qbg的交换机),那么连接的网卡的MAC应该传播到虚拟机中,并且您可以指定虚拟机中哪个网卡接口将驻留(使用udev或NICconfiguration,或者两者兼而有之)