M-LAG(Multichassis Link Aggregation Group)即跨设备链路聚合组。如图1所示,M-LAG是将ServerA(可以是设备或主机)与另外两台设备DeviceA和DeviceB进行跨设备链路聚合,如同ServerA和一台设备建立了链路聚合关系,从而把链路可靠性从单板级提高到了设备级。

传统的聚合链路是单设备和单设备间的对接,若链路出现故障或者对端设备故障,设备或服务器将无法与对端设备继续进行通信。M-LAG的出现解决了上述问题,它是将M-LAG系统不同设备上的端口聚合到一个逻辑接口中,即使其中某台设备故障或其中一条聚合链路出现故障,也不会导致聚合链路完全失效,从而保证了数据流量的可靠传输。M-LAG在提升链路可靠性的同时还具备如下优势:
M-LAG系统的两台设备在逻辑上被虚拟成一台设备,它本身提供了一种没有环路的二层拓扑,逻辑组网更清晰,链路利用更充分。
M-LAG两台设备可以独立升级,实现效率高,业务秒级中断的目标。
因此,针对对组网可靠性要求高,对升级过程业务中断时间要求高的场景推荐使用M-LAG。
如图1所示,用户侧设备Switch(可以是交换机或主机)通过M-LAG机制与另外两台设备(SwitchA和SwitchB)进行跨设备链路聚合,共同组成一个双活系统。这样可以实现SwitchA和SwitchB共同进行流量转发的功能,保证网络的可靠性。

| 概念 | 说明 |
| DFS Group | 动态交换服务组DFS Group(Dynamic Fabric Service Group),主要用于部署M-LAG设备之间的配对,M-LAG双归设备之间的接口状态,表项等信息同步需要依赖DFS Group协议进行同步。 |
| DFS主设备 | 部署M-LAG且状态为主的设备,通常也称为M-LAG主设备。 |
| DFS备设备 | 部署M-LAG且状态为备的设备,通常也称为M-LAG备设备。 |
| 说明: | |
| DFS Group的角色区分为主和备,正常情况下,主设备和备设备同时进行业务流量的转发,转发行为没有区别,仅在故障场景下,主备设备的行为会有差别。 | |
| 双主检测链路 | 双主检测链路,又称为心跳链路,是一条三层互通链路,用于M-LAG主备设备间发送双主检测报文。 |
| 说明: | |
| 正常情况下,双主检测链路不会参与M-LAG的任何转发行为,只在故障场景下,用于检查是否出现双 主的情况。双主检测链路可以通过外部网络承载(比如,如果M-LAG上行接入IP网络,那么两台双归 设备通过IP网络可以互通,那么互通的链路就可以作为双主检测链路)。也可以单独配置一条三层可 达的链路来作为双主检测链路(比如通过管理口)。 |
|
| peer-link接口 | peer-link链路两端直连的接口均为peer-link接口。 |
| peer-link链路 | peer-link链路是一条直连链路且必须做链路聚合,用于交换协商报文及传输部分流量。接口配置为 peer-link接口后,该接口上不能再配置其它业务。 |
| 为了增加peer-link链路的可靠性,推荐采用多条链路做链路聚合。 | |
| HB DFS主设备 | 通过心跳链路来协商的状态为主的设备。 |
| 说明: | |
| 通过心跳链路报文来协商的设备HB DFS主备状态在正常情况下,对M-LAG的转发行为不会产生影响, 仅用于二次故障恢复场景下,在原DFS主设备或备设备故障恢复且peer-link链路仍然故障时,触发 HB DFS状态为备的设备上相应端口Error-Down,避免M-LAG设备在双主情况下出现的流量异常。 |
|
| HB DFS备设备 | 通过心跳链路来协商的状态为备的设备。 |
| 说明: | |
| 通过心跳链路报文来协商的设备HB DFS主备状态在正常情况下,对M-LAG的转发行为不会产生影响, 仅用于二次故障恢复场景下,在原DFS主设备或备设备故障恢复且peer-link链路仍然故障时,触发 HB DFS状态为备的设备上相应端口Error-Down,避免M-LAG设备在双主情况下出现的流量异常。 |
|
| M-LAG成员接口 | M-LAG主备设备上连接用户侧主机(或交换设备)的Eth-Trunk接口。 |
| 为了增加可靠性,推荐链路聚合配置为LACP模式。 | |
| M-LAG成员接口角色也区分主和备,与对端同步成员口信息时,状态由Down先变为Up的M-LAG成员 接口成为主M-LAG成员口,对端对应的M-LAG成员口为备。 |
|
| 说明: | |
| 仅在M-LAG接入组播场景下,M-LAG成员接口的主备角色存在转发行为差异。 | |
| 概念 | 说明 |
| DFS Group | 动态交换服务组DFS Group(Dynamic Fabric Service Group),主要用于部署M-LAG设备之间的配对,M-LAG双归设备之间的接口状态,表项等信息同步需要依赖DFS Group协议进行同步。 |
| DFS主设备 | 部署M-LAG且状态为主的设备,通常也称为M-LAG主设备。 |
| DFS备设备 | 部署M-LAG且状态为备的设备,通常也称为M-LAG备设备。 |
| 说明: | |
| DFS Group的角色区分为主和备,正常情况下,主设备和备设备同时进行业务流量的转发,转发行为没 有区别,仅在故障场景下,主备设备的行为会有差别。 |
|
| 双主检测链路 | 双主检测链路,又称为心跳链路,是一条三层互通链路,用于M-LAG主备设备间发送双主检测报文。 |
| 说明: | |
| 正常情况下,双主检测链路不会参与M-LAG的任何转发行为,只在故障场景下,用于检查是否出现双主 的情况。双主检测链路可以通过外部网络承载(比如,如果M-LAG上行接入IP网络,那么两台双归设备 通过IP网络可以互通,那么互通的链路就可以作为双主检测链路)。也可以单独配置一条三层可达的链 路来作为双主检测链路(比如通过管理口)。 |
|
| peer-link接口 | peer-link链路两端直连的接口均为peer-link接口。 |
| peer-link链路 | peer-link链路是一条直连链路且必须做链路聚合,用于交换协商报文及传输部分流量。接口配置为 peer-link接口后,该接口上不能再配置其它业务。 |
| 为了增加peer-link链路的可靠性,推荐采用多条链路做链路聚合。 | |
| HB DFS主设备 | 通过心跳链路来协商的状态为主的设备。 |
| 说明: | |
| 通过心跳链路报文来协商的设备HB DFS主备状态在正常情况下,对M-LAG的转发行为不会产生影响, 仅用于二次故障恢复场景下,在原DFS主设备或备设备故障恢复且peer-link链路仍然故障时,触发 HB DFS状态为备的设备上相应端口Error-Down,避免M-LAG设备在双主情况下出现的流量异常。 |
|
| HB DFS备设备 | 通过心跳链路来协商的状态为备的设备。 |
| 说明: | |
| 通过心跳链路报文来协商的设备HB DFS主备状态在正常情况下,对M-LAG的转发行为不会产生影响, 仅用于二次故障恢复场景下,在原DFS主设备或备设备故障恢复且peer-link链路仍然故障时,触发 HB DFS状态为备的设备上相应端口Error-Down,避免M-LAG设备在双主情况下出现的流量异常。 |
|
| M-LAG成员接口 | M-LAG主备设备上连接用户侧主机(或交换设备)的Eth-Trunk接口。 |
| 为了增加可靠性,推荐链路聚合配置为LACP模式。 | |
| M-LAG成员接口角色也区分主和备,与对端同步成员口信息时,状态由Down先变为Up的M-LAG成员 接口成为主M-LAG成员口,对端对应的M-LAG成员口为备。 |
|
| 说明: | |
| 仅在M-LAG接入组播场景下,M-LAG成员接口的主备角色存在转发行为差异。 |
M-LAG本身具有防环机制,可以构造出一个无环网络。那么M-LAG是如何构造无环网络的呢?如图1所示,从接入设备或网络侧到达M-LAG配对设备的单播流量,会优先从本地转发出去,peer-link链路一般情况下不用来转发数据流量。当流量通过peer-link链路广播到对端M-LAG设备,在peer-link链路与M-LAG成员口之间设置单方向的流量隔离,即从peer-link口进来的流量不会再从M-LAG口转发出去,所以不会形成环路,这就是M-LAG单向隔离机制。

M-LAG作为一种跨设备链路聚合的技术,把链路可靠性从单板级提高到了设备级。如果出现故障(不管是链路故障、设备故障还是peer-link故障),M-LAG都能够保证正常的业务不受影响,下面介绍M-LAG在故障情况下是如何保障业务的正常运行的。
上行链路故障

如图1所示,M-LAG接入普通以太网场景,由于M-LAG主设备的上行链路故障,通过M-LAG主设备的流量均经过peer-link链路进行转发。
当故障的上行链路恰好为双主检测链路,此时对于M-LAG正常工作没有影响。一旦peer-link也发生故障,M-LAG出现双主冲突,双主检测又无法进行,则会出现丢包现象。
下行链路故障

当下行M-LAG成员口故障时,DFS Group主备状态不会变化,但如果故障M-LAG成员口状态为主,则备M-LAG成员口状态由备升主,流量切换到该链路上进行转发。发生故障的M-LAG成员口所在的链路状态变为Down,双归场景变为单归场景。故障M-LAG成员口的MAC地址指向peer-link接口。在故障M-LAG成员口恢复后,M-LAG成员口状态不再回切,由备升主的M-LAG成员口状态仍为主,原主M-LAG成员口在故障恢复后状态为备。可以执行display dfs-group dfs-group-id node node-id m-lag命令来查看成员接口当前状态。
对于组播源在网络侧,组播成员在接入侧的组播流量,当M-LAG主设备的M-LAG成员口故障时,通过M-LAG同步报文通知对端设备进行组播表项刷新,M-LAG主备设备不再按照组播地址奇偶进行负载分担,而是所有组播流量都由端口状态Up的M-LAG备设备进行转发,反之亦然。
M-LAG主设备故障

M-LAG主设备故障,M-LAG备设备将升级为主,其设备侧Eth-Trunk链路状态仍为Up,流量转发状态不变,继续转发流量。M-LAG主设备侧Eth-Trunk链路状态变为Down,双归场景变为单归场景。
如果是M-LAG备设备发生故障,M-LAG的主备状态不会发生变化,M-LAG备设备侧Eth-Trunk链路状态变为Down。M-LAG主设备侧Eth-Trunk链路状态仍为Up,流量转发状态不变,继续转发流量,双归场景变为单归场景。
peer-link故障

缺省情况下,M-LAG应用在普通以太网络、VXLAN网络或IP网络的双归接入,peer-link故障但双主检测心跳状态正常时,会触发M-LAG备设备上除逻辑端口、管理网口、peer-link接口和堆叠口以外的其他接口处于Error-Down状态。M-LAG应用在TRILL网络的双归接入,peer-link故障但双主检测心跳状态正常时,会触发M-LAG备设备上的M-LAG接口处于Error-Down状态。
peer-link故障恢复时,处于Error Down状态的M-LAG接口默认将在240s后自动恢复为Up状态,处于Error Down状态的其它接口将立即自动恢复为Up状态。
通过命令可以配置M-LAG场景下peer-link故障但双主检测心跳状态正常时,触发Error-Down的端口包括逻辑端口。如当M-LAG应用在VXLAN网络或IP网络的双归接入,peer-link故障但双主检测状态正常时,会触发M-LAG备设备上VLANIF接口、VBDIF接口、LoopBack接口以及M-LAG成员口处于Error-Down状态。
在配置M-LAG场景下peer-link故障但双主检测心跳状态正常时触发端口Error-Down的范围包括逻辑端口后,若M-LAG系统peer-link接口故障恢复,为保证大规格VLANIF接口下的ARP同步正常,设备将在DFS Group配对成功后延迟6s恢复VLANIF接口、VBDIF接口、LoopBack接口为Up状态。此时,如果在接口下配置了接口三层协议状态延时Up时间,则VLANIF接口、VBDIF接口、LoopBack接口恢复Up状态的延迟时间为两者之和。
通过在端口下配置命令可以灵活配置某个端口在M-LAG场景下peer-link故障但双主检测心跳状态正常时是否将端口Error-Down。配置和设备端口Error-Down对应情况如表1所示。
| — | — | 表1 设备在peer-link故障但双主检测正常时接口Error-Down情况 |
| — | — | — |
| 设备配置情况 | M-LAG接入普通以太网络、VXLAN网络或IP网络 | |
| — | — | — |
| 设备缺省情况 | 除逻辑端口、管理网口、peer-link接口和堆叠口以外的接口处于ERROR DOWN状态。 | |
| 设备仅配置suspend功能 | 仅M-LAG成员口以及配置该功能的接口处于ERROR DOWN状态。 | |
| 设备仅配置reserved功能 | 除配置该功能的接口、逻辑端口、管理网口、peer-link接口和堆叠口以外的接口处于ERROR DOWN状态。 | |
| 设备同时配置suspend功能和reserved功能 | 仅M-LAG成员口以及配置suspend功能的接口处于ERROR DOWN状态。 |
M-LAG二次故障(peer-link故障+M-LAG设备故障)

如图5中2所示,在M-LAG应用于双归接入时,当peer-link故障但双主检测心跳状态正常会触发DFS备设备上某些端口处于Error-Down状态,此时DFS状态为主的设备继续工作。在该场景的基础上,若DFS状态为主的设备由于断电、主控板损坏、整机故障重启等其他故障导致主设备不能工作时,由图5中3所示,此时M-LAG主备设备皆不能正常转发流量。
在该场景下,可以借助M-LAG二次故障增强功能来实现该故障场景下业务不中断的可靠性要求,如图5所示,通过M-LAG二次故障增强功能来说明不同的故障阶段和产生的行为:
若配置LACP M-LAG的系统ID在一定时间内切换为本设备的LACP系统ID,则在LACP协商时接入侧仅选择上行链路中的一条链路为活动链路,实际流量转发正常。
若配置LACP M-LAG的系统ID为缺省情况,即系统ID不回切,M-LAG两台设备均使用同一系统ID来与接入侧设备协商,链路均能被选中成为活动链路。该场景下,由于peer-link链路仍然故障,M-LAG两端无法同步对端的优先级、系统MAC等信息,形成M-LAG两台设备双主的情况,可能导致组播流量异常。此时,如图6所示,可以借助心跳链路报文中携带必要的DFS Group协商主备的必要信息(如DFS Group优先级、系统MAC等)来协商M-LAG两台设备的HB DFS主备信息,触发HB DFS状态为备的设备上某些端口处于ERROR DOWN(端口Error-Down范围可以参见peer-link故障)状态,HB DFS状态为主的设备继续工作。
若在peer-link故障后,二次故障的设备为DFS状态为备的设备,则此时不会对流量转发行为产生影响,仍由DFS状态为主的设备进行流量转发。

组网需求
如图1所示,通过配置M-LAG双归接入IP网络可以满足以下要求:

配置思路
采用如下的思路配置M-LAG双归接入IP网络:
在Switch上配置上行接口绑定在一个Eth-Trunk中。
分别在SwitchA和SwitchB上配置V-STP、DFS Group、peer-link和M-LAG接口。
分别在SwitchA和SwitchB上配置VLANIF接口IP地址和MAC地址,作为接入设备的双活网关。
分别在SwitchA、SwitchB和SwitchC上配置OSPF功能,保证三层互通。
在V-STP场景下,为防止接口因生成树协议计算结果被阻塞,可以通过配置主接口实现三层互通或者去使能IP网络侧的生成树协议。
分别在SwitchA和SwitchB上配置Monitor Link关联上行接口和下行接口,避免因上行链路故障导致用户侧流量无法转发而丢弃。
在Switch上配置上行接口绑定在一个Eth-Trunk中
# 配置Switch。
system-view
[~HUAWEI] sysname Switch
[*HUAWEI] commit
[~Switch] vlan batch 11
[*Switch] interface eth-trunk 20
[*Switch-Eth-Trunk20] mode lacp-static
[*Switch-Eth-Trunk20] port link-type trunk
[*Switch-Eth-Trunk20] port trunk allow-pass vlan 11
[*Switch-Eth-Trunk20] trunkport 10ge 1/0/1 to 1/0/4
[*Switch-Eth-Trunk20] quit
[*Switch] commit
分别在SwitchA和SwitchB上配置V-STP、DFS Group、peer-link和M-LAG接口
# 配置SwitchA。
system-view
[~HUAWEI] sysname SwitchA
[*HUAWEI] commit
[~SwitchA] stp mode rstp
[*SwitchA] stp v-stp enable
[*SwitchA] interface loopback 0
[*SwitchA-LoopBack0] ip address 10.1.1.1 32
[*SwitchA-LoopBack0] quit
[*SwitchA] dfs-group 1
[*SwitchA-dfs-group-1] source ip 10.1.1.1
[*SwitchA-dfs-group-1] priority 150
[*SwitchA-dfs-group-1] quit
[*SwitchA] interface eth-trunk 1
[*SwitchA-Eth-Trunk1] trunkport 10ge 1/0/4
[*SwitchA-Eth-Trunk1] trunkport 10ge 2/0/5
[*SwitchA-Eth-Trunk1] mode lacp-static
[*SwitchA-Eth-Trunk1] peer-link 1
[*SwitchA-Eth-Trunk1] quit
[*SwitchA] vlan batch 11
[*SwitchA] interface eth-trunk 10
[*SwitchA-Eth-Trunk10] mode lacp-static
[*SwitchA-Eth-Trunk10] port link-type trunk
[*SwitchA-Eth-Trunk10] port trunk allow-pass vlan 11
[*SwitchA-Eth-Trunk10] trunkport 10ge 1/0/2
[*SwitchA-Eth-Trunk10] trunkport 10ge 1/0/3
[*SwitchA-Eth-Trunk10] dfs-group 1 m-lag 1
[*SwitchA-Eth-Trunk10] quit
[*SwitchA] commit
# 配置SwitchB。
system-view
[~HUAWEI] sysname SwitchB
[*HUAWEI] commit
[~SwitchB] stp mode rstp
[*SwitchB] stp v-stp enable
[*SwitchB] interface loopback 0
[*SwitchB-LoopBack0] ip address 10.1.1.2 32
[*SwitchB-LoopBack0] quit
[*SwitchB] dfs-group 1
[*SwitchB-dfs-group-1] source ip 10.1.1.2
[*SwitchB-dfs-group-1] priority 120
[*SwitchB-dfs-group-1] quit
[*SwitchB] interface eth-trunk 1
[*SwitchB-Eth-Trunk1] trunkport 10ge 1/0/4
[*SwitchB-Eth-Trunk1] trunkport 10ge 2/0/5
[*SwitchB-Eth-Trunk1] mode lacp-static
[*SwitchB-Eth-Trunk1] peer-link 1
[*SwitchB-Eth-Trunk1] quit
[*SwitchB] vlan batch 11
[*SwitchB] interface eth-trunk 10
[*SwitchB-Eth-Trunk10] mode lacp-static
[*SwitchB-Eth-Trunk10] port link-type trunk
[*SwitchB-Eth-Trunk10] port trunk allow-pass vlan 11
[*SwitchB-Eth-Trunk10] trunkport 10ge 1/0/2
[*SwitchB-Eth-Trunk10] trunkport 10ge 1/0/3
[*SwitchB-Eth-Trunk10] dfs-group 1 m-lag 1
[*SwitchB-Eth-Trunk10] quit
[*SwitchB] commit
分别在SwitchA和SwitchB上配置VLANIF接口IP地址和MAC地址,作为接入设备的双活网关
两端的虚拟IP和虚拟MAC配置要求完全一致,目的是为M-LAG提供相同的虚拟IP和虚拟MAC。
# 配置SwitchA。
[~SwitchA] interface vlanif 11
[*SwitchA-Vlanif11] ip address 10.2.1.1 24
[*SwitchA-Vlanif11] mac-address 0000-5e00-0101
[*SwitchA-Vlanif11] quit
[*SwitchA] commit
# 配置SwitchB。
[~SwitchB] interface vlanif 11
[*SwitchB-Vlanif11] ip address 10.2.1.1 24
[*SwitchB-Vlanif11] mac-address 0000-5e00-0101
[*SwitchB-Vlanif11] quit
[*SwitchB] commit
分别在SwitchA、SwitchB和SwitchC上配置OSPF功能,保证三层互通
# 配置SwitchA。
[~SwitchA] interface 10ge 1/0/1
[~SwitchA-10GE1/0/1] undo portswitch
[*SwitchA-10GE1/0/1] ip address 10.3.1.1 24
[*SwitchA-10GE1/0/1] quit
[*SwitchA] ospf 1
[*SwitchA-ospf-1] area 0
[*SwitchA-ospf-1-area-0.0.0.0] network 10.1.1.1 0.0.0.0
[*SwitchA-ospf-1-area-0.0.0.0] network 10.2.1.0 0.0.0.255
[*SwitchA-ospf-1-area-0.0.0.0] network 10.3.1.0 0.0.0.255
[*SwitchA-ospf-1-area-0.0.0.0] quit
[*SwitchA-ospf-1] quit
[*SwitchA] commit
# 配置SwitchB。
[~SwitchB] interface 10ge 1/0/1
[~SwitchB-10GE1/0/1] undo portswitch
[*SwitchB-10GE1/0/1] ip address 10.4.1.1 24
[*SwitchB-10GE1/0/1] quit
[*SwitchB] ospf 1
[*SwitchB-ospf-1] area 0
[*SwitchB-ospf-1-area-0.0.0.0] network 10.1.1.2 0.0.0.0
[*SwitchB-ospf-1-area-0.0.0.0] network 10.2.1.0 0.0.0.255
[*SwitchB-ospf-1-area-0.0.0.0] network 10.4.1.0 0.0.0.255
[*SwitchB-ospf-1-area-0.0.0.0] quit
[*SwitchB-ospf-1] quit
[*SwitchB] commit
# 配置SwitchC。
system-view
[~HUAWEI] sysname SwitchC
[*HUAWEI] commit
[~SwitchC] interface 10ge 1/0/1
[~SwitchC-10GE1/0/1] undo portswitch
[*SwitchC-10GE1/0/1] ip address 10.3.1.2 24
[*SwitchC-10GE1/0/1] quit
[*SwitchC] interface 10ge 1/0/2
[*SwitchC-10GE1/0/2] undo portswitch
[*SwitchC-10GE1/0/2] ip address 10.4.1.2 24
[*SwitchC-10GE1/0/2] quit
[*SwitchC] ospf 1
[*SwitchC-ospf-1] area 0
[*SwitchC-ospf-1-area-0.0.0.0] network 10.3.1.0 0.0.0.255
[*SwitchC-ospf-1-area-0.0.0.0] network 10.4.1.0 0.0.0.255
[*SwitchC-ospf-1-area-0.0.0.0] quit
[*SwitchC-ospf-1] quit
分别在SwitchA和SwitchB上配置Monitor Link关联上行接口和下行接口
# 配置SwitchA。
[~SwitchA] monitor-link group 1
[*SwitchA-mtlk-group1] port 10ge 1/0/1 uplink
[*SwitchA-mtlk-group1] port eth-trunk 10 downlink 1
[*SwitchA-mtlk-group1] quit
[*SwitchA] commit
# 配置SwitchB。
[~SwitchB] monitor-link group 1
[*SwitchB-mtlk-group1] port 10ge 1/0/1 uplink
[*SwitchB-mtlk-group1] port eth-trunk 10 downlink 1
[*SwitchB-mtlk-group1] quit
[*SwitchB] commit
验证配置结果
执行命令display dfs-group,查看M-LAG的相关信息。
# 查看DFS Group编号为1的M-LAG信息。
[~SwitchA] display dfs-group 1 m-lag
* : Local node
Heart beat state : OK
Node 1 *
Dfs-Group ID : 1
Priority : 150
Address : ip address 10.1.1.1
State : Master
Causation : -
System ID : 0025-9e95-7c31
SysName : SwitchA
Version : V100R006C00
Device Type : CE12800
Node 2
Dfs-Group ID : 1
Priority : 120
Address : ip address 10.1.1.2
State : Backup
Causation : -
System ID : 0025-9e95-7c11
SysName : SwitchB
Version : V100R006C00
Device Type : CE12800
# 查看SwitchA上的M-LAG信息。
[~SwitchA] display dfs-group 1 node 1 m-lag brief
* - Local node
M-Lag ID Interface Port State Status Consistency-check
1 Eth-Trunk 10 Up active(*)-active –
Failed reason:
1 – Relationship between vlan and port is inconsistent
2 – STP configuration under the port is inconsistent
3 – STP port priority configuration is inconsistent
4 – LACP mode of M-LAG is inconsistent
5 – M-LAG configuration is inconsistent
6 – The number of M-LAG members is inconsistent
# 查看SwitchB上的M-LAG信息。
[~SwitchB] display dfs-group 1 node 2 m-lag brief
* - Local node
M-Lag ID Interface Port State Status Consistency-check
1 Eth-Trunk 10 Up active-active(*) –
Failed reason:
1 – Relationship between vlan and port is inconsistent
2 – STP configuration under the port is inconsistent
3 – STP port priority configuration is inconsistent
4 – LACP mode of M-LAG is inconsistent
5 – M-LAG configuration is inconsistent
6 – The number of M-LAG members is inconsistent
通过以上显示信息可以看到,“Heart beat state”的状态是“OK”,表明心跳状态正常;SwitchA作为Node 1,优先级为150,“State”的状态是“Master”;SwitchB作为Node 2,优先级为120,“State”的状态是“Backup”。同时“Causation”的状态是“-”,Node 1的“Port State”状态为“Up”,Node 2的“Port State”状态为“Up”,且Node 1和Node 2的M-LAG状态均为“active”,表明M-LAG的配置正确。
配置文件
- SwitchA的配置文件
#
sysname SwitchA
#
dfs-group 1
priority 150
source ip 10.1.1.1
#
vlan batch 11
#
stp mode rstp
stp v-stp enable
#
interface Vlanif11
ip address 10.2.1.1 255.255.255.0
mac-address 0000-5e00-0101
#
interface Eth-Trunk1
mode lacp-static
peer-link 1
#
interface Eth-Trunk10
port link-type trunk
port trunk allow-pass vlan 11
mode lacp-static
dfs-group 1 m-lag 1
#
interface 10GE1/0/1
undo portswitch
ip address 10.3.1.1 255.255.255.0
#
interface 10GE1/0/2
eth-trunk 10
#
interface 10GE1/0/3
eth-trunk 10
#
interface 10GE1/0/4
eth-trunk 1
#
interface 10GE2/0/5
eth-trunk 1
#
interface LoopBack0
ip address 10.1.1.1 255.255.255.255
#
monitor-link group 1
port 10GE1/0/1 uplink
port Eth-Trunk10 downlink 1
#
ospf 1
area 0.0.0.0
network 10.1.1.1 0.0.0.0
network 10.2.1.0 0.0.0.255
network 10.3.1.0 0.0.0.255
#
return
- SwitchB的配置文件
#
sysname SwitchB
#
dfs-group 1
priority 120
source ip 10.1.1.2
#
vlan batch 11
#
stp mode rstp
stp v-stp enable
#
interface Vlanif11
ip address 10.2.1.1 255.255.255.0
mac-address 0000-5e00-0101
#
interface Eth-Trunk1
mode lacp-static
peer-link 1
#
interface Eth-Trunk10
port link-type trunk
port trunk allow-pass vlan 11
mode lacp-static
dfs-group 1 m-lag 1
#
interface 10GE1/0/1
undo portswitch
ip address 10.4.1.1 255.255.255.0
#
interface 10GE1/0/2
eth-trunk 10
#
interface 10GE1/0/3
eth-trunk 10
#
interface 10GE1/0/4
eth-trunk 1
#
interface 10GE2/0/5
eth-trunk 1
#
interface LoopBack0
ip address 10.1.1.2 255.255.255.255
#
monitor-link group 1
port 10GE1/0/1 uplink
port Eth-Trunk10 downlink 1
#
ospf 1
area 0.0.0.0
network 10.1.1.2 0.0.0.0
network 10.2.1.0 0.0.0.255
network 10.4.1.0 0.0.0.255
#
return
- SwitchC的配置文件
#
sysname SwitchC
#
interface 10GE1/0/1
undo portswitch
ip address 10.3.1.2 255.255.255.0
#
interface 10GE1/0/2
undo portswitch
ip address 10.4.1.2 255.255.255.0
#
ospf 1
area 0.0.0.0
network 10.3.1.0 0.0.0.255
network 10.4.1.0 0.0.0.255
#
return
Switch的配置文件
#
sysname Switch
#
vlan batch 11
#
interface Eth-Trunk20
port link-type trunk
port trunk allow-pass vlan 11
mode lacp-static
#
interface 10GE1/0/1
eth-trunk 20
#
interface 10GE1/0/2
eth-trunk 20
#
interface 10GE1/0/3
eth-trunk 20
#
interface 10GE1/0/4
eth-trunk 20
#
return