proxmox 7.0 sdn beta test

I have done it differently in my plugin, without ethx.Y.

I'm doing it like this:

eth0---->ovs---(dot1q-tunnel port tag)--------linuxvlanawarebrige--- (tag)----vm.

(I could use another ovs switch, but to be cleaner in my code, I currently use a linuxvlanaware bridge)

Like this, later I could allow also tagging inside the vm, instead the vnet.


I have done tcpdump with ovs && linuxbridge, I'm correctly seeing double tagged packets.
(also verify with 802.1ad or 802.1q for service vlan)
Hi Spirit

Will it be possible to the set the the Service vlan type? 0x8100 or 0x88a8 ? and will it be possible to set multiple levels of stag?
like ethx.10.11.12.x

how do you connect the linuxbridge to the OVS? via Uplink?

If I read this correct, eth0---->ovs---(dot1q-tunnel port tag)--------linuxvlanawarebrige--- (tag)----vm.

eth0 is a OVS port ? and vm is connected to linux bridge
 
Will it be possible to the set the the Service vlan type? 0x8100 or 0x88a8 ?
yes,
I have added a new option.
""vlan-protocol 802.1ad" or ""vlan-protocol 802.1q". (if not defined, it's 802.1q)

not yet available in gui (should be available soon), but you can already edit /etc/pve/sdn/zones.cfg


and will it be possible to set multiple levels of stag?
like ethx.10.11.12.x
I only manage 2 tag, but I think you can add another tag on eth with

eth.X-----ovs---(dot1q-tunnel port tag)--------linuxvlanawarebrige--- (tag)----vm.

(define eth.X---ovs on each node local configuration).

do you really need 3 tags ?


how do you connect the linuxbridge to the OVS? via Uplink?
with a simple ovs internal port, where the dot1q tunnel is defined


If I read this correct, eth0---->ovs---(dot1q-tunnel port tag)--------linuxvlanawarebrige--- (tag)----vm.
eth0 is a OVS port ?

yes



and vm is connected to linux bridge
yes



This give something like

Code:
auto eth0
iface eth0 inet manual

auto vmbr0
iface vmbr0 inet manual
  ovs_type OVSBridge
  ovs_ports eth0

auto ovsintport
iface ovsintport
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_options vlan_mode=dot1q-tunnel tag=60 other_config:qinq-ethtype=802.1q

auto vnetbridge
iface vnetbridge
        bridge-stp off
        bridge-ports ovsintport
        bridge-fd 0
        bridge-vlan-aware yes
        bridge-vids 2-4094
 
if you need 802.1ad for service vlan, you can edit
/etc/pve/sdn/zones.cfg

and add "vlan-protocol 802.1ad" option to your qinq zone.
H Spirit
can you give a example? below is what I have in "/etc/pve/sdn/zones.cfg"

Code:
qinq: qinq4040
        bridge vmbr0
        tag 4040

So, currently, service vlan are defined on zone, customer vlan is defined in vnets.

Do you have the need to define customer vlan inside the vm ?
or allow user to any vlan tag on the vm nic (like use the zone as bridge, and define tag you want)
Yes, so we have mixed use cases, like 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)
2 Stag 4040 as above but we also add the ctag 10 on VM for customer and allow any other trunk vlans ( eth0.4040.10.(anytag)
3. then we can have a combination of above but instead of anytag we allow a range of say 10-20, ( eth0.4040.(10-20) or eth0.4040.10.(10-20)
4.then the add Stag with or without ctag but no other tag's allowed, (eth0.4040.10 or eth0.4040)

very similar to option listed in this post
https://bugzilla.proxmox.com/show_bug.cgi?id=1350

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 pvedaemon
I have loaded this patch and busy testing I will give futher updates,

I found this bug when trying to hotplug to a VM

Code:
Parameter verification failed. (400)

net5: hotplug problem - VM 201 qmp command 'netdev_add' failed - network script /var/lib/qemu-server/pve-bridge-hotplug failed with status 512
 
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 pvedaemon
Hi Spirit

I still get an error when trying to to boot a VM with OVS qinq vnet

Code:
ovs vmbr0 is not supported by qinq at /usr/share/perl5/PVE/Network/SDN/Zones/QinQPlugin.pm line 94.
kvm: network script /var/lib/qemu-server/pve-bridge failed with status 512
TASK ERROR: start failed: QEMU exited with code 1
 
please add the pveversion -v you're currently using, some updates are still only on the pvetest repository :)
Hi

Code:
pveversion -v
proxmox-ve: 6.2-1 (running kernel: 5.4.41-1-pve)
pve-manager: 6.2-4 (running version: 6.2-4/9824574a)
pve-kernel-5.4: 6.2-2
pve-kernel-helper: 6.2-2
pve-kernel-5.4.41-1-pve: 5.4.41-1
pve-kernel-5.4.34-1-pve: 5.4.34-2
ceph-fuse: 12.2.11+dfsg1-2.1+b1
corosync: 3.0.3-pve1
criu: 3.11-3
glusterfs-client: 5.5-3
ifupdown2: 2.0.1-1+pve8
ksm-control-daemon: 1.3-1
libjs-extjs: 6.0.1-10
libknet1: 1.15-pve1
libproxmox-acme-perl: 1.0.4
libpve-access-control: 6.1-1
libpve-apiclient-perl: 3.0-3
libpve-common-perl: 6.1-2
libpve-guest-common-perl: 3.0-10
libpve-http-server-perl: 3.0-5
libpve-network-perl: 0.4-4
libpve-storage-perl: 6.1-8
libqb0: 1.0.5-1
libspice-server1: 0.14.2-4~pve6+1
lvm2: 2.03.02-pve4
lxc-pve: 4.0.2-1
lxcfs: 4.0.3-pve2
novnc-pve: 1.1.0-1
openvswitch-switch: 2.12.0-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.2-1
pve-cluster: 6.1-8
pve-container: 3.1-6
pve-docs: 6.2-4
pve-edk2-firmware: 2.20200229-1
pve-firewall: 4.1-2
pve-firmware: 3.1-1
pve-ha-manager: 3.0-9
pve-i18n: 2.1-2
pve-qemu-kvm: 5.0.0-2
pve-xtermjs: 4.3.0-1
qemu-server: 6.2-2
smartmontools: 7.1-pve2
spiceterm: 3.1-1
vncterm: 1.6-1
zfsutils-linux: 0.8.4-pve1
 
H Spirit
can you give a example? below is what I have in "/etc/pve/sdn/zones.cfg"


Code:
        qinq: qinq4040
        bridge vmbr0
        tag 4040
        vlan-protocol 802.1q     (or 802.1ad)

Yes, so we have mixed use cases, like 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)
2 Stag 4040 as above but we also add the ctag 10 on VM for customer and allow any other trunk vlans ( eth0.4040.10.(anytag)
3. then we can have a combination of above but instead of anytag we allow a range of say 10-20, ( eth0.4040.(10-20) or eth0.4040.10.(10-20)
4.then the add Stag with or without ctag but no other tag's allowed, (eth0.4040.10 or eth0.4040)

very similar to option listed in this post
https://bugzilla.proxmox.com/show_bug.cgi?id=1350

Ok. I'll try to see how I could implement that.
Currently I don't yet allow trunk in the vnet (it's only a simple tag), but It could be done easily. I have already thinked about it.


I have loaded this patch and busy testing I will give futher updates,

I found this bug when trying to hotplug to a VM

Code:
Parameter verification failed. (400)

net5: hotplug problem - VM 201 qmp command 'netdev_add' failed - network script /var/lib/qemu-server/pve-bridge-hotplug failed with status 512

mmm, that's strange. if you can, maybe try a reboot after install of my last deb, as I have change a little bit the networking config.
just to be sure, you can try to install it from pvetest,
http://download.proxmox.com/debian/...inary-amd64/libpve-network-perl_0.4-5_all.deb

This is the same code than I have uploaded some days ago, but version has been increased
 
Hi Spirit
I only manage 2 tag, but I think you can add another tag on eth with

eth.X-----ovs---(dot1q-tunnel port tag)--------linuxvlanawarebrige--- (tag)----vm.

(define eth.X---ovs on each node local configuration).

do you really need 3 tags ?
Yes we do on occasions depends on where on our network we need to deliver this service

auto eth0 iface eth0 inet manual auto vmbr0 iface vmbr0 inet manual ovs_type OVSBridge ovs_ports eth0 auto ovsintport iface ovsintport ovs_type OVSIntPort ovs_bridge vmbr0 ovs_options vlan_mode=dot1q-tunnel tag=60 other_config:qinq-ethtype=802.1q auto vnetbridge iface vnetbridge bridge-stp off bridge-ports ovsintport bridge-fd 0 bridge-vlan-aware yes bridge-vids 2-4094

Just to check the ovsintport is not added to OVS bridge vmbr0?

or should the config be more like this?

Code:
auto lo
iface lo inet loopback
        pre-up ifconfig eth0 mtu 9000
        pre-up ifconfig eth1 mtu 9000

iface eth0 inet manual
#eth0 - 1_eth-0-38 - 1G

iface eth1 inet manual
#eth1 - 2_eth-0-38 - 1G

auto vlan1
iface vlan1 inet static
        address 10.254.1.49/24
        gateway 10.254.1.1
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000

auto vlan18
iface vlan18 inet static
        address 10.255.18.9/28
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=18
#storage network

auto vlan20
iface vlan20 inet static
        address 10.255.20.9/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=20
# storage iSCSI 1

auto vlan21
iface vlan21 inet static
        address 10.255.21.9/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=21
# storage iSCSI 2

auto vlan23
iface vlan23 inet static
        address 10.255.23.9/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_options tag=23

auto qinq4040
iface qinq4040 inet manual
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options other_config:qinq-ethtype=802.1q tag=4040 vlan_mode=dot1q-tunnel

auto bond0
iface bond0 inet manual
        ovs_bonds eth0 eth1
        ovs_type OVSBond
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options other_config:lacp-time=fast bond_mode=balance-tcp lacp=active
# bond0_eth0/eth1

auto vmbr0
iface vmbr0 inet manual
        ovs_type OVSBridge
        ovs_ports bond0 vlan1 vlan18 vlan20 vlan21 vlan23 qinq4040
        ovs_mtu 9000
#guest network 1G

auto vmbr4040
iface vmbr4040 inet manual
        bridge-ports none
        bridge-stp off
        bridge-fd 0
        bridge-vlan-aware yes
        bridge-vids 2-4094
        mtu 9000
 
mmm, that's strange. if you can, maybe try a reboot after install of my last deb, as I have change a little bit the networking config.
just to be sure, you can try to install it from pvetest,
http://download.proxmox.com/debian/...inary-amd64/libpve-network-perl_0.4-5_all.deb

This is the same code than I have uploaded some days ago, but version has been increased
After loading this and a reboot my bond interface does not come up auto,

Code:
# network interface settings; autogenerated
# Please do NOT modify this file directly, unless you know what
# you're doing.
#
# If you want to manage parts of the network configuration manually,
# please utilize the 'source' or 'source-directory' directives to do
# so.
# PVE will preserve these directives, but will NOT read its network
# configuration from sourced files, so do not attempt to move any of
# the PVE managed interfaces into external files!

auto lo
iface lo inet loopback
        pre-up ifconfig eth0 mtu 9000
        pre-up ifconfig eth1 mtu 9000

iface eth0 inet manual
#eth0 - 1_eth-0-38 - 1G

iface eth1 inet manual
#eth1 - 2_eth-0-38 - 1G

auto vlan1
iface vlan1 inet static
        address 10.254.1.49/24
        gateway 10.254.1.1
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000

auto vlan18
iface vlan18 inet static
        address 10.255.18.9/28
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=18
#storage network

auto vlan20
iface vlan20 inet static
        address 10.255.20.9/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=20
# storage iSCSI 1

auto vlan21
iface vlan21 inet static
        address 10.255.21.9/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=21
# storage iSCSI 2

auto vlan23
iface vlan23 inet static
        address 10.255.23.9/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_options tag=23

auto vlan2
iface vlan2 inet static
        address 10.254.2.100/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=2
#vxlan to dc9_sw

auto bond0
iface bond0 inet manual
        ovs_bonds eth0 eth1
        ovs_type OVSBond
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options bond_mode=balance-tcp other_config:lacp-time=fast lacp=active
# bond0_eth0/eth1

auto vmbr0
iface vmbr0 inet manual
        ovs_type OVSBridge
        ovs_ports bond0 vlan1 vlan18 vlan20 vlan21 vlan23 vlan2
        ovs_mtu 9000
#guest network 1G

just a manual run below commands brings up the bond

ip link set eth0 up
ip link set eth1 up
 
After loading this and a reboot my bond interface does not come up auto,

just a manual run below commands brings up the bond

ip link set eth0 up
ip link set eth1 up

mmm, seem related to ifupdown2. I see that your eth0/1 interfaces don't have "auto ethX" before them.
it should be enable.


Btw, about your customers, did they have access to proxmox interface to manage vlan on the vm nic interface ?
I'm looking to add support for vlan-aware on the vnet, to allow trunk for tags comming from inside the vm, but I could also allow setup the tag on the vm interface. (this could add the third tag on top of the qinq sdn setup)
 
@pieteras.meyer

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).

to install,

Code:
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
example:

Code:
vnet: mynet
          tag 3000
          zone qinqzone
          vlanaware 1


I think it shoud fill all your cases, mixing vlan && qinq plugin , with/without vlanaware option.
 
Hi Spirit
mmm, seem related to ifupdown2. I see that your eth0/1 interfaces don't have "auto ethX" before them.
it should be enable.
It has always been like this, the previous reboot, it worked fine,
I will will add the auto eth0/1 and check again,

Btw, about your customers, did they have access to proxmox interface to manage vlan on the vm nic interface ?
I'm looking to add support for vlan-aware on the vnet, to allow trunk for tags comming from inside the vm, but I could also allow setup the tag on the vm interface. (this could add the third tag on top of the qinq sdn setup)
Not at the moment, but they could do tagging from the guest operating system, and this is why we should be able to control if they are allowed to trunk vlans or not and possible ranges
 
Hello,

i always get this error when trying to start my vm:
bridge VNet2 is missing at /usr/share/perl5/PVE/Network/SDN/Zones/Plugin.pm line 214.
kvm: network script /var/lib/qemu-server/pve-bridge failed with status 512
TASK ERROR: start failed: QEMU exited with code 1

when i firstly intalled the sdn beta, everything worked well with the configuration, after upgrading packages and rebooting the server i cannot
start the vms

root@pve:~# pveversion -v
proxmox-ve: 6.2-1 (running kernel: 5.4.41-1-pve)
pve-manager: 6.2-4 (running version: 6.2-4/9824574a)
pve-kernel-5.4: 6.2-2
pve-kernel-helper: 6.2-2
pve-kernel-5.4.41-1-pve: 5.4.41-1
ceph: 14.2.9-pve1
ceph-fuse: 14.2.9-pve1
corosync: 3.0.3-pve1
criu: 3.11-3
glusterfs-client: 5.5-3
ifupdown: residual config
ifupdown2: 2.0.1-1+pve10
ksm-control-daemon: 1.3-1
libjs-extjs: 6.0.1-10
libknet1: 1.15-pve1
libproxmox-acme-perl: 1.0.4
libpve-access-control: 6.1-1
libpve-apiclient-perl: 3.0-3
libpve-common-perl: 6.1-2
libpve-guest-common-perl: 3.0-10
libpve-http-server-perl: 3.0-5
libpve-network-perl: 0.4-5
libpve-storage-perl: 6.1-8
libqb0: 1.0.5-1
libspice-server1: 0.14.2-4~pve6+1
lvm2: 2.03.02-pve4
lxc-pve: 4.0.2-1
lxcfs: 4.0.3-pve2
novnc-pve: 1.1.0-1
openvswitch-switch: 2.12.0-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.2-3
pve-cluster: 6.1-8
pve-container: 3.1-6
pve-docs: 6.2-4
pve-edk2-firmware: 2.20200229-1
pve-firewall: 4.1-2
pve-firmware: 3.1-1
pve-ha-manager: 3.0-9
pve-i18n: 2.1-3
pve-qemu-kvm: 5.0.0-2
pve-xtermjs: 4.3.0-1
qemu-server: 6.2-2
smartmontools: 7.1-pve2
spiceterm: 3.1-1
vncterm: 1.6-1
zfsutils-linux: 0.8.4-pve1
 
Hi Spirit

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).

to install,

After installing this I added a QinQ vlan and vnet, got the below error when starting the vm

Code:
bridge 'vnet' does not exist
kvm: network script /var/lib/qemu-server/pve-bridge failed with status 512
TASK ERROR: start failed: QEMU exited with code 1

Code:
pveversion -v
proxmox-ve: 6.2-1 (running kernel: 5.4.41-1-pve)
pve-manager: 6.2-4 (running version: 6.2-4/9824574a)
pve-kernel-5.4: 6.2-2
pve-kernel-helper: 6.2-2
pve-kernel-5.4.41-1-pve: 5.4.41-1
pve-kernel-5.4.34-1-pve: 5.4.34-2
ceph-fuse: 12.2.11+dfsg1-2.1+b1
corosync: 3.0.3-pve1
criu: 3.11-3
glusterfs-client: 5.5-3
ifupdown2: 2.0.1-1+pve8
ksm-control-daemon: 1.3-1
libjs-extjs: 6.0.1-10
libknet1: 1.15-pve1
libproxmox-acme-perl: 1.0.4
libpve-access-control: 6.1-1
libpve-apiclient-perl: 3.0-3
libpve-common-perl: 6.1-2
libpve-guest-common-perl: 3.0-10
libpve-http-server-perl: 3.0-5
libpve-network-perl: 0.4-4
libpve-storage-perl: 6.1-8
libqb0: 1.0.5-1
libspice-server1: 0.14.2-4~pve6+1
lvm2: 2.03.02-pve4
lxc-pve: 4.0.2-1
lxcfs: 4.0.3-pve2
novnc-pve: 1.1.0-1
openvswitch-switch: 2.12.0-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.2-1
pve-cluster: 6.1-8
pve-container: 3.1-6
pve-docs: 6.2-4
pve-edk2-firmware: 2.20200229-1
pve-firewall: 4.1-2
pve-firmware: 3.1-1
pve-ha-manager: 3.0-9
pve-i18n: 2.1-2
pve-qemu-kvm: 5.0.0-2
pve-xtermjs: 4.3.0-1
qemu-server: 6.2-2
smartmontools: 7.1-pve2
spiceterm: 3.1-1
vncterm: 1.6-1
zfsutils-linux: 0.8.4-pve1

Code:
qinq: qinq4040
        bridge vmbr0
        tag 4040
Code:
vnet: vnet
        tag 100
        zone qinq4040
 
Forget to say:

After installating the new libpvenetwork package, you need to reapply sdn configuration,to regenerate and reload /etc/network/interfaces.d/sdn.
Adding the config manually as per you previons message it does seem to work
see below
Code:
ovs-vsctl get Port vlan4040 tag
4040
root@pve00:~# ovs-vsctl get Port vlan4040 vlan_mode
"dot1q-tunnel"
root@pve00:~# brctl show
bridge name     bridge id               STP enabled     interfaces
vmbr4040                8000.12029e22b0ff       no              tap20101i5
                                                        vlan4040
root@pve00:~# ovs-vsctl show
bdfdfd5f-a94b-431e-ac20-2213d91886d5
    Bridge "vmbr0"
        Port "vlan20"
            tag: 20
            Interface "vlan20"
                type: internal
        Port "bond0"
            Interface "eth0"
            Interface "eth1"
        Port "vlan2"
            tag: 2
            Interface "vlan2"
                type: internal
        Port "vlan4040"
            tag: 4040
            Interface "vlan4040"
                type: internal
        Port "tap20101i0"
            tag: 4
            Interface "tap20101i0"
        Port "vlan18"
            tag: 18
            Interface "vlan18"
                type: internal
        Port "tap20101i3"
            tag: 102
            Interface "tap20101i3"
        Port "vlan1"
            Interface "vlan1"
                type: internal
        Port "tap20101i1"
            tag: 100
            Interface "tap20101i1"
        Port "vmbr0"
            Interface "vmbr0"
                type: internal
        Port "vlan23"
            tag: 23
            Interface "vlan23"
                type: internal
        Port "vlan21"
            tag: 21
            Interface "vlan21"
                type: internal
        Port "tap20101i4"
            tag: 103
            Interface "tap20101i4"
        Port "tap20101i2"
            tag: 101
            Interface "tap20101i2"
    ovs_version: "2.12.0"

Code:
# the PVE managed interfaces into external files!

auto lo
iface lo inet loopback
        pre-up ifconfig eth0 mtu 9000
        pre-up ifconfig eth1 mtu 9000

auto eth0
iface eth0 inet manual
#eth0 - 1_eth-0-38 - 1G

auto eth1
iface eth1 inet manual
#eth1 - 2_eth-0-38 - 1G

auto vlan1
iface vlan1 inet static
        address 10.254.1.49/24
        gateway 10.254.1.1
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000

auto vlan18
iface vlan18 inet static
        address 10.255.18.9/28
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=18
#storage network

auto vlan20
iface vlan20 inet static
        address 10.255.20.9/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=20
# storage iSCSI 1

auto vlan21
iface vlan21 inet static
        address 10.255.21.9/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=21
# storage iSCSI 2

auto vlan23
iface vlan23 inet static
        address 10.255.23.9/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_options tag=23

auto vlan2
iface vlan2 inet static
        address 10.254.2.100/24
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=2
#vxlan to dc9_sw

auto vlan4040
iface vlan4040 inet manual
        ovs_type OVSIntPort
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options tag=4040 vlan_mode=dot1q-tunnel other_config:qinq-ethtype=802.1q

auto bond0
iface bond0 inet manual
        ovs_bonds eth0 eth1
        ovs_type OVSBond
        ovs_bridge vmbr0
        ovs_mtu 9000
        ovs_options bond_mode=balance-tcp lacp=active other_config:lacp-time=fast
# bond0_eth0/eth1

auto vmbr0
iface vmbr0 inet manual
        ovs_type OVSBridge
        ovs_ports bond0 vlan1 vlan18 vlan20 vlan21 vlan23 vlan2 vlan4040
        ovs_mtu 9000
#guest network 1G

auto vmbr4040
iface vmbr4040 inet manual
        bridge-ports vlan4040
        bridge-stp off
        bridge-fd 0
        bridge-vlan-aware yes
        bridge-vids 2-4094
        mtu 9000
 
you need at the end of /etc/network/interfaces

"source /etc/network/interfaces.d/*"


It's in the example of documentation
https://pve.proxmox.com/pve-docs/chapter-pvesdn.html

but I think I need to improve that, maybe add it by default.

sdn local generated config is done in /etc/network/interfaces.d/sdn , so it need to be included in the main config
 
  • Like
Reactions: sneer
but I think I need to improve that, maybe add it by default.

sdn local generated config is done in /etc/network/interfaces.d/sdn , so it need to be included in the main config

you need at the end of /etc/network/interfaces

"source /etc/network/interfaces.d/*"
Hi Spirit
Yes , this worked and think maybe ifupdown2 should do this check?
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!