配置lagg, 实现cisco 2950 与Freebsd 7.0链路聚合笔记

(编辑:jimmy 日期: 2024/11/15 浏览:2)

lagg 支持 IEEE 802.3ad 链路聚合控制协议 (LACP) 和标记协议。 LACP 能够在节点与若干链路聚合组之间协商链路。 每一个链路聚合组 (LAG) 由一组相同速度、以全双工模式运行的网口组成。 流量在 LAG 中的网口之间, 会以总速度最大的原则进行分摊。当物理链路发生变化时, 链路聚合会迅速适应变动形成新的配置。

一、调入lagg内核模块
方法1. 加入内核并重编和加载,我用此方法来实现
device lagg

方法2.以module调入(kldload), 注意调入前先确认lagg.ko模块存在于/boot/kernel/
if_lagg_load="YES"

二、在rc.conf下配置lagg。
假设网卡标识为bge0和bge1

ifconfig_bge0="up"
ifconfig_bge1="up"
cloned_interfaces="lagg0"
ifconfig_lagg0="laggproto lacp laggport bge0 laggport bge1 192.168.10.21 netmask 255.255.255.0"


三、cisco 2950下配置channel-protocol和channel-group.
# show run 的有关channel-protocol的内容
interface FastEthernet0/23
 channel-group 6 mode active
 channel-protocol lacp
!
interface FastEthernet0/24
 channel-group 6 mode active
 channel-protocol lacp
!

具体配置:
# enable
# conf t
# int fa0/24
# channel-protocol lacp
# channel-group 6 mode active
# exit
# int fa0/23
# channel-protocol lacp
# channel-group 6 mode active
# exit
# exit
# write

四、重启pc, 这样就可以实现FreeBSD 的两个网口作为一个负载均衡和故障转移链路聚合组接到交换机上。
A. FreeBSD上的状态. 
#ifconfig 
root@s2[~]# ifconfig
bge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
        ether 00:0f:20:32:5a:af
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
        lagg: laggdev lagg0
bge1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
        ether 00:0f:20:32:5a:af
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
        lagg: laggdev lagg0
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        inet 127.0.0.1 netmask 0xff000000 
lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
        ether 00:0f:20:32:5a:af
        inet 192.168.10.21 netmask 0xffffff00 broadcast 192.168.10.255
        media: Ethernet autoselect
        status: active
        laggproto lacp
        laggport: bge1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
        laggport: bge0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>

B. 在交换机上的状态.
swicth#show lacp 6 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 6 neighbors

Partner's information:

                  LACP port                        Oper    Port     Port
Port      Flags   Priority  Dev ID         Age     Key     Number   State
Fa0/23    SA      32768     000f.2032.5aaf   3s    0x86    0x1      0x3D 
Fa0/24    SA      32768     000f.2032.5aaf   5s    0x86    0x2      0x3D

swicth#show lacp 6 counters
             LACPDUs         Marker      Marker Response    LACPDUs
Port       Sent   Recv     Sent   Recv     Sent   Recv      Pkts Err
---------------------------------------------------------------------
Channel group: 6
Fa0/23      2816   2603     0      1        1      0         0    ## 这里可以看到流量是平均分担的. 
Fa0/24      2818   2605     0      3        3      0         0