[SOLVED] Bridge ageing time not configurable (brctl setageing .. / bridge_ageing 0)

proxmox_fan

New Member
May 3, 2016
4
0
1
Since latest update to Proxmox 4.2 on 27 april 2016 setting parameter “/sbin/brctl setageing vmbr1 0” gives
me the following error: “set ageing time failed: Numerical result out of range”

I use this parameter in the following setup to get the ethernet traffic on my IDS (virtual host):

Switch Mirror/Monitor port ——-> physical vmhost eth1 ——> vmbr1 ——-> Virtual Host IDS eth1

On eth1 (physical vmhost) i receive al the mirrored traffic from my switch. On the Virtual Host IDS eth1
i only receive broadcast traffic. (checked with tcpdump)

command: “brctl showstp vmbr1” shows:
vmbr1
<snip>
ageing time 300.00
<snip>

Also tried this:
/etc/network/interfaces
<snip>
auto vmbr1
iface vmbr1 inet manual
bridge_ports eth1
bridge_ageing 0
bridge_stp off
bridge_fd 0
<snip>

Results in error message in /var/log/syslog:
Apr 30 13:59:44 vmhost networking[4267]: Configuring network interfaces...set ageing time failed: Numerical result out of range

Before upgrade to Proxmox 4.2 this aging time was 0, and the bridge was behaving like a hub.
Perfect for getting the Mirrored traffic on my virtual IDS software.

Is there a solution for this strange behavior ? Is it a bug ? Is it a kernel problem ?
Can i downgrade ? (howto….) Is a workaround available ?

These are the software versions in use:

root@vmhost:~# pveversion -v
proxmox-ve: 4.2-48 (running kernel: 4.4.6-1-pve)
pve-manager: 4.2-2 (running version: 4.2-2/725d76f0)
pve-kernel-4.4.6-1-pve: 4.4.6-48
pve-kernel-4.2.6-1-pve: 4.2.6-36
pve-kernel-4.2.8-1-pve: 4.2.8-41
lvm2: 2.02.116-pve2
corosync-pve: 2.3.5-2
libqb0: 1.0-1
pve-cluster: 4.0-39
qemu-server: 4.0-72
pve-firmware: 1.1-8
libpve-common-perl: 4.0-59
libpve-access-control: 4.0-16
libpve-storage-perl: 4.0-50
pve-libspice-server1: 0.12.5-2
vncterm: 1.2-1
pve-qemu-kvm: 2.5-14
pve-container: 1.0-62
pve-firewall: 2.0-25
pve-ha-manager: 1.0-28
ksm-control-daemon: 1.2-1
glusterfs-client: 3.5.2-2+deb8u1
lxc-pve: 1.1.5-7
lxcfs: 2.0.0-pve2
cgmanager: 0.39-pve1
criu: 1.6.0-1
zfsutils: 0.6.5-pve9~jessie

root@vmhost:~# /sbin/brctl --version
bridge-utils, 1.5

Best Regards.
 
I'm seeing this problem as well.

root@fury:~# brctl setageing vmbr4 0
set ageing time failed: Numerical result out of range

I have also found that 10 seems to be lowest value now:

root@fury:~# brctl setageing vmbr4 9
set ageing time failed: Numerical result out of range
root@fury:~# brctl setageing vmbr4 10
set ageing time failed: Operation not supported
 
This seems to be tied to the kernel. This works:

root@ajanta:~# uname -a
Linux ajanta 4.2.8-1-pve #1 SMP Sat Mar 19 10:44:29 CET 2016 x86_64 GNU/Linux
root@ajanta:~# brctl setageing vmbr0 0

But this does not:
root@gatimaan:~# uname -a
Linux gatimaan 4.4.6-1-pve #1 SMP Thu Apr 21 11:25:40 CEST 2016 x86_64 GNU/Linux
root@gatimaan:~# brctl setageing vmbr0 0
set ageing time failed: Numerical result out of range

The difference is the kernel version. It works with 4.2.8-1-pve, but not with 4.4.6-1-pve
 
@troycarpenter ok, that is good to know. Thanks for testing, I have no possibility to test with different machines.

How do I change from the latest kernel 4.4.6-1-pve to 4.2.8-1-pve?
Is it easy to do and does it have impact on my virtual machines?
 
If you have console access to the host during bootup, you can select the 4.2.8-1-pve kernel through the grub menu. I'm not sure how to make that permanent because the kernel you want is hidden is a sub-menu. I wasn't able to change the grub configuration to automatically select the one I wanted automatically. That will require digging a bit further into how the Proxmox grub menu is created. However, I don't reboot my hosts too often, so I'm trusting they will fix the issue and I won't have to modify grub to boot the older kernel.

It shouldn't have any impact on your VMs, except that they will be down during the reboot of the host.
 
I changed the kernel from pve-kernel-4.4.6-1-pve: 4.4.6-48 to pve-kernel-4.2.8-1-pve: 4.2.8-41

I made the changes permanent for now by modifiying /etc/default/grub via the following steps:

1) check which kernels you have by looking in /boot/ , find the right one
2) copy grub to grub.old ; keep the last working and original grub config file
3) change GRUB_DEFAULT=0 to
GRUB_DEFAULT='Advanced options for Proxmox Virtual Environment GNU/Linux>Proxmox Virtual Environment GNU/Linux, with Linux 4.2.8-1-pve'
4) update-grub
5) stop your vm's and restart proxmox
6) check after reboot if setageing = 0 via brctl showstp <bridgenr>

*at step 4 you can receive an error, adjust the boot string then.
 
this seems to be fixed in the upstream kernel 4.4.8 - I am compiling at the moment ;) Ubuntu is expected to release their kernel based on 4.4.8 on Monday, and we will probably release our kernel based on that soon after (to pvetest and/or pve-no-subscription first). I could provide you with a test kernel before that if desired.
 
this will be fixed in the new kernel.
 
Thanks Fabian for your update on the new kernel.

I just performed a rollback of my changed grub config, now the original grub config is active again without the workaround.
Then refresh and update, now the new kernel version pve-kernel-4.4.8-1-pve: 4.4.8-49 is installed.
After rebooting proxmox verified that the new kernel is active. It is !
Parameter setting brctl setageing and configuration in interfaces config works fine again without error messages.

Problem solved.
Thanks Troy and Fabian for your cooperation and sharing info, it helped me finding a workaround and solution.
 

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!