Lagg - lacp not working after upgrade



  • I recently updated to 2.2 from 2.1.5

    I added the correct turntables but nothing.



  • @mcrook:

    I recently updated to 2.2 from 2.1.5

    I added the correct turntables but nothing.

    Would this triggering you to the right point?
    jumbo frames on lagg not working



  • Nope, all that is default.

    Any other ideas?



  • @mcrook:

    I recently updated to 2.2 from 2.1.5

    I added the correct turntables but nothing.

    so you read & followed this in the upgrade guide?:
    https://doc.pfsense.org/index.php/Upgrade_Guide#LAGG_LACP_Behavior_Change

    LAGG LACP Behavior Change

    LAGG using LACP in FreeBSD 10.0 and newer defaults to "strict mode" being enabled, which means the lagg does not come up unless your switch is speaking LACP. This will cause your LAGG to not function after upgrade if your switch isn't using active mode LACP.

    You can retain the lagg behavior in pfSense 2.1.5 and earlier versions by adding a new system tunable under System>Advanced, System Tunables tab for the following:

    net.link.lagg.0.lacp.lacp_strict_mode

    With value set to 0. You can configure this in 2.1.5 before upgrading to 2.2, to ensure the same behavior on first boot after the upgrade. It will result in a harmless cosmetic error in the logs on 2.1.5 since the value does not exist in that version.

    If you have more than one LAGG interface configured, you will need to enter a tunable for each since that is a per-interface option. So for lagg1, you would add the following.

    net.link.lagg.1.lacp.lacp_strict_mode

    Also with the value set to 0.



  • Yes sir, I sure did. The only thing I didn't do was add the turn tables before the upgrade, so I had to reassign the lan to a different nic. But after reboot it never worked.



  • ok… "lacp not working" is a little vague.

    what doesn't it do, what errors are you getting and have you tried to remove the lacp interface and recreate it ?



  • Yes of course I did that. Still nothing.

    Any ideas?



  • Apr 16 00:10:16 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:10:16 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:10:16 kernel: partner.state=0
    Apr 16 00:10:16 kernel: maxdelay=0
    Apr 16 00:10:46 kernel: dc2: lacpdu transmit
    Apr 16 00:10:46 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0003)
    Apr 16 00:10:46 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:10:46 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:10:46 kernel: partner.state=0
    Apr 16 00:10:46 kernel: maxdelay=0
    Apr 16 00:10:46 kernel: dc3: lacpdu transmit
    Apr 16 00:10:46 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0004)
    Apr 16 00:10:46 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:10:46 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:10:46 kernel: partner.state=0
    Apr 16 00:10:46 kernel: maxdelay=0
    Apr 16 00:11:16 kernel: dc2: lacpdu transmit
    Apr 16 00:11:16 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0003)
    Apr 16 00:11:16 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:11:16 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:11:16 kernel: partner.state=0
    Apr 16 00:11:16 kernel: maxdelay=0
    Apr 16 00:11:16 kernel: dc3: lacpdu transmit
    Apr 16 00:11:16 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0004)
    Apr 16 00:11:16 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:11:16 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:11:16 kernel: partner.state=0
    Apr 16 00:11:16 kernel: maxdelay=0
    Apr 16 00:11:46 kernel: dc2: lacpdu transmit
    Apr 16 00:11:46 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0003)
    Apr 16 00:11:46 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:11:46 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:11:46 kernel: partner.state=0
    Apr 16 00:11:46 kernel: maxdelay=0
    Apr 16 00:11:46 kernel: dc3: lacpdu transmit
    Apr 16 00:11:46 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0004)
    Apr 16 00:11:46 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:11:46 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:11:46 kernel: partner.state=0
    Apr 16 00:11:46 kernel: maxdelay=0
    Apr 16 00:12:16 kernel: dc2: lacpdu transmit
    Apr 16 00:12:16 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0003)
    Apr 16 00:12:16 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:12:16 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:12:16 kernel: partner.state=0
    Apr 16 00:12:16 kernel: maxdelay=0
    Apr 16 00:12:16 kernel: dc3: lacpdu transmit
    Apr 16 00:12:16 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0004)
    Apr 16 00:12:16 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:12:16 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:12:16 kernel: partner.state=0
    Apr 16 00:12:16 kernel: maxdelay=0
    Apr 16 00:12:46 kernel: dc2: lacpdu transmit
    Apr 16 00:12:46 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0003)
    Apr 16 00:12:46 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:12:46 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:12:46 kernel: partner.state=0
    Apr 16 00:12:46 kernel: maxdelay=0
    Apr 16 00:12:46 kernel: dc3: lacpdu transmit
    Apr 16 00:12:46 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0004)
    Apr 16 00:12:46 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:12:46 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:12:46 kernel: partner.state=0
    Apr 16 00:12:46 kernel: maxdelay=0
    Apr 16 00:13:16 kernel: dc2: lacpdu transmit
    Apr 16 00:13:16 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0003)
    Apr 16 00:13:16 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:13:16 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)
    Apr 16 00:13:16 kernel: partner.state=0
    Apr 16 00:13:16 kernel: maxdelay=0
    Apr 16 00:13:16 kernel: dc3: lacpdu transmit
    Apr 16 00:13:16 kernel: actor=(8000,00-30-6E-5F-25-5E,0166,8000,0004)
    Apr 16 00:13:16 kernel: actor.state=4d <activity,aggregation,sync,defaulted>Apr 16 00:13:16 kernel: partner=(FFFF,00-00-00-00-00-00,0000,FFFF,0000)</activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted></activity,aggregation,sync,defaulted>



  • Bump

    Doesn't anyone else face this problem?

    Should I file a bug report since the turn table is being ignored?



  • The tunable works fine. What does the output of "ifconfig" show for the lagg interface(s)?



  • What turn table, dude? :o



  • lagg0: flags=8843 <up,broadcast,running,simplex,multicast>metric 0 mtu 1500
    options=80008 <vlan_mtu,linkstate>ether 00:30:6e:5f:25:5e
    inet6 fe80::230:6eff:fe5f:255e%lagg0 prefixlen 64 scopeid 0xb
    inet 192.168.25.19 netmask 0xfffffc00 broadcast 192.168.27.255
    nd6 options=21 <performnud,auto_linklocal>media: Ethernet autoselect
    status: active
    laggproto lacp lagghash l2,l3,l4
    laggport: dc3 flags=0<>
    laggport: dc2 flags=0<></performnud,auto_linklocal></vlan_mtu,linkstate></up,broadcast,running,simplex,multicast>



  • I know its been awhile but I would like to get this working



  • Maybe that's a regression in the dc driver in FreeBSD 10.x (it's for ancient NICs and probably not widely tested in more advanced configs, and not at all by us). Might want to try a different type of NIC, one like em or igb that's widely used with LACP. Or the latest 2.3 snapshot to see if it's something that was fixed between 10.1-REL and 10-STABLE.



  • I'll try a snapshot, but it seems really silly that what worked in BSD9 doesn't in BSD10, but maybe it was over looked. As far as replacing the nic, its a 4 port that came with my rack server and I have limited funds to work with, but thank you for the idea though. I might keep an eye out for a more recent switch.

    the switch by the way is an Avaya p133



  • I have changed NICs and get the same result.

    $ ifconfig lagg0
    lagg0: flags=8843 <up,broadcast,running,simplex,multicast>metric 0 mtu 1500
    options=8009b <rxcsum,txcsum,vlan_mtu,vlan_hwtagging,vlan_hwcsum,linkstate>ether 00:21:9b:fc:d4:fd
    inet6 fe80::221:9bff:fefc:d4fd%lagg0 prefixlen 64 scopeid 0xb
    inet 192.158.25.19 netmask 0xfffffc00 broadcast 192.158.27.255
    nd6 options=21 <performnud,auto_linklocal>media: Ethernet autoselect
    status: active
    laggproto lacp lagghash l2,l3,l4
    laggport: bge1 flags=0<>
    laggport: bge0 flags=0<></performnud,auto_linklocal></rxcsum,txcsum,vlan_mtu,vlan_hwtagging,vlan_hwcsum,linkstate></up,broadcast,running,simplex,multicast>


Log in to reply