Modify network configuration delete the vlan config in GUI (cli no)

sistemasxeridia

New Member
Nov 20, 2025
2
0
1
Hello,
Yesterday I configured a bond with two interfaces. After this change when i modify a simple configuration of a tag of vlan for example, when apply the configuration in the GUI this action delete the config of all vlans in the vmbr0

Scenary:

2 physical interfaces 1g
1 bond
1 vmbr0 associated
several vlans

auto lo
iface lo inet loopback

auto eno2np1
iface eno2np1 inet manual


auto eno1np0
iface eno1np0 inet manual


auto eno3np2
iface eno3np2 inet manual
ovs_type OVSPort
ovs_bridge vmbr1
ovs_mtu 9000

auto eno4np3
iface eno4np3 inet manual
ovs_type OVSPort
ovs_bridge vmbr2
ovs_mtu 9000

auto vlan10
iface vlan10 inet manual
ovs_type OVSIntPort
ovs_bridge vmbr0
ovs_options tag=10


auto vlan30
iface vlan30 inet manual
ovs_type OVSIntPort
ovs_bridge vmbr0
ovs_options tag=30


auto vlan110
iface vlan110 inet manual
ovs_type OVSIntPort
ovs_bridge vmbr0
ovs_options tag=110


auto vlan130
iface vlan130 inet manual
ovs_type OVSIntPort
ovs_bridge vmbr0
ovs_options tag=130


auto vlan150
iface vlan150 inet manual
ovs_type OVSIntPort
ovs_bridge vmbr0
ovs_options tag=150


auto vlan210
iface vlan210 inet static
address 192.168.210.110/22
ovs_type OVSIntPort
ovs_bridge vmbr2
ovs_options tag=210


auto vlan200
iface vlan200 inet manual
ovs_type OVSIntPort
ovs_bridge vmbr0
ovs_options tag=200


auto bond0
iface bond0 inet manual
ovs_bonds eno1np0 eno2np1
ovs_type OVSBond
ovs_bridge vmbr0
ovs_options lacp=active bond_mode=balance-tcp

auto vmbr0
iface vmbr0 inet static
address 192.168.100.110/24
gateway 192.168.100.1
ovs_type OVSBridge
ovs_ports bond0


auto vmbr2
iface vmbr2 inet static
address 192.168.190.110/24
ovs_type OVSBridge
ovs_ports eno4np3 vlan210
ovs_mtu 9000


auto vmbr1
iface vmbr1 inet static
address 192.168.180.110/24
ovs_type OVSBridge
ovs_ports eno3np2
ovs_mtu 9000


When i change in the GUI for example the tag of vlan10 all vlans in vmbr is reset (whithout config) except vlan210 that is associated to other vmbr (not vmbr0)

iface vlan10 inet manual

iface vlan110 inet manual

iface vlan130 inet manual

iface vlan150 inet manual

iface vlan200 inet manual

iface vlan30 inet manual

But if I change it in the file config interfaces and restart the networking service all is right

When the config is applied the log show this

2025-11-20T10:58:01.717190+01:00 server pvedaemon[2288]: <alberto.nieto@XERIDIA> starting task UPID:snowbros:0000B4A6:0004413F:691EE629:srvreload:networking:alberto.nieto@XERIDIA:
2025-11-20T10:58:02.034331+01:00 server ovs-vsctl: ovs|00001|vsctl|INFO|Called as /usr/bin/ovs-vsctl -- --may-exist add-br vmbr1 -- --if-exists clear bridge vmbr1 auto_attach controller external-ids fail_mode flood_vlans ipfix mirrors netflow other_config protocols sflow -- --if-exists clear interface vmbr1 mtu_request external-ids other_config options -- set Interface vmbr1 mtu_request=9000
2025-11-20T10:58:02.048859+01:00 server ovs-vsctl: ovs|00001|vsctl|INFO|Called as /usr/bin/ovs-vsctl -- --may-exist add-port vmbr1 eno3np2 -- --if-exists clear port eno3np2 bond_active_slave bond_mode cvlans external_ids lacp mac other_config qos tag trunks vlan_mode -- --if-exists clear interface eno3np2 mtu_request external-ids other_config options -- set Interface eno3np2 mtu_request=9000
2025-11-20T10:58:02.070880+01:00 server ovs-vsctl: ovs|00001|vsctl|INFO|Called as /usr/bin/ovs-vsctl -- --may-exist add-br vmbr2 -- --if-exists clear bridge vmbr2 auto_attach controller external-ids fail_mode flood_vlans ipfix mirrors netflow other_config protocols sflow -- --if-exists clear interface vmbr2 mtu_request external-ids other_config options -- set Interface vmbr2 mtu_request=9000
2025-11-20T10:58:02.086914+01:00 server ovs-vsctl: ovs|00001|vsctl|INFO|Called as /usr/bin/ovs-vsctl -- --may-exist add-port vmbr2 eno4np3 -- --if-exists clear port eno4np3 bond_active_slave bond_mode cvlans external_ids lacp mac other_config qos tag trunks vlan_mode -- --if-exists clear interface eno4np3 mtu_request external-ids other_config options -- set Interface eno4np3 mtu_request=9000
2025-11-20T10:58:02.101639+01:00 server ovs-vsctl: ovs|00001|vsctl|INFO|Called as /usr/bin/ovs-vsctl -- --may-exist add-port vmbr2 vlan210 -- --if-exists clear port vlan210 bond_active_slave bond_mode cvlans external_ids lacp mac other_config qos tag trunks vlan_mode -- --if-exists clear interface vlan210 mtu_request external-ids other_config options -- set Port vlan210 tag=210 -- set Interface vlan210 type=internal -- set Interface vlan210 mtu_request=9000
2025-11-20T10:58:02.122759+01:00 server ovs-vsctl: ovs|00001|vsctl|INFO|Called as /usr/bin/ovs-vsctl -- --may-exist add-br vmbr0 -- --if-exists del-port vmbr0 vlan10 -- --if-exists del-port vmbr0 vlan130 -- --if-exists del-port vmbr0 vlan200 -- --if-exists del-port vmbr0 vlan110 -- --if-exists del-port vmbr0 vlan30 -- --if-exists del-port vmbr0 vlan150 -- --if-exists clear bridge vmbr0 auto_attach controller external-ids fail_mode flood_vlans ipfix mirrors netflow other_config protocols sflow -- --if-exists clear interface vmbr0 mtu_request external-ids other_config options
2025-11-20T10:58:02.127007+01:00 server kernel: vlan10: left promiscuous mode
2025-11-20T10:58:02.151014+01:00 server kernel: vlan200: left promiscuous mode
2025-11-20T10:58:02.172007+01:00 server kernel: vlan150: left promiscuous mode
2025-11-20T10:58:02.191009+01:00 server kernel: vlan130: left promiscuous mode
2025-11-20T10:58:02.210010+01:00 server kernel: vlan110: left promiscuous mode
2025-11-20T10:58:02.228992+01:00 server kernel: vlan30: left promiscuous mode
2025-11-20T10:58:02.264932+01:00 server ovs-vsctl: ovs|00001|vsctl|INFO|Called as /usr/bin/ovs-vsctl -- --may-exist --fake-iface add-bond vmbr0 bond0 eno1np0 eno2np1 -- --if-exists clear port bond0 bond_active_slave bond_mode cvlans external_ids lacp mac other_config qos tag trunks vlan_mode -- --if-exists clear interface bond0 mtu_request external-ids other_config options -- set Port bond0 lacp=active bond_mode=balance-tcp


The problem
  • ovs-vsctl -- --may-exist add-br vmbr0 -- --if-exists del-port vmbr0 vlan10 -- --if-exists del-port vmbr0 vlan130 -- --if-exists del-port vmbr0 vlan200 -- --if-exists del-port vmbr0 vlan110 -- --if-exists del-port vmbr0 vlan30 -- --if-exists del-port vmbr0 vlan150 -- --if-exists clear bridge vmbr0 ...
    • Proxmox when process vmbr0 execute del-port for all interfaces vlanX in the vmbr0.
    • The next step is clear bridge vmbr0, (delete vmbr0)
    • After delete this ports, Proxmox not add the interfaces vlan with type=internal and tag=X but in the vlan210 en vmbr2 yes
  • Recreate bond0 in vmbr0:
    • ovs-vsctl -- --may-exist --fake-iface add-bond vmbr0 bond0 eno1np0 eno2np1 ...
Is a bug in proxmox networking or is a band configuration of the bond?
 
To solve this add the vlans in the vmbr0 config (not only bond0) with the parameter ovs_ports

auto vmbr0
iface vmbr0 inet static
address 192.168.100.110/24
gateway 192.168.100.1
ovs_type OVSBridge
ovs_ports bond0 vlan10 vlan30 vlan110 vlan130 vlan150 vlan200
 
Last edited: