FreeBSD LAG setup with port-channel

I needed more bandwidth to the network for our storage server, so as FreeBSD now supports LAG, we might as well use it. First job is to configure the switch with a port channel. We are using a Cisco 2960G

interface GigabitEthernet0/8
 description *** NAS1 Pt1 ***
 switchport access vlan XX
 switchport mode access
 channel-protocol lacp
 channel-group 1 mode active

interface GigabitEthernet0/9
 description *** NAS1 Pt2 ***
 switchport access vlan XX
 switchport mode access
 channel-protocol lacp
 channel-group 1 mode active

Next we need to add the FreeBSD config. Normally you can add this straight in, but i did it remotely so set up the /etc/rc.conf file in advance, then rebooted for it to take effect. Here is the snippet from the /etc/rc.conf

#
# LAG CONFIG
#
ifconfig_bce0="up"
ifconfig_bce1="up"
cloned_interfaces="lagg0"
ifconfig_lagg0="laggproto lacp laggport bce0 laggport bce1 172.16.0.243/24"

All came back after a reboot, we can check the status of the interface with:

ifconfg
bce0: flags=8843 metric 0 mtu 1500
	options=c01bb
	ether 78:2b:cb:2a:18:07
	inet6 fe80::7a2b:cbff:fe2a:1807%bce0 prefixlen 64 scopeid 0x1 
	nd6 options=29
	media: Ethernet autoselect (1000baseT )
	status: active
bce1: flags=8843 metric 0 mtu 1500
	options=c01bb
	ether 78:2b:cb:2a:18:07
	inet6 fe80::7a2b:cbff:fe2a:1808%bce1 prefixlen 64 scopeid 0x2 
	nd6 options=29
	media: Ethernet autoselect (1000baseT )
	status: active
lagg0: flags=8843 metric 0 mtu 1500
	options=c01bb
	ether 78:2b:cb:2a:18:07
	inet 172.16.0.243 netmask 0xffffff00 broadcast 172.16.0.255
	inet6 fe80::7a2b:cbff:fe2a:1807%lagg0 prefixlen 64 scopeid 0xd 
	nd6 options=29
	media: Ethernet autoselect
	status: active
	laggproto lacp
	laggport: bce1 flags=1c
	laggport: bce0 flags=1c

Now we can check the switch is ‘lagging’ nicely on the switch:

GCIFL-ACC4#sh lacp neighbor        
Flags:  S - Device is requesting Slow LACPDUs 
        F - Device is requesting Fast LACPDUs
        A - Device is in Active mode       P - Device is in Passive mode     

Channel group 1 neighbors

Partner's information:

                  LACP port                        Admin  Oper   Port    Port
Port      Flags   Priority  Dev ID          Age    key    Key    Number  State
Gi0/8     SA      32768     782b.cb2a.1807  21s    0x0    0x1B0  0x1     0x3D  
Gi0/9     SA      32768     782b.cb2a.1807  21s    0x0    0x1B0  0x2     0x3D  

All looks good so I’ll be doing some speed tests later on.

UPDATE: As expected we don’t see 2GB on a single stream, but as soon as multiple machines connect to the test server the counters start to move on both ‘member’ interfaces.

This entry was posted in Cisco, FreeBSD Administration and tagged , , . Bookmark the permalink.

Leave a Reply