Você precisa criar uma interface conectada à vlan (como "eth1.2102" para a vlan 2102). Então você cria uma ponte ("br2102") que tem a interface vlan como membro. Você pode usar as entradas / etc / sysconfig / network-scripts para fazer isso, não atribua IPs a essas interfaces. Em seguida, use a interface da bridge na configração qemu / kvm como a interface para a máquina virtual.
Exemplo de configuração (testado no Centos 6.0):
ifcfg-eth1:
DEVICE=eth1
BOOTPROTO=static
BROADCAST=0.0.0.0
HWADDR=00:15:17:dc:ff:ff # use your mac here
IPADDR=0.0.0.0
NETMASK=0.0.0.0
NETWORK=0.0.0.0
ONBOOT=yes
IPV6INIT=no
NOZEROCONF=yes
TYPE=Ethernet
ifcfg-eth1.2102:
VLAN=yes
DEVICE=eth1.2102
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=none
IPV6INIT=no
IPADDR=0.0.0.0
NETMASK=0.0.0.0
NETWORK=0.0.0.0
BRIDGE=br2102
ifcfg-br2102:
DEVICE=br2102
TYPE=Bridge
ONBOOT=yes
# BOOTPROTO=none
BOOTPROTO=static
IPADDR=
NETMASK=
"ifup br2102" deve mostrar todas essas interfaces. Certifique-se de ter isso em /etc/sysctl.conf:
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
Solução de problemas: use "tcpdump -i eth1.2102 -n" e tcpdump -i br2102 -n "para ver o tráfego nessas interfaces." brctl show "é útil para ver a configuração da ponte com a interface da máquina virtual no ponte adicionada após a inicialização.PXE inicialização tem um problema, você precisa interromper no prompt PXE por cerca de 10 segundos antes da interface está disponível.Caso contrário, o PXE rom não recebe um IP.