Problem with SDN and management interface

Sebastian Salmhofer

Renowned Member
Nov 11, 2012
20
2
68
Paraguay
Hi everyone,

I just updated to from 7.4 to 8.2 and wanted to look into the new SDN features. I have one vlan aware vmbr with one vlan interface on it that I am using for the management IP of the PVE host. It this vlan (101) are also other servers. My problem is, that SDN apparently doesn't like that configuration.
I created a VLAN Zone and some VNets with vlan tags. They all work fine, except for the one with vlan id 101. When I apply it I get this error:

Code:
internal : error: internal: bridge port vmbr0.101 does not exist
internal : warning: internal: apply bridge ports settings: bridge configuration failed (missing ports)

TASK ERROR: command 'ifreload -a' failed: exit code 1

I remember that sometime back you had to configure the vlan interface as vmbr0.101 instead of vlan101 with vlan-raw-device vmbr0. But if I remember correctly, this stopped working with some version and you had to do it the new way. Do I have to do it the old way again?

This is my interface config:
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

iface enx9e3187038678 inet manual

iface enp194s0f0 inet manual

iface enp194s0f1 inet manual

auto vmbr0
iface vmbr0 inet manual
        bridge-ports enp194s0f0
        bridge-stp off
        bridge-fd 0
        bridge-vlan-aware yes
        bridge-vids 2-4094

auto vlan101
iface vlan101 inet static
        address 10.20.101.10/24
        gateway 10.20.101.1
        vlan-raw-device vmbr0

source /etc/network/interfaces.d/*

Thats my VNet config: everything works until I add the one with vlan id 101.
vnets.PNG

Thanks for any input on this
Sebastian
 
I remember that sometime back you had to configure the vlan interface as vmbr0.101 instead of vlan101 with vlan-raw-device vmbr0. But if I remember correctly, this stopped working with some version and you had to do it the new way. Do I have to do it the old way again?

technically, this is the same. I don't see why vmbr0.101 syntax don't work for you.


The sdn use vmbr0.101 syntax internally, that's why it's conflicting with your vlan101.
 
I tried it with the vmbr0.101 configuration now. That itself does work the same as with vlan101. I don't remember the reason I switched over to the vlan101 config, I thought the old way stopped working, but maybe there was another reason.
I can also apply the SDN config now, but apparently that overrules the IP address config of the vmbr0.101 interface. I had to connect via remote kvm to change the config back. When I checked with ''ip address show dev vmbr0.101'' there was no IP address anymore.
 
I tried it with the vmbr0.101 configuration now. That itself does work the same as with vlan101. I don't remember the reason I switched over to the vlan101 config, I thought the old way stopped working, but maybe there was another reason.
I can also apply the SDN config now, but apparently that overrules the IP address config of the vmbr0.101 interface. I had to connect via remote kvm to change the config back. When I checked with ''ip address show dev vmbr0.101'' there was no IP address anymore.
The sdn configuration shouldn't overrwrite the ip address. the config is generated in /etc/network/interfaces.d/sdn , and merged (not overwritten) with interfaces defined in /etc/network/interfaces .

But, as with sdn , the vmbr0.101 is plugged to a vnet, you can't defined ip on vmbr0.101 anymore. (you can't define ip on an interface slave of another bridge (vnet)).

The best way, is to define your ip address directly on the vnet

you can simply edit /etc/network/interfaces, and add:

Code:
iface <vnetname>
     address ...
     gateway ....
 
  • Like
Reactions: Sebastian Salmhofer
The sdn configuration shouldn't overrwrite the ip address. the config is generated in /etc/network/interfaces.d/sdn , and merged (not overwritten) with interfaces defined in /etc/network/interfaces .

But, as with sdn , the vmbr0.101 is plugged to a vnet, you can't defined ip on vmbr0.101 anymore. (you can't define ip on an interface slave of another bridge (vnet)).

The best way, is to define your ip address directly on the vnet

you can simply edit /etc/network/interfaces, and add:

Code:
iface <vnetname>
     address ...
     gateway ....

Thank you! That works, why didn't I think of this, it's so simple.
 
I just noticed another problem with that solution. I added a new VNet through the GUI and that removed the IP address and gateway from the config file. If I know it it's not a big deal, but it's something to watch out for.
 

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!