here a new deb : http://odisoweb1.odiso.net/libpve-network-perl_0.4-4_all.deb (I don't have update to 0.4-5, but they are new feature).
wget http://odisoweb1.odiso.net/libpve-network-perl_0.4-4_all.deb dpkg -i libpve-network-perl_0.4-4_all.deb systemctl restart pveproxy systemctl restart pvedaemon
You can now enable vlan tag && thrunks in the vm nic options. (That's mean 3 layers of tag with qinq plugin, or 2 layers of tag with vlan plugin)
you just need to edit:
/etc/pve/sdn/vnets.cfg , and in your vnet, add "vlanaware 1" option
vnet: mynet tag 3000 zone qinqzone vlanaware 1
I think it shoud fill all your cases, mixing vlan && qinq plugin , with/without vlanaware option.
for the following scenario doesn't seem to work,
zone.cfg vlan: vlan bridge vmbr0 vnet.cfg vnet: vnet4040 tag 4040 zone vlan vlanaware 1
for vlan 4040 and then allow guest to trunk vlans any, similar to below
1. we add service vlan infront of any VM/customer traffic, so like eth0.4040.(any customer traffic untagged or any tagged 1-4094)
- Attaching a virtual's network adapter to the bridge and specifying a VLAN ID: VM's network configuration line: net0: virtio=E4:8D:8C:82:94:97,bridge=vmbr0,tag=1 Generated command: /usr/bin/ovs-vsctl add-port vmbr0 tap101i0 vlan_mode=dot1q-tunnel tag=4040 other-config:qinq-ethtype=802.1q Result: Virtual router can communicate with all other network devices perfectly, herewith examples: Interface - VM - Network = Testing ether1 - Untagged - VLAN 4040 = OK ether1-vlan50 - 802.1Q:1 - VLAN 4040 with QinQ 50 = OK ether1-vlan50-vlan10 - 802.1Q:1_802.1Q:50 - VLAN 4040 with QinQinQ 50:10 = OK ether1-vlan60 - 802.1Q:1_802.1Q:60 - VLAN 4040 with QinQ 60 = OK
and how would I do below example?
3. then we can have as of above but instead of anytag we allow a range of say 10-20, [ eth0.4040.(10-20)]
maybe like below?
auto vmbr1 iface vmbr1 inet manual bridge-ports none bridge-stp off bridge-fd 0 bridge-vlan-aware yes bridge-vids 10-20 mtu 9000
I have also notices that the host and vm's loose network for a couple of seconds when apply config or ifreload -a -d / ifreload -a is run
is this expected?
If this is expected it will mean that these configs cannot be added during operating hours?