lagg interface doesn't work

Eugene Grosbein eugen at grosbein.net
Thu Oct 5 08:07:06 UTC 2017


On 05.10.2017 03:25, Rainer Duffner wrote:
> Hi,
> 
> I’m trying to get a lagg(4) setup going.
> 
> This has previously been a linux host, which had to be replace on short notice.
> 
> I’ve rarely used lagg(4).
> 
> 
> Basically, we have two trunk-ports with a bunch of clans that needs to go over two 10G interface (bxe(4)).
> 
> The switch is a Cisco switch, I don’t know the exact firmware revision - I don’t configure the switches here, this a cut and paste from the admin.
> 
> The previous Linux server used „passive“ mode - it seems FreeBSD does not do that?
> 
> ***
> 
> Cisco IOS Software, IOS-XE Software, Catalyst 4500 L3 Switch Software (cat4500e-UNIVERSALK9-M),
> 
> !
> 
> !
> 
> interface Port-channel121
> description server-prod.front
> switchport
> switchport trunk allowed vlan 2000,2002,2004,2007,2012,2014
> switchport mode trunk
> mtu 9170
> spanning-tree portfast trunk
> end
> 
> !
> 
> !
> 
> interface TenGigabitEthernet1/1/15
> description server-prod.front-1.1
> switchport trunk allowed vlan 2000,2002,2004,2007,2012,2014
> switchport mode trunk
> mtu 9170
> channel-group 121 mode active
> spanning-tree portfast trunk
> end
> 
> !
> 
> interface TenGigabitEthernet2/1/15
> description server-prod.front-2.1
> switchport trunk allowed vlan 2000,2002,2004,2007,2012,2014
> switchport mode trunk
> mtu 9170
> channel-group 121 mode active
> spanning-tree portfast trunk
> end
> 
> 
> On the FreeBSD-side (11.1-AMD64), I have:
> (based on the excellent examples here: https://high5.nl/freebsd-lagg-vlan-ipfw-mini-howto)
> 
> ifconfig_bxe0="up"
> ifconfig_bxe1="up"
> cloned_interfaces="lagg0 vlan2012 vlan2007 vlan2002 vlan2004"
> #cloned_interfaces="lagg0 vlan2004"
> ifconfig_lagg0="up laggproto lacp laggport bxe0 laggport bxe1"
> 
> ifconfig_vlan2004="inet ip1 netmask 255.255.255.192 vlan 2004 vlandev lagg0"
> ifconfig_vlan2012="inet ip2 netmask 255.255.255.192 vlan 2012 vlandev lagg0 "
> ifconfig_vlan2007="inet ip3 netmask 255.255.255.240 vlan 2007 vlandev lagg0"
> ifconfig_vlan2002="inet ip4 netmask 255.255.255.192 vlan 2002 vlandev lagg0"
> 
> 
> in sysctl.conf, I added:
> net.link.lagg.lacp.default_strict_mode=0
> 
> 
> Now, this works as long as I put one of the VLAN-interfaces into promiscuous mode.
> 
> 
> When I stop tcpdump, I get messages like 
> 
> ***
> Interface stopped  DISTRIBUTING, possible flapping
> ***
> 
> and it really stops doing anything.
> 
> 
> 
> Any ideas?

There is no such thing as "vlan promiscuous mode" in FreeBSD really
and when you run tcpdump on a vlan, you enable promiscuous for its parent interface.

Promiscuous mode may disable hardware vlan processing and switch to software processing temporary.
It seems bxe(4) driver may have issues with hardware vlan processing.
Please show output of "ifconfig bxe0" command.

You should try to disable hardware vlan processing with "ifconfig bxe0 -vlanhwtag" and repeat your tests.
If it helps, you could replace ifconfig_bxe0="up" with ifconfig_bxe0="-vlanhwtag"
as temporary workaround and raise a problem report against bxe(4) driver.




More information about the freebsd-net mailing list