环境:

 centos7u3一台
 kvm虚拟机四台

安装配置命令:

 [root@wing ~]# yum install epel-release -y
 [root@wing ~]# yum install vconfig -y

加载模块:

 [root@wing ~]# modprobe 8021q
 [root@wing ~]# lsmod | grep -i 8021q
 8021q                  33104  0 
 garp                   14384  1 8021q
 mrp                    18542  1 8021q

创建两个vlan:

 [root@wing ~]# vconfig add ens33 10
 Added VLAN with VID == 10 to IF -:ens33:-
 [root@wing ~]# vconfig add ens33 20
 Added VLAN with VID == 20 to IF -:ens33:-

创建两个网桥:

 [root@wing ~]# brctl addbr br10
 [root@wing ~]# brctl addbr br20
 [root@wing ~]# ifconfig br10 up
 [root@wing ~]# ifconfig br20 up

链接网桥和vlan:

 [root@wing ~]# brctl addif br10 ens33.10
 [root@wing ~]# brctl addif br20 ens33.20
 [root@wing ~]# brctl show
 bridge name    bridge id   STP enabled interfaces
 br10   8000.000c290a5b8b   no  ens33.10
 br20   8000.000c290a5b8b   no  ens33.20

创建4台虚拟机

添加虚拟机到vlan:

启动虚拟机后将虚拟机产生的逻辑网口'vnet0,vnet1','vnet2,vnet4'分别加入到不同的vlan中.
 [root@wing ~]# brctl addif br10 vnet0
 [root@wing ~]# brctl addif br10 vnet1
 [root@wing ~]# brctl addif br20 vnet2
 [root@wing ~]# brctl addif br20 vnet3
 [root@wing ~]# brctl show
 bridge name    bridge id   STP enabled interfaces
 br10   8000.000c290a5b8b   no  ens33.10
                                                                 vnet0
                                                                 vnet1
 br20   8000.000c290a5b8b   no  ens33.20
                                                                 vnet2
                                                                 vnet3

测试:

 分别进入4台虚拟机配置ip
 两个网段   br10  和 br20  下面分别有两台主机
 br10 下面的  vnet0 和 vnet1 ip分别是 192.168.122.8 和 192.168.122.9
 br20 下面的  vnet2 和 vnet3 ip分别是 192.168.122.80 和 192.168.122.90
 vnet0和vnet1能相互ping通
 vnet2和vnet3能相互ping通
 vnet0和vnet2不能相互ping通
 vnet1和vnet3不能相互ping通

到此,一台物理机上的vlan已经配置完成,如果有物理交换机,可以再在一台物理机上配置相同的
两个vlan,然后在物理交换机上也配置两个vlan进行测试