05-M-LAG配置
本章节下载: 05-M-LAG配置 (726.94 KB)
目 录
1.7.3 配置Keepalive报文发送的时间间隔和超时时间间隔
1.8.6 配置接口在M-LAG系统分裂后处于M-LAG MAD DOWN状态
1.11 配置peer-link接口或M-LAG接口的DRCP超时时间为短超时
1.15 配置peer-link链路down后等待检测故障原因的时间
1.21.3 M-LAG双活网关场景下通过动态路由接入M-LAG配置举例
M-LAG(Multichassis link aggregation,跨设备链路聚合)将两台物理设备在聚合层面虚拟成一台设备来实现跨设备链路聚合,从而提供设备级冗余保护和流量负载分担。
如图1-1所示,Device A与Device B形成负载分担,共同进行流量转发,当其中一台设备发生故障时,流量可以快速切换到另一台设备,保证业务的正常运行。
图1-1 M-LAG网络模型示意图
M-LAG设备在M-LAG系统中互为邻居,其中Device A为主设备,Device B为从设备。M-LAG为每个M-LAG设备定义了以下几个接口角色:
· M-LAG接口:与外部设备相连的二层聚合接口。与外部设备上相同聚合组相连的M-LAG接口属于同一M-LAG组。如图1-1所示,Device A上的二层聚合接口1和Device B上的二层聚合接口2属于同一M-LAG组。M-LAG组中的M-LAG接口由多条链路聚合组成,且具有相同的M-LAG组编号。
· peer-link接口:连接对端M-LAG邻居设备用于内部控制的接口。每台M-LAG设备只有一个peer-link接口。peer-link接口间的链路为peer-link链路,M-LAG设备通过peer-link链路交互协议报文及传输数据流量。一个M-LAG系统只有一条peer-link链路。
M-LAG设备间通过Keepalive链路检测邻居状态。关于Keepalive机制的详细描述,请参见“1.1.3 Keepalive机制”。
如果一台外部设备仅接入M-LAG系统的其中一台M-LAG设备,则该设备称为单挂设备,这种接入方式称为单归接入。
M-LAG通过在peer-link链路上运行DRCP(Distributed Relay Control Protocol,分布式聚合控制协议)来交互M-LAG的相关信息,以确定两台设备是否可以组成M-LAG系统。运行该协议的设备之间通过互发DRCPDU(Distributed Relay Control Protocol Data Unit,分布式聚合控制协议数据单元)来交互M-LAG的相关信息。DRCP为我司私有协议。
两端M-LAG设备通过peer-link链路定期交互DRCP报文。当本端M-LAG设备收到对端M-LAG设备的DRCP协商报文后,会判断DRCP协商报文中的M-LAG系统配置是否和本端相同。如果两端的M-LAG系统配置相同,则这两台设备可以组成M-LAG系统。
DRCP超时时间是指peer-link接口等待接收DRCPDU的超时时间。在DRCP超时时间之前,如果本端peer-link接口未收到来自对端M-LAG设备的DRCPDU,则认为对端M-LAG设备peer-link接口已经失效。
DRCP超时时间同时也决定了对端M-LAG设备发送DRCPDU的速率。DRCP超时有短超时(3秒)和长超时(90秒)两种:
· 若本端DRCP超时时间为短超时,则对端M-LAG设备将快速发送DRCPDU(每1秒发送1个DRCPDU)。
· 若本端DRCP超时时间为长超时,则对端M-LAG设备将慢速发送DRCPDU(每30秒发送1个DRCPDU)。
M-LAG设备间通过Keepalive链路检测邻居状态,即通过交互Keepalive报文来进行peer-link链路故障时的双主检测。Keepalive报文为我司私有报文。
如果在指定时间内,本端M-LAG设备收到对端M-LAG设备发送的Keepalive报文:
· 如果peer-link链路状态为down,则本端和对端M-LAG设备根据收到的Keepalive报文选举主从设备,保证M-LAG系统中仅一台M-LAG设备转发流量,避免两台M-LAG设备均升级为主设备。
· 如果peer-link链路状态为up,则M-LAG系统正常工作。
如果在指定时间内,本端M-LAG设备未收到对端M-LAG设备发送的Keepalive报文时:
· 如果peer-link链路状态为down,则认为对端M-LAG设备状态为down:
¡ 本端设备为主设备时,如果本端设备上存在处于up状态的M-LAG接口,则本端仍为主设备;否则,本端设备角色变为None角色。
¡ 本端设备为从设备时,则升级为主设备。此后,只要本端设备上存在处于up状态的M-LAG接口,则保持为主设备,否则本端设备角色变为None角色。
当设备为None角色时,设备不能收发Keepalive报文,Keepalive链路处于down状态。
· 如果peer-link链路状态为up,则认为Keepalive链路状态为down。此时主从设备正常工作,同时设备打印日志信息,提醒用户检查Keepalive链路。
peer-link链路故障后,为了防止从设备继续转发流量,M-LAG提供MAD(Multi-Active Detection,多Active检测)机制,即在M-LAG系统分裂时将设备上部分接口置为M-LAG MAD DOWN状态,不允许此类接口转发流量,避免流量错误转发,尽量减少对业务影响。
M-LAG系统分裂时,设备上以下接口不被置为M-LAG MAD DOWN状态:
· M-LAG保留接口(包括用户配置的和系统保留的)。
· IRF保留接口(包括用户配置的和系统保留的)。
· 在接口上配置了强制端口up功能:
¡ 通过loopback命令开启接口的环回功能。有关本命令的详细介绍,请参见“二层技术-以太网交换命令参考”中的“以太网接口”。
¡ 通过port service-loopback group命令将端口加入指定的业务环回组。有关本命令的详细介绍,请参见“二层技术-以太网交换命令参考”中的“业务环回组”。
¡ 通过mirroring-group reflector-port命令为远程源镜像组配置反射端口。有关本命令的详细介绍,请参见“网络管理和监控命令参考”中的“端口镜像”。
¡ 通过port up-mode命令强制开启光口。有关本命令的详细介绍,请参见“二层技术-以太网交换命令参考”中的“以太网接口”。
M-LAG保留接口包括系统保留接口和用户配置的保留接口。系统保留接口包括:
· peer-link接口
· peer-link接口所对应的二层聚合接口的成员接口
· M-LAG接口
· 管理以太网接口
当peer-link链路故障恢复后,为了防止丢包,从设备尽可能在延迟恢复时间内完成表项(MAC地址表、ARP表等)同步,其后该设备上处于M-LAG MAD DOWN状态的接口将恢复为up状态。
当peer-link链路故障,Keepalive链路正常工作时,主设备正常工作,从设备会自动关闭本设备上除M-LAG保留接口外的所有接口,将这些接口置为M-LAG MAD DOWN状态。如果此时Keepalive链路也发生故障,从设备上的接口会解除M-LAG MAD DOWN状态,并升级为主设备,使M-LAG系统中的两台设备都作为主设备转发流量,引起网络故障。为了避免以上情况,需要开启M-LAG MAD DOWN保持功能,使设备上的接口一直处于M-LAG MAD DOWN状态,不参与流量转发。
如图1-2所示,M-LAG设备通过角色计算,可能出现三种设备角色,分别是Primary、Secondary和None。
图1-2 M-LAG角色计算流程图
角色计算触发条件包括:
· M-LAG设备在系统初始化时(包括新配置M-LAG或带M-LAG配置重启设备)。
· peer-link链路UP时,设备角色通过peer-link链路计算。
· peer-link链路故障,Keepalive正常工作,设备角色通过Keepalive链路计算。
· peer-link链路和Keepalive链路均故障,根据本端M-LAG设备上M-LAG接口状态决定设备角色。
当通过peer-link链路或Keepalive链路交互报文计算设备角色时,依次比较如下因素:
(1) 比较设备所有M-LAG接口的状态,有可工作M-LAG接口的一端为优;
(2) 比较计算前角色,若有一端为Primary,另一端为None,则Primary端优;
(3) 比较M-LAG MAD DOWN状态,若一端存在处于M-LAG MAD DOWN状态的接口,另一端不存在处于M-LAG MAD DOWN状态的接口,则不存在处于M-LAG MAD DOWN状态的接口的一端优;
(4) 比较设备健康状况,健康值越小越优。设备的健康值可通过display system health命令查看,健康值越小设备越健康,设备无故障运行时,健康值为0。有关display system health命令的详细介绍,请参见“基础配置命令参考”中的“设备管理”;
(5) 比较设备角色优先级,越高越优;
(6) 比较设备桥MAC,越小越优。
上述因素按顺序比较,结果为优的一端角色计算为Primary,另一端为Secondary。
如果设备通过peer-link链路计算角色,则不比较设备所有M-LAG接口的状态。
如图1-3所示,Device A和Device B之间M-LAG系统建立及工作过程如下:
(1) 当M-LAG设备完成M-LAG系统参数配置后,两端设备通过peer-link链路定期发送DRCP报文。当本端收到对端的DRCP协商报文后,会判断DRCP协商报文中的M-LAG系统配置是否和本端相同。如果两端的M-LAG系统配置相同,则这两台设备组成M-LAG系统。
(2) 配对成功后,两端设备会确定出主从状态。依次比较两端M-LAG设备的初始角色、M-LAG MAD DOWN状态、设备的健康值、角色优先级、设备桥MAC,比较结果更优的一端为主设备,具体比较原则请参见“1.1.5 角色计算”。主从协商后,M-LAG设备间会进行配置一致性检查。有关一致性检查的详细介绍,请参见“1.1.8 配置一致性检查功能”。
(3) 当主从角色确定后,两端设备通过Keepalive链路周期性地发送Keepalive报文检测邻居状态。
(4) M-LAG系统开始工作后,两端设备之间会实时同步对端的信息,例如MAC地址表项、ARP表项等,这样任意一台设备故障都不会影响流量的转发,保证正常的业务不会中断。
图1-3 M-LAG建立及工作过程示意图
M-LAG设备工作模式分为以下两种:
· M-LAG系统工作模式:作为M-LAG系统成员设备参与报文转发。
· 独立工作模式:脱离M-LAG系统独立工作,独自转发报文。
当M-LAG系统分裂时,为了避免M-LAG系统中的两台设备都作为主设备转发流量的情况,需要M-LAG设备独立工作。在peer-link链路和Keepalive链路均处于DOWN状态时,从设备会立即或经过一段时间切换到独立运行模式。
M-LAG设备切换到独立运行模式后,聚合接口发送的LACP报文中携带的M-LAG系统参数还原为聚合接口的LACP系统MAC地址和LACP系统优先级,使同一M-LAG组中的两个聚合接口的LACP系统MAC地址和LACP系统优先级不一致。这样只有一边聚合接口的成员端口可以被选中,通过被选中的设备转发业务流量,避免流量转发异常。
M-LAG系统建立过程中会进行配置一致性检查,以确保两端M-LAG设备配置一致,不影响M-LAG设备转发报文。M-LAG设备通过交换各自的配置信息,检查配置是否一致。目前M-LAG支持对两种类型的配置一致性检查:
· Type 1类型配置:影响M-LAG系统转发的配置。如果Type 1类型配置不一致,则将从设备上M-LAG接口置为down状态。
· Type 2类型配置:仅影响业务模块的配置。如果Type 2类型配置不一致,从设备上M-LAG接口依然为up状态,不影响M-LAG系统正常工作。由Type 2类型配置对应的业务模块决定是否关闭该业务功能,其他业务模块不受影响。
为了避免设备M-LAG接口震荡,设备会在延迟恢复定时器一半时间之后进行配置一致性检查。
延迟恢复定时器用来设置设备作为从设备加入M-LAG系统时进行MAC地址表项等信息同步的最大时间。有关延迟恢复定时器的详细介绍,请参见“1.17 配置接口延迟恢复时间”
Type 1类型配置一致性检查分为全局配置和M-LAG接口配置。
表1-1 全局Type 1类型配置
配置 |
一致性检查内容 |
peer-link接口链路类型 |
Access、Hybrid和Trunk |
peer-link接口的PVID |
peer-link接口的PVID |
生成树功能 |
全局生成树功能是否开启和VLAN内生成树功能是否开启 仅当生成树模式为PVST时,才对VLAN内生成树功能进行一致性检查 |
生成树模式 |
STP、RSTP、PVST和MSTP |
MST域相关配置 |
MST域的域名、MSTP的修订级别和MSTI与VLAN的映射关系 |
表1-2 M-LAG接口Type 1类型配置
配置 |
一致性检查内容 |
聚合组的工作模式 |
静态聚合组和动态聚合组 |
接口生成树功能 |
接口上的生成树功能是否开启 |
接口的链路类型 |
Access、Hybrid和Trunk |
接口的PVID |
M-LAG接口的PVID |
Type 2类型配置一致性检查分为全局配置和M-LAG接口配置。Type 2类型配置仅影响对应的业务模块。
表1-3 全局Type 2类型配置
配置 |
一致性检查内容 |
VLAN接口 |
VLAN接口处于up状态,且peer-link接口加入该VLAN |
peer-link接口实际可以通过的携带Tag的VLAN和实际可以通过的PVID |
peer-link接口实际可以通过的携带Tag的VLAN和实际可以通过的PVID |
表1-4 M-LAG接口Type 2类型配置
配置 |
一致性检查内容 |
M-LAG接口实际可以通过的携带Tag的VLAN |
M-LAG接口实际可以通过的携带Tag的VLAN |
M-LAG接口实际可以通过的不携带Tag的VLAN |
M-LAG接口实际可以通过的不携带Tag的VLAN |
在M-LAG双归接入三层网络的场景中,两台M-LAG设备需要同时作为三层网关,必须保证M-LAG设备上存在相同的IP地址和MAC地址的逻辑接口,以便实现:
· 当一条接入链路发生故障时,流量可以快速切换到另一条链路,保证可靠性。
· 两条接入链路可以同时处理用户流量,以提高带宽利用率,使流量在两条接入链路上负载分担。
M-LAG双活网关主要用于动态路由接入M-LAG的组网环境中。如图1-4所示,用户可以在Device C上部署静态路由通过三层路由方式接入到M-LAG系统,但部署静态路由将带来运维难度的上升和缺乏灵活快速部署能力,无法满足快速增长的业务需要。为解决静态路由表带来的问题,需要在M-LAG系统与用户侧设备之间建立动态路由协议邻居:
· M-LAG设备Device A和Device B上各创建一个相同编号的VLAN接口(例如Vlan-interface100),该接口作为网关接口,具有相同的IPv4地址、IPv6地址和MAC地址,且M-LAG接口允许该VLAN通过。
· 在该VLAN接口下配置IP地址不同的M-LAG虚拟地址,用于IGP/BGP动态路由协议邻居建立,使得M-LAG设备和Device C之间建立IGP/BGP邻居,M-LAG设备之间也会建立IGP/BGP邻居。
为了防止重放攻击,保证流量正常转发,M-LAG支持序列号校验,以识别非法攻击报文。开启M-LAG序列号校验功能后,如果M-LAG设备本次收到的M-LAG报文的序列号与已经收到的M-LAG报文的序列号相同,或小于上次收到的M-LAG报文的序列号,则认为发生重放攻击。M-LAG设备会丢弃序列号校验失败的M-LAG报文。
为防止攻击者篡改M-LAG报文内容,M-LAG提供报文认证功能,提高安全性。M-LAG设备发送的协议报文中会携带一个消息摘要,该消息摘要是对协议报文内容经Hash计算得到。对端M-LAG设备收到该报文时,会与自己计算的该报文的消息摘要进行比对,如果一致,则认为其合法。
如图1-5所示,某M-LAG接口故障,网络侧流量会通过peer-link链路发送给另外一台设备,所有流量均由另外一台M-LAG设备转发,具体过程如下:
(1) Device B的某M-LAG接口故障,网络侧不感知,流量依然会发送给所有M-LAG设备。
(2) Device A的相同M-LAG接口正常,则Device B收到网络侧访问Device C的流量后,通过peer-link链路将流量交给Device A后转发给Device C。
(3) 故障恢复后,Device B的该M-LAG接口up,流量正常转发。
图1-5 M-LAG接口故障处理机制示意图
如图1-6所示,peer-link链路故障但Keepalive链路正常会导致从设备上除M-LAG保留接口以外的接口处于M-LAG MAD DOWN状态。主设备上M-LAG接口所在的聚合链路状态仍为up,从设备上M-LAG接口所在的聚合链路状态变为down,从而保证所有流量都通过主设备转发。一旦peer-link链路故障恢复,处于M-LAG MAD DOWN状态的接口经过延迟恢复时间自动恢复为up状态。
图1-6 peer-link链路故障处理机制示意图
如图1-7所示,Device A为主设备,Device B为从设备。当主设备故障后,主设备上的聚合链路状态变为down,不再转发流量。从设备将升级为主设备,该设备上的聚合链路状态为up,流量转发状态不变,继续转发流量。主设备故障恢复后,M-LAG系统中由从状态升级为主状态的设备仍保持主状态,故障恢复后的设备成为M-LAG系统的从设备。
如果是从设备发生故障,M-LAG系统的主从状态不会发生变化,从设备上的聚合链路状态变为down。主设备上的聚合链路状态为up,流量转发状态不变,继续转发流量。
上行链路故障并不会影响M-LAG系统的转发。如图1-8所示,Device A上行链路虽然故障,但是Device B上存在到外网侧的路由,Device A会将访问外网侧的流量发送给Device B进行转发。而外网侧发送给Device C的流量由于接口故障,自然也不会发送给Device A处理。
上行链路故障时,如果通过Device A将访问外网侧的流量发送给Device B进行转发,会降低转发效率。此时用户可以配置Monitor Link功能,将M-LAG组成员端口和上行端口关联起来,一旦上行链路故障了,会联动M-LAG组成员端口状态,将其状态变为down,提高转发效率。有关Monitor Link的详细介绍,请参见“可靠性配置指导”中的“Monitor Link”。
M-LAG二次故障是指在peer-link链路发生故障后,Keepalive链路也发生故障,或者在Keepalive链路发生故障后,peer-link链路也发生故障。针对M-LAG设备上不同的配置情况,当发生二次故障时,处理方式不同。
如图1-9所示,若peer-link链路先发生故障,此时两端M-LAG设备会根据Keepalive链路进行设备角色选举,并依据MAD检测机制,将从设备上除M-LAG保留接口外的所有接口置为M-LAG MAD DOWN状态。
此后,若Keepalive链路也发生故障,从设备也会升为主设备,并解除设备上所有接口的M-LAG MAD DOWN状态,以双主双活的方式转发流量。由于peer-link链路故障时,无法同步表项,可能导致流量转发错误。
若Keepalive链路先发生故障,peer-link链路后发生故障,则M-LAG设备上的接口不会被置为M-LAG MAD DOWN状态,而是直接以双主双活的方式转发流量。
如图1-10所示,若peer-link链路先发生故障,此时两端M-LAG设备会根据Keepalive链路进行设备角色选举,并依据MAD检测机制,将从设备上除M-LAG保留接口外的所有接口置为M-LAG MAD DOWN状态。
此后,若Keepalive链路也发生故障,从设备也会升为主设备,但由于M-LAG设备已开启M-LAG MAD DOWN状态保持功能,将不会解除设备上所有接口的M-LAG MAD DOWN状态,继续只从原来的主设备转发流量。这样将不会出现双主双活的情况,避免流量转发异常。
若Keepalive链路先发生故障,peer-link链路后发生故障,则M-LAG设备上的接口不会被置为M-LAG MAD DOWN状态,而是直接以双主双活的方式转发流量。
图1-10 开启M-LAG MAD DOWN状态保持功能场景下二次故障处理机制示意图(一)
如图1-11所示,如果主设备故障或者主设备上M-LAG接口故障,则无法转发流量。为了避免这种情况可以解除从设备上所有接口的M-LAG MAD DOWN状态,使从设备升级为主设备,以保证流量正常转发,减少流量中断时间。
图1-11 开启M-LAG MAD DOWN状态保持功能场景下二次故障处理机制示意图(二)
如图1-12所示,若peer-link链路先发生故障,此时两端M-LAG设备会根据Keepalive链路进行设备角色选举,并依据MAD检测机制,将从设备上除M-LAG保留接口外的所有接口置为M-LAG MAD DOWN状态。
此后,若Keepalive链路也发生故障,从设备也会升为主设备,解除所有接口的M-LAG MAD DOWN状态。但由于已开启立即或延迟切换到设备独立工作状态功能,两台M-LAG设备将切换到独立工作状态,切换后M-LAG接口对应的聚合接口发送的LACP报文中携带的M-LAG系统参数还原为聚合接口的LACP系统MAC地址和LACP系统优先级,使同一M-LAG组中的两个聚合接口的LACP系统MAC地址和LACP系统优先级不一致。这样只有一边聚合接口的成员端口可以被选中,通过被选中的设备转发业务流量,避免流量转发异常。成员端口的选中与LACP系统优先级和系统MAC地址相关,与M-LAG设备角色无关。LACP系统优先级和系统MAC地址越小,则优先被选中。若选中的成员端口也发生故障,则将选中另外一台设备上聚合接口的成员端口,通过该聚合接口继续转发流量。
若Keepalive链路先发生故障,peer-link链路后发生故障,则M-LAG设备上的接口不会被置为M-LAG MAD DOWN状态,将立即或延迟一段时间切换到设备独立工作模式。
图1-12 开启设备独立工作功能场景下二次故障处理机制示意图
与M-LAG相关的协议规范有:
· IEEE P802.1AX-REV™/D4.4c:Draft Standard for Local and Metropolitan Area Networks
M-LAG为我司私有实现,不能和其他厂商设备互通。
目前仅支持两台设备组成一个M-LAG系统。为了能够让上行或下行设备将M-LAG组中的两台设备看成一台设备,要求同一M-LAG组中所有M-LAG设备配置相同的系统MAC地址和系统优先级,配置不同的系统编号。
M-LAG组网环境中,M-LAG系统的MAC地址需要唯一。
当在设备上部署M-LAG配置后,如果该设备脱离M-LAG系统独立工作,则需要删除M-LAG相关配置,避免影响报文转发。
peer-link链路除了交互协议报文外,还作为上行链路的备份路径,当上行链路故障时,M-LAG设备通过peer-link链路将流量发给对端M-LAG设备处理。在框式设备上部署M-LAG时,建议每个slot都有端口加入peer-link接口所在的聚合组,避免设备重启后由于不同业务板启动时间不同,导致peer-link接口延迟UP,造成的链路震荡。
peer-link聚合组的成员端口需要使用相同速率端口。
Leaf设备peer-link链路带宽要求:要特别关注存在大量主备模式接入服务器时的情况。当服务器通过主备模式接入M-LAG设备时,同组Leaf下挂服务器之间互访的流量都需要通过peer-link链路,此时需要计算互访流量大小确定合适的peer-link链路带宽。
建议在peer-link接口上配置link-delay命令,且配置取值不为0的相同的delay-time,以减少接口震荡对上层业务的影响。
两端M-LAG设备的peer-link接口上允许通过的超长帧需要相同,否则会导致M-LAG设备间信息同步失败。
单挂接口的链路类型需要与peer-link接口保持一致,需要配置链路类型为Trunk,否则会出现下挂设备无法通过peer-link链路进行ND协议报文收发,导致流量转发不通。
Keepalive链路通过交互Keepalive报文来进行peer-link链路故障时的双主检测。
建议M-LAG设备间单独建立一条直连链路,作为Keepalive链路,不与其他链路复用,同时需保证该链路二三层均可达。Keepalive链路接口可以为管理用以太网接口、三层以太网接口、三层聚合接口、绑定VPN实例的接口。不建议使用VLAN接口作为Keepalive链路接口,如确有此使用需求,需要将对应VLAN从peer-link链路允许通过的VLAN中去掉,否则peer-link链路和Keepalive链路之间会形成环路。
对于多单板/设备:建议和peer-link链路接口部署在不同的单板上。
Keepalive链路接口(包括物理口和逻辑口)请务必配置为M-LAG保留接口(当peer-link链路故障时不会被MAD down)。
同一M-LAG组中,M-LAG接口的LACP系统MAC地址不能相同。
在M-LAG组网中,建议LACP超时时间采用缺省值,即LACP超时时间为长超时(90秒),通过undo lacp period命令配置。
裸金属服务器使用M-LAG聚合口上线时,聚合口要配置lacp edge-port。
在M-LAG组网环境中,通过GIR功能将设备从维护模式切回到普通模式,请先执行display m-lag mad verbose命令确认设备接口状态未处于“M-LAG MAD DOWN”状态,再执行undo gir system-mode maintenance命令。有关GIR的详细介绍,请参见“基础配置指导”中的“GIR”。
为了保证M-LAG正常工作,请勿在IRF设备上使用M-LAG。配置M-LAG前要求将设备切回独立运行模式。
有关IRF的详细介绍,请参见“虚拟化配置指导”中的“IRF”。
在M-LAG组网环境中,在设备存在大量MAC地址表项时,请通过mac-address timer aging命令增加MAC地址老化时间,建议配置MAC地址老化时间在20分钟以上。
不要在peer-link接口下执行mac-address mac-learning enable命令或undo mac-address mac-learning enable命令,请保持该功能的缺省状态。
配置M-LAG时,需要先设置MAC基地址,再根据MAC基地址设置M-LAG系统各MAC地址。具体设置方式和举例如表1-5所示。
设备 |
桥MAC |
MAC基地址(routing-interface base-mac) |
M-LAG系统MAC地址(m-lag system-mac) |
EVPN的全局MAC地址(evpn global-mac) |
承载L3VNI接口的vsi-interfac MAC |
VLAN接口(网关)的MAC |
分布式网关VSI接口MAC |
M-LAG1 |
7057-bff9-aa00 |
设置为较小的桥MAC+64:542b-de0c-0264 |
建议设置为较小的base-mac:542b-de0c-0200 |
建议设置为较小的base-mac+1:542b-de0c-0201 |
使用缺省值即evpn global-mac值:542b-de0c-0201 |
缺省值为base-mac+1:542b-de0c-0265 建议设置为较小的base-mac+c8:542b-de0c-02c8 |
缺省值为base-mac+1:542b-de0c-0265 建议设置为evpn global-mac值:542b-de0c-0201 |
M-LAG2 |
542b-de0c-0200 |
设置为较小的桥MAC:542b-de0c-0200 |
建议设置为较小的base-mac:542b-de0c-0200 |
建议设置为较小的base-mac+1:542b-de0c-0201 |
使用缺省值即evpn global-mac值:542b-de0c-0201 |
缺省值为base-mac+1:542b-de0c-0201 建议设置为较小的base-mac+c8:542b-de0c-02c8 |
缺省值为base-mac+1:542b-de0c-0201 建议设置为evpn global-mac值:542b-de0c-0201 |
桥MAC的查看方式:在Probe视图执行debugging system bridgemac read命令,查看BridgeMac字段。例如,下面设备的桥MAC地址为542b-de0c-0200。
[Sysname-probe] debugging system bridgemac read
The Bridge Macs are as follows:
542b-de0c-0200
Total reserved mac number: 256
SNID:23a6-db6c-d829-a93d
BridgeMac:542b-de0c-0200 BaseInfMac:542b-de0c-0200 INTFMac:542b-de0c-0201
分布式网关VSI接口MAC高36位要与base-mac一致,低12位没要求。建议分布式网关VSI接口MAC和EVPN的全局MAC地址(evpn global-mac)配置一致。
有关MAC地址的详细介绍,请参见“二层技术-以太网交换配置指导”中的“MAC地址表”。
请勿在M-LAG组网环境开启全自动聚合功能。
配置聚合接口加入S-MLAG组后,该聚合接口不能再配置为M-LAG接口或peer-link接口。
当聚合接口配置为M-LAG接口时,请注意:
· 建议LACP超时时间采用缺省值,即LACP超时时间为长超时(90秒),通过undo lacp period命令配置。
· 该聚合接口上最大选中端口数和最小选中端口数的配置不生效。
· 通过display link-aggregation verbose命令显示该聚合接口详细信息时,显示信息中SystemID为分布式聚合配置的M-LAG系统MAC和M-LAG系统优先级。如果参考端口在M-LAG接口上,则两台M-LAG设备上会各显示一个参考端口。
关于以太网链路聚合的详细介绍,请参见“二层技术-以太网交换配置指导”中的“以太网链路聚合”。
peer-link接口和M-LAG接口不能加入同一隔离组中。有关隔离组的详细介绍,请参见“二层技术-以太网交换配置指导”中的“端口隔离”。
在生成树和M-LAG结合使用的组网中,用户需要保证M-LAG系统中成员设备生成树全局配置、M-LAG接口及peer-link接口生成树端口配置完全一致,否则可能会导致网络有震荡。M-LAG系统中peer-link接口不参与生成树的拓扑计算。
在生成树和M-LAG结合使用的组网中,M-LAG系统分裂时,成员设备仍会使用M-LAG系统MAC地址发送BPDU报文,导致无法正确计算生成树拓扑。此时可通过开启M-LAG设备独立工作功能解决上述问题。
有关生成树的详细介绍,请参见“二层技术-以太网交换配置指导”中的“生成树”。
在使用远端MEP的MAC地址进行其它CFD各项功能测试之前,若本端内向MEP和远端MEP中间链路存在二层聚合接口,请勿将该二层聚合接口配置为peer-link接口,否则会造成这些测试功能失效。有关CFD的详细介绍,请参见“可靠性配置指导”中的“CFD”。
在M-LAG和VRRP组网环境下,需要确保vrrp vrid timer advertise命令和vrrp ipv6 vrid timer advertise命令配置的时间间隔大于m-lag keepalive hold-time命令配置的时间间隔,否则在确认peer-link链路故障前可能会进行VRRP主备切换,导致流量丢失。有关vrrp vrid timer advertise命令和vrrp ipv6 vrid timer advertise命令的详细介绍,请参见“可靠性命令参考”中的“VRRP”。
设备同时配置镜像和M-LAG时,请注意避免出现镜像源端口为聚合组A的成员端口,镜像目的端口、出端口或反射端口为聚合组B的成员端口,以免聚合组B成员端口接收到聚合组A成员端口的镜像LACP报文,引起聚合接口震荡。
M-LAG与VXLAN、EVPN的配置限制,详见“VXLAN配置指导”中的“VXLAN”和“EVPN配置
指导”中的“EVPN”。
在EVPN数据中心互联支持分布式聚合组网中,开启了分布式聚合模式的ED发送给远端ED的BGP EVPN路由中携带的下一跳地址为虚拟ED地址。由于直连EBGP只能为下一跳为直连网段地址的EBGP路由进行迭代,远端ED可能无法对接收到的BGP EVPN路由进行迭代,从而导致VXLAN-DCI隧道无法自动建立。为了解决这一问题,请在两端ED上配置建立EBGP会话时,均配置peer ebgp-max-hop命令,开启同非直连邻居建立EBGP会话的功能。有关peer ebgp-max-hop命令的详细介绍,请参见“三层技术-IP路由命令参考”中的“BGP”。
M-LAG配置任务如下:
(1) 配置M-LAG系统参数
(2) 配置M-LAG设备的角色优先级
(3) (可选)开启M-LAG设备独立工作功能
(4) 配置Keepalive参数
(5) 配置M-LAG MAD功能
¡ 配置接口在M-LAG系统分裂后处于M-LAG MAD DOWN状态
(6) 配置M-LAG系统的接口
¡ (可选)配置peer-link接口或M-LAG接口的DRCP超时时间为短超时
(7) (可选)配置M-LAG虚拟IP地址
(8) (可选)配置M-LAG一致性检查功能
在进行软件升级时,为避免配置不一致,导致M-LAG接口被关闭,可暂时关闭配置一致性检查功能。
(9) 配置M-LAG时间参数
¡ (可选)配置peer-link链路down后等待检测故障原因的时间
¡ (可选)配置接口延迟恢复时间
(10) (可选)配置M-LAG安全功能
M-LAG系统中相互配对的M-LAG设备的系统MAC地址必须相同。
建议用户将系统MAC地址配置为其中一台M-LAG设备的桥MAC地址。
修改M-LAG设备的系统MAC地址将会导致当前设备从已经建立的M-LAG组中分裂。因此M-LAG系统形成后,不建议修改系统MAC地址。
只有聚合接口配置为M-LAG接口后,才允许在该聚合接口视图下配置M-LAG系统MAC地址。
M-LAG系统MAC地址支持在系统视图和聚合接口视图下配置。对于一个聚合接口来说,优先采用该聚合接口下的配置,只有该聚合接口下未进行配置时,才采用系统视图下的配置。
(1) 进入系统视图。
system-view
(2) 配置M-LAG系统MAC地址。
m-lag system-mac mac-address
缺省情况下,未配置M-LAG系统MAC地址。
(3) 进入二层聚合接口视图。
interface bridge-aggregation interface-number
(4) 在M-LAG接口下配置M-LAG系统MAC地址。
port m-lag system-mac mac-address
缺省情况下,未配置M-LAG系统MAC地址。
M-LAG系统中不同M-LAG设备的系统编号必须不同。
修改M-LAG设备的系统编号将会导致当前设备从已经建立的M-LAG组中分裂。
(1) 进入系统视图。
system-view
(2) 配置M-LAG系统编号。
m-lag system-number system-number
缺省情况下,未配置M-LAG系统编号。
M-LAG系统使用M-LAG系统优先级作为LACPDU中的系统LACP优先级与对端设备交互聚合组信息。
M-LAG系统中相互配对的M-LAG设备的系统优先级必须相同。
如果在系统视图下修改M-LAG设备的系统优先级将会导致当前设备从已经建立的M-LAG组中分裂。因此M-LAG系统形成后,不建议在系统视图下修改系统优先级。
只有聚合接口配置为M-LAG接口后,才允许在该聚合接口视图下配置M-LAG系统优先级。
M-LAG系统优先级支持在系统视图和聚合接口视图下配置。对于一个聚合接口来说,优先采用该聚合接口下的配置,只有该聚合接口未进行配置或配置为缺省值时,才采用系统视图下的配置。
(1) 进入系统视图。
system-view
(2) 配置M-LAG系统优先级。
m-lag system-priority system-priority
缺省情况下,M-LAG系统优先级为32768。
(3) 进入二层聚合接口视图。
interface bridge-aggregation interface-number
(4) 在M-LAG接口下配置M-LAG系统优先级。
port m-lag system-priority priority
缺省情况下,M-LAG系统优先级为32768。
设备角色优先级用于两台设备间进行主从协商,值越小优先级越高,优先级高的为主设备。
如果优先级相同,那么比较两台设备的桥MAC地址,桥MAC地址较小的为主设备。
M-LAG系统建立后,不建议修改M-LAG设备的角色优先级,避免主从设备重新选举,导致网络震荡。
(1) 进入系统视图。
system-view
(2) 配置M-LAG设备的角色优先级。
m-lag role priority priority-value
缺省情况下,M-LAG设备的角色优先级为32768。
当M-LAG系统分裂时,为了避免M-LAG系统中的两台设备都作为主设备转发流量的情况,可以在M-LAG系统分裂前配置本功能。配置本功能后,如果M-LAG系统分裂,peer-link链路和Keepalive链路均处于DOWN状态,此时从设备会立即或经过一段时间切换到独立运行模式。
M-LAG设备切换到独立运行模式后,聚合接口发送的LACP报文中携带的M-LAG系统参数还原为聚合接口的LACP系统MAC地址和LACP系统优先级,使同一M-LAG组中的两个聚合接口的LACP系统MAC地址和LACP系统优先级不一致。这样只有一边聚合接口的成员端口可以被选中,通过被选中的设备转发业务流量,避免流量转发异常。
当peer-link链路和Keepalive链路均发生故障时,本功能才会生效。当对端M-LAG设备整机重启时,会通知本端M-LAG设备,本端M-LAG设备感知到peer-link链路和Keepalive链路未故障,此时本功能不生效。
建议M-LAG设备均配置本功能。
配置本功能前,需要保证M-LAG设备的LACP系统优先级大于连接M-LAG系统设备的LACP系统优先级,使参考端口位于连接M-LAG系统的设备上,避免连接M-LAG系统的设备的端口频繁震荡。
(1) 进入系统视图。
system-view
(2) 开启M-LAG设备独立工作功能。
m-lag standalone enable [ delay delay-time ]
缺省情况下,M-LAG设备独立工作功能处于关闭状态。
建议M-LAG设备间单独建立一条直连链路,作为Keepalive链路,不与其他链路复用,同时需保证该链路二三层均可达。
本端设备接收到的Keepalive报文的目的IP应该为本端配置的源IP。当设备收到其他目的IP地址的Keepalive报文时,Keepalive链路状态变为down。
本地设备和邻居设备的UDP端口号需配置一致,否则无法收到对端的Keepalive报文。
(1) 进入系统视图。
system-view
(2) 配置Keepalive报文的参数。
m-lag keepalive { ip | ipv6 } destination { ipv4-address | ipv6-address } [ source { ipv4-address | ipv6-address } | udp-port udp-number | vpn-instance vpn-instance-name ] *
缺省情况下,未配置Keepalive报文的参数。如果未指定source或udp-port参数时,则源IP地址为出接口IP地址,UDP端口号为6400。
M-LAG设备间会周期性地发送Keepalive报文。如果本端设备在Keepalive报文超时时间后仍未收到对端发送的Keepalive报文,则Keepalive链路变为down。
本端M-LAG设备的Keepalive报文超时时间必须配置成对端M-LAG设备的Keepalive报文发送时间间隔的2倍以上。
用户需要将M-LAG设备的Keepalive协议报文的发送时间间隔配置一致,否则可能引起功能异常。
(1) 进入系统视图。
system-view
(2) 配置Keepalive报文发送的时间间隔和超时时间间隔。
m-lag keepalive interval interval [ timeout timeout ]
缺省情况下,Keepalive报文发送的时间间隔为1000毫秒,超时时间间隔为5秒。
设备上接口在M-LAG系统分裂后有以下状态:
· M-LAG系统分裂后接口处于M-LAG MAD DOWN状态。
· M-LAG系统分裂后接口保持原状态不变。
缺省情况下,peer-link链路故障后,为了防止从设备继续转发流量,在M-LAG系统分裂时将设备上除IRF保留接口、M-LAG保留接口外的所有接口置为M-LAG MAD DOWN状态,不允许此类接口转发流量,避免流量错误转发,尽量减少对业务影响。如果希望M-LAG系统中有特殊用途的接口(比如Keepalive接口)保持UP状态,可以通过m-lag mad exclude interface命令将其配置为M-LAG保留接口。
在EVPN+M-LAG组网环境中,当使用VXLAN隧道作为peer-link链路时,为了保证M-LAG系统分裂后M-LAG设备能够正常工作,需要将大量逻辑接口(例如Tunnel接口或LoopBack接口)配置为保留接口。此时,为了减少配置工作量,可以先通过m-lag mad default-action none命令配置设备上的接口在M-LAG系统分裂后保持原状态不变,然后再使用m-lag mad include interface命令配置M-LAG系统分裂后需要处于M-LAG MAD DOWN状态的接口。
聚合成员端口与聚合接口在M-LAG系统分裂后的状态保持一致:
· 如果聚合接口在M-LAG系统分裂后处于保留状态,则该聚合接口的成员端口也处于保留状态。
· 如果聚合接口在M-LAG系统分裂后处于M-LAG MAD DOWN状态,则该聚合接口的成员端口也处于M-LAG MAD DOWN状态。
如果通过m-lag mad include interface或者m-lag mad exclude interface命令配置了聚合成员端口在M-LAG系统分裂后的状态,则聚合成员端口以该配置优先。
对于以下接口,不受本配置的影响:
· M-LAG系统保留接口。
· IRF保留接口(包括用户配置的和系统保留的),通过display mad verbose命令查看。
· 在接口上配置了强制端口up功能:
¡ 通过loopback命令开启接口的环回功能。
¡ 通过port service-loopback group命令将端口加入指定的业务环回组。
¡ 通过mirroring-group reflector-port命令为远程源镜像组配置反射端口。
¡ 通过port up-mode命令强制开启光口。
(1) 进入系统视图。
system-view
(2) 配置接口在M-LAG系统分裂后的状态。
m-lag mad default-action { down | none }
缺省情况下,在M-LAG系统分裂后接口处于M-LAG MAD DOWN状态。
用户需要将以下接口配置为M-LAG保留接口,以避免接口被置为M-LAG MAD DOWN状态:
· 将Keepalive链路的接口配置为M-LAG保留接口,避免该接口的状态变为M-LAG MAD DOWN导致Keepalive链路down,从而造成错误检测。
· 配置Tunnel接口为peer-link接口时,必须将Tunnel的出接口和Tunnel接口配置为保留接口,避免M-LAG系统分裂又恢复时,由于Tunnel的出接口或Tunnel接口的状态变为M-LAG MAD DOWN,导致Tunnel接口处于down状态,peer-link链路无法收发DRCP协议报文。
· M-LAG接口和peer-link接口所在VLAN对应的VLAN接口需要配置为M-LAG保留接口,以避免M-LAG设备间同步表项时,因VLAN接口处于M-LAG MAD DOWN状态,ARP/ND表项无法同步,影响流量转发。
可以通过display m-lag mad verbose命令查看当前已经配置的保留接口。
接口处于M-LAG MAD DOWN状态时,配置该接口为保留接口,该接口仍会保持M-LAG MAD DOWN状态,不会恢复up状态。
(1) 进入系统视图。
system-view
(2) 配置M-LAG保留接口。
m-lag mad exclude interface interface-type interface-number
缺省情况下,未配置M-LAG保留接口。
在EVPN+M-LAG组网环境中,当使用VXLAN隧道作为peer-link链路时,为了保证M-LAG系统分裂后M-LAG设备能够正常工作,需要将大量逻辑接口(除物理接口外的所有接口,例如VLAN接口、聚合接口、Loopback接口、Tunnel接口和VSI接口等)配置为保留接口。此时,为了减少配置工作量,可以通过本功能将所有逻辑接口配置为M-LAG保留接口。
如果同时存在本命令、m-lag mad exclude interface命令和m-lag mad include interface命令,则m-lag mad exclude interface命令和m-lag mad include interface命令优先生效。
(1) 进入系统视图。
system-view
(2) 配置所有逻辑接口为M-LAG保留接口。
m-lag mad exclude logical-interfaces
缺省情况下,所有逻辑接口未配置为M-LAG保留接口。
系统自动配置M-LAG接口的成员口在M-LAG系统分裂后处于M-LAG MAD DOWN状态,不需要配置本功能。
配置以下接口在M-LAG系统分裂后处于M-LAG MAD DOWN状态时,配置不生效:
· M-LAG系统保留接口。
· IRF保留接口(包括用户配置的和系统保留的)。有关IRF保留接口的详细介绍,请参见“虚拟化技术配置指导”中的“IRF”。
· 在接口上配置了强制端口up功能:
¡ 通过loopback命令开启接口的环回功能。
¡ 通过port service-loopback group命令将端口加入指定的业务环回组。
¡ 通过mirroring-group reflector-port命令为远程源镜像组配置反射端口。
¡ 通过port up-mode命令强制开启光口。
(1) 进入系统视图。
system-view
(2) 配置在M-LAG系统分裂后处于M-LAG MAD DOWN状态的接口。
m-lag mad include interface interface-type interface-number
缺省情况下,未指定接口为在M-LAG系统分裂后必须处于M-LAG MAD DOWN状态的接口。
当peer-link链路故障,Keepalive链路正常工作时,主设备正常工作,从设备会自动关闭本设备上除M-LAG保留接口外的所有接口,将这些接口置为M-LAG MAD DOWN状态。如果此时Keepalive链路也发生故障,从设备上的接口会解除M-LAG MAD DOWN状态,并升级为主设备,使M-LAG系统中的两台设备都作为主设备转发流量,引起网络故障。为了避免以上情况,可以在设备上开启M-LAG MAD DOWN状态保持功能,使设备上的接口一直处于M-LAG MAD DOWN状态,不参与流量转发。在上述场景下,如果负责转发流量的M-LAG设备故障,则可以强制解除另一台M-LAG设备上所有接口的M-LAG MAD DOWN状态,使设备正常转发流量,避免业务长时间中断。
(1) 进入系统视图。
system-view
(2) 开启M-LAG MAD DOWN状态保持功能。
m-lag mad persistent
缺省情况下,M-LAG MAD DOWN状态保持功能处于关闭状态。
(3) (可选)解除设备上所有接口的M-LAG MAD DOWN状态。
m-lag mad restore
当peer-link链路或Keepalive链路处于up状态时,不能配置本功能。
缺省情况下,不允许M-LAG接口单边接入,即仅一台M-LAG设备配置M-LAG接口。M-LAG接口单边接入时,将该M-LAG接口置为M-LAG DOWN状态。
当存在单归接入设备时,如果需要使用M-LAG接口转发流量,则需要配置允许M-LAG接口单边接入,不将该M-LAG接口置为M-LAG DOWN状态,保证流量正常转发。当允许M-LAG接口单边接入时,不对该M-LAG接口进行一致性检查。
配置二层聚合接口加入M-LAG组,该聚合接口不能是peer-link接口。二层聚合接口加入M-LAG组后,同时也创建了对应的M-LAG接口即M-LAG接口。
一台M-LAG设备上可以配置多个M-LAG接口。
一个二层聚合接口只能加入一个M-LAG组。
不能通过重复执行port m-lag group命令修改M-LAG接口单边接入配置。如需修改M-LAG接口单边接入配置,请先通过undo port m-lag group命令取消配置为M-LAG接口,再执行port m-lag group命令修改M-LAG接口单边接入配置。
为了避免环路,配置M-LAG接口单边接入配置时,需要先配置M-LAG接口,再将成员端口加入聚合;取消配置M-LAG接口单边接入时,需要先将成员端口退出聚合组,再取消配置为M-LAG接口。
(1) 进入系统视图。
system-view
(2) 进入二层聚合接口视图。
interface bridge-aggregation interface-number
(3) 配置M-LAG接口。
port m-lag group group-id [ allow-single-member ]
建议在动态聚合接口下指定allow-single-member参数。
配置二层聚合接口或Tunnel接口为peer-link接口时:
· 该聚合接口不能是M-LAG接口,且peer-link接口的带宽要大于M-LAG接口的带宽。
· 该Tunnel接口的隧道模式必须为VXLAN隧道,且该Tunnel接口不能和VXLAN关联。仅在EVPN组网环境中支持使用Tunnel接口作为peer-link接口。有关EVPN的详细介绍,请参见“EVPN配置指导”中的“EVPN”。
一台M-LAG设备上只能配置一个peer-link接口。
配置聚合接口为peer-link接口时,如果该聚合接口上VLAN配置为缺省配置,则该聚合接口的链路类型改为Trunk类型,且允许所有VLAN通过该Trunk端口。否则,VLAN配置不进行改变。
建议在peer-link接口上配置link-delay命令,以减少接口震荡对上层业务的影响。关于link-delay命令的详细介绍,请参见“二层技术-以太网交换命令参考”中的“以太网链路聚合”。
peer-link接口不允许关闭MAC地址学习功能。有关MAC地址学习功能的详细介绍,请参见“二层技术-以太网交换命令参考”中的“MAC地址表”。
两端M-LAG设备的peer-link接口上允许通过的超长帧需要相同,否则会导致M-LAG设备间信息同步失败。关于超长帧的详细介绍,请参见“二层技术-以太网交换配置指导”中的“以太网链路聚合”。
请不要在peer-link接口间使用远端MEP的MAC地址进行其它CFD各项功能测试,否则会造成这些测试功能失效。有关CFD的详细介绍,请参见“可靠性配置指导”中的“CFD”。
当使用Tunnel接口作为peer-link接口时,需要在两端M-LAG设备上创建VLAN接口,并配置路由协议开销值最小,以便通过该VLAN接口实现M-LAG设备间三层互通。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层聚合接口视图。
interface bridge-aggregation interface-number
¡ 进入Tunnel接口视图。
interface tunnel number
(3) 配置peer-link接口。
port m-lag peer-link port-number
当用户需要快速检测peer-link接口状态时,可以配置本功能,快速发送DRCP报文。
短超时配置仅在peer-link接口或者M-LAG接口下配置时生效。
请不要在M-LAG进程重启时或ISSU升级前配置DRCP超时时间为短超时,否则在M-LAG进程重启时或ISSU升级期间会出现网络流量中断,导致流量转发不通。有关ISSU升级的详细介绍,请参见“基础配置指导”中的“ISSU配置”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层聚合接口视图。
interface bridge-aggregation interface-number
¡ 进入Tunnel接口视图。
interface tunnel number
(3) 配置端口的DRCP超时时间为短超时。
m-lag drcp period short
缺省情况下,端口的DRCP超时时间为长超时(90秒)。
不同类型接口的M-LAG虚拟IP地址用于不同组网场景:
· VLAN接口:双活网关场景。
· VSI接口:EVPN分布式网关支持M-LAG场景。有关该场景的详细介绍,请参见“EVPN配置指导”中的“EVPN VXLAN”。
在双活网关场景下,两台M-LAG设备上的VLAN接口需要配置相同的IP地址和MAC地址。当实现M-LAG设备与其他设备间三层互通时,因为M-LAG设备上具有相同的IP地址,会导致与其他设备的路由邻居关系建立失败。为了避免上述问题,可以在M-LAG设备上配置本命令,路由协议使用该IP地址与其他设备建立邻居关系。
在双活网关场景下,配置本命令时,需要在两台M-LAG设备上配置不同的虚拟IP地址,且均配置为active状态。
在同一接口下,多次配置接口的M-LAG虚拟IP地址:
· 只能配置2个M-LAG虚拟IPv4/IPv6地址。
· 同一虚拟IPv6地址配置不同虚拟MAC地址时,最后一次执行的命令生效。
· 不同虚拟IPv6地址不能配置同一虚拟MAC地址。
· 配置VLAN接口的M-LAG虚拟IPv6地址时,两台M-LAG设备相同的虚拟IPv6地址需要配置相同的虚拟MAC地址。
(1) 进入系统视图。
system-view
(2) 进入VLAN接口视图。
interface vlan-interface interface-number
(3) 配置接口的M-LAG虚拟IPv4地址。
port m-lag virtual-ip ipv4-address { mask-length | mask } [ active | standby ]
缺省情况下,未配置接口的M-LAG虚拟IPv4地址。
(4) 配置接口的M-LAG虚拟IPv6地址。
port m-lag ipv6 virtual-ip ipv6-address { prefix-length [ active | standby ] [ virtual-mac mac-address ] | link-local }
缺省情况下,未配置接口的M-LAG虚拟IPv6地址。
(1) 进入系统视图。
system-view
(2) 进入VSI接口视图。
interface vsi-interface interface-number
(3) 配置接口的M-LAG虚拟IPv4地址。
port m-lag virtual-ip ipv4-address { mask-length | mask } [ active | standby ]
缺省情况下,未配置接口的M-LAG虚拟IPv4地址。
(4) 配置接口的M-LAG虚拟IPv6地址。
port m-lag ipv6 virtual-ip ipv6-address { prefix-length [ active | standby ] | link-local }
缺省情况下,未配置接口的M-LAG虚拟IPv6地址。
进行配置一致性检查,检查到配置不匹配时,根据配置一致性检查类型的不同,处理方式为:
· 当检查到Type 1类型不匹配时,不同的配置一致性检查模式处理方式为:
¡ 松散模式:打印配置一致性检查失败的日志信息。
¡ 严格模式:关闭M-LAG接口,并打印配置一致性检查失败的日志信息。
· 当检查到Type 2类型不匹配时,在松散模式和严格模式下,都仅打印配置一致性检查失败的日志信息。
(1) 进入系统视图。
system-view
(2) 配置一致性检查的模式为松散模式。
m-lag consistency-check mode { loose | strict }
缺省情况下,M-LAG配置一致性检查的模式为严格模式。
当M-LAG系统中两台M-LAG设备因为版本升级等原因,导致M-LAG设备配置不一致时,为了避免因配置一致性检查而关闭M-LAG接口,用户可以通过m-lag consistency-check disable命令暂时关闭M-LAG配置一致性检查,保证M-LAG接口正常工作。
请用户保证两端M-LAG设备配置一致性检查功能开启状态一致,否则不能通过一致性检查。
(1) 进入系统视图。
system-view
(2) 关闭M-LAG配置一致性检查功能。
m-lag consistency-check disable
缺省情况下,M-LAG配置一致性检查功能处于开启状态。
peer-link链路down后,设备启动本定时器,等待链路上Keepalive报文收发完全,防止因为延迟造成错误检测。设备需要检测peer-link链路down的原因,是设备故障即本端M-LAG设备未收到对端M-LAG设备的Keepalive报文,还是peer-link链路故障。
在定时器超时前收到对端的Keepalive报文,则认为是peer-link链路故障,否则认为设备故障。
(1) 进入系统视图。
system-view
(2) 配置peer-link链路down后等待检测故障原因的时间。
m-lag keepalive hold-time value
缺省情况下,peer-link链路down后等待检测故障原因的时间为3秒。
M-LAG系统中主从设备由于故障重启,仅一台M-LAG设备恢复启动后,缺省情况下,该设备处于None角色,所有M-LAG接口处于M-LAG DOWN状态。此时用户流量无法通过M-LAG接口转发。
为了避免上述情况出现,可以配置本功能,在设备重启后启动自动恢复定时器。当自动恢复定时器超时后,该设备上M-LAG接口被置为非M-LAG DOWN状态,如果该设备上存在处于up状态的M-LAG接口,则该设备升级为主设备,用户流量可以正常转发;否则,设备保持None角色,用户流量无法转发。
M-LAG系统中主从设备由于故障重启,两台M-LAG设备均恢复启动时,如果设备在自动恢复定时器超时前未收到DRCP报文或Keepalive报文,且均存在处于up状态的M-LAG接口,则两台M-LAG设备均升级为主设备,此时需要用户检查peer-link链路和Keepalive链路,并排除故障。
请配置本定时器的值大于整机重启时间,避免M-LAG设备间出现角色抢占。
(1) 进入系统视图。
system-view
(2) 配置设备重启后的自动恢复时间。
m-lag auto-recovery reload-delay delay-value
缺省情况下,设备不自动恢复。
本定时器用来设置设备作为从设备加入M-LAG系统时进行MAC地址表项等信息同步的最大时间。定时器超时之前,业务口(除M-LAG保留接口以外的接口)状态为M-LAG MAD DOWN。定时器超时后,业务口状态变为up。
管理员需要根据M-LAG设备上的表项大小,合理调整延迟恢复时间。如果M-LAG间需要同步的表项较少,则适当减少延迟时间;如果M-LAG间需要同步的表项较多,则适当增加延迟时间。一般情况下,建议配置为300秒。如果设备上表项过多时,例如ARP表项达到48K,则延迟时间建议配置为900秒。
以下情况需要适当延长本定时器:
· 当设备表项较多或者进行ISSU升级时,为避免出现丢包或者其它转发问题。
· 开启M-LAG配置一致性检查功能后,设备会启动延迟恢复定时器,设备会在延迟恢复定时器一半时间之后进行配置一致性检查,为避免在延迟恢复时造成M-LAG接口震荡。
(1) 进入系统视图。
system-view
(2) 配置接口延迟恢复时间。
m-lag restore-delay value
缺省情况下,延迟恢复时间为30秒。
开启M-LAG序列号校验功能,即开启DRCP报文和Keepalive报文的序列号校验功能。
序列号校验的防攻击能力比较差,攻击者只要将侦听到的报文序列号增加,就可以欺骗报文接收者。同时使用认证功能,防止攻击者篡改报文内容,才可以提供更好的安全性。
设备整机重启后,如果攻击者使用之前获取的报文进行攻击,则对端未重启设备可能认可攻击报文。建议设备重启后更换认证密钥。
(1) 进入系统视图。
system-view
(2) 开启M-LAG序列号校验功能。
m-lag sequence enable
缺省情况下,M-LAG序列号校验功能处于关闭状态。
开启M-LAG报文认证功能,即开启DRCP报文和Keepalive报文的认证功能。
两台M-LAG设备需要配置相同密钥,否则认证失败。
(1) 进入系统视图。
system-view
(2) 开启M-LAG报文认证功能,并配置认证密钥。
m-lag authentication key { simple | cipher } string
缺省情况下,M-LAG报文认证功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置后的M-LAG的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,用户可以执行reset命令来清除M-LAG的相关信息。
表1-6 M-LAG显示和维护
操作 |
命令 |
显示M-LAG配置一致性信息 |
display m-lag consistency { type1 | type2 } { global | interface interface-type interface-number } |
显示M-LAG配置一致性检查状态 |
display m-lag consistency-check status |
显示M-LAG DRCP报文的统计信息 |
display m-lag drcp statistics [ interface interface-type interface-number ] |
显示M-LAG Keepalive报文的信息 |
display m-lag keepalive |
显示M-LAG MAD的详细信息 |
display m-lag mad verbose |
显示M-LAG设备角色信息 |
display m-lag role |
显示M-LAG的接口摘要信息 |
display m-lag summary |
显示M-LAG系统信息 |
display m-lag system |
显示M-LAG的故障信息 |
display m-lag troubleshooting [ m-lag-interface | peer-link | keepalive ] [ history ] [ count ] |
显示M-LAG的接口详细信息 |
display m-lag verbose [ interface bridge-aggregation interface-number ] |
显示M-LAG虚拟IP地址信息 |
display m-lag virtual-ip [ interface interface-type interface-number ] |
清除M-LAG的DRCP统计信息 |
reset m-lag drcp statistics [ interface interface-list ] |
清除M-LAG的历史故障信息 |
reset m-lag troubleshooting history |
· 由于用户对于业务的可靠性要求很高,如果Device C和接入设备(Device A和Device B)之间配置链路聚合只能保证链路级的可靠性,接入设备发生故障时则会导致业务中断。这时用户可以采用M-LAG技术,正常工作时链路进行负载分担且任何一台设备故障对业务均没有影响,保证业务的高可靠性。
· 配置三层以太网接口为保留接口,在该三层以太网接口上搭建Keepalive链路,保证Keepalive报文能够正常传输。
图1-13 M-LAG基本功能配置组网图
缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。
(1) 配置Device A
# 系统配置。
<DeviceA> system-view
[DeviceA] m-lag system-mac 1-1-1
[DeviceA] m-lag system-number 1
[DeviceA] m-lag system-priority 123
# 配置Keepalive报文的目的IP地址和源IP地址。
[DeviceA] m-lag keepalive ip destination 1.1.1.1 source 1.1.1.2
# 配置端口FortyGigE1/0/5工作在三层模式,并配置IP地址为Keepalive报文的源IP地址。
[DeviceA] interface fortygige 1/0/5
[DeviceA-FortyGigE1/0/5] port link-mode route
[DeviceA-FortyGigE1/0/5] ip address 1.1.1.2 24
[DeviceA-FortyGigE1/0/5] quit
# 配置Keepalive链路接口为保留接口。
[DeviceA] m-lag mad exclude interface fortygige 1/0/5
# 创建二层聚合接口3,并配置该接口为动态聚合模式。
[DeviceA] interface bridge-aggregation 3
[DeviceA-Bridge-Aggregation3] link-aggregation mode dynamic
[DeviceA-Bridge-Aggregation3] quit
# 分别将端口FortyGigE1/0/1和FortyGigE1/0/2加入到聚合组3中。
[DeviceA] interface fortygige 1/0/1
[DeviceA-FortyGigE1/0/1] port link-aggregation group 3
[DeviceA-FortyGigE1/0/1] quit
[DeviceA] interface fortygige 1/0/2
[DeviceA-FortyGigE1/0/2] port link-aggregation group 3
[DeviceA-FortyGigE1/0/2] quit
# 将二层聚合接口3配置为peer-link接口。
[DeviceA] interface bridge-aggregation 3
[DeviceA-Bridge-Aggregation3] port m-lag peer-link 1
[DeviceA-Bridge-Aggregation3] quit
# 创建二层聚合接口4,并配置该接口为动态聚合模式。
[DeviceA] interface bridge-aggregation 4
[DeviceA-Bridge-Aggregation4] link-aggregation mode dynamic
[DeviceA-Bridge-Aggregation4] quit
# 分别将端口FortyGigE1/0/3和FortyGigE1/0/4加入到聚合组4中。
[DeviceA] interface fortygige 1/0/3
[DeviceA-FortyGigE1/0/3] port link-aggregation group 4
[DeviceA-FortyGigE1/0/3] quit
[DeviceA] interface fortygige 1/0/4
[DeviceA-FortyGigE1/0/4] port link-aggregation group 4
[DeviceA-FortyGigE1/0/4] quit
# 将二层聚合接口4加入M-LAG组4中。
[DeviceA] interface bridge-aggregation 4
[DeviceA-Bridge-Aggregation4] port m-lag group 4
[DeviceA-Bridge-Aggregation4] quit
(2) 配置Device B
# 系统配置。
<DeviceB> system-view
[DeviceB] m-lag system-mac 1-1-1
[DeviceB] m-lag system-number 2
[DeviceB] m-lag system-priority 123
# 配置Keepalive报文的目的IP地址和源IP地址。
[DeviceB] m-lag keepalive ip destination 1.1.1.2 source 1.1.1.1
# 配置端口FortyGigE1/0/5工作在三层模式,并配置IP地址为Keepalive报文的源IP地址。
[DeviceB] interface fortygige 1/0/5
[DeviceB-FortyGigE1/0/5] port link-mode route
[DeviceB-FortyGigE1/0/5] ip address 1.1.1.1 24
[DeviceB-FortyGigE1/0/5] quit
# 配置Keepalive链路接口为保留接口。
[DeviceB] m-lag mad exclude interface fortygige 1/0/5
# 创建二层聚合接口3,并配置该接口为动态聚合模式。
[DeviceB] interface bridge-aggregation 3
[DeviceB-Bridge-Aggregation3] link-aggregation mode dynamic
[DeviceB-Bridge-Aggregation3] quit
# 分别将端口FortyGigE1/0/1和FortyGigE1/0/2加入到聚合组3中。
[DeviceB] interface fortygige 1/0/1
[DeviceB-FortyGigE1/0/1] port link-aggregation group 3
[DeviceB-FortyGigE1/0/1] quit
[DeviceB] interface fortygige 1/0/2
[DeviceB-FortyGigE1/0/2] port link-aggregation group 3
[DeviceB-FortyGigE1/0/2] quit
# 将二层聚合接口3配置为peer-link接口。
[DeviceB] interface bridge-aggregation 3
[DeviceB-Bridge-Aggregation3] port m-lag peer-link 1
[DeviceB-Bridge-Aggregation3] quit
# 创建二层聚合接口4,并配置该接口为动态聚合模式。
[DeviceB] interface bridge-aggregation 4
[DeviceB-Bridge-Aggregation4] link-aggregation mode dynamic
[DeviceB-Bridge-Aggregation4] quit
# 分别将端口FortyGigE1/0/3和FortyGigE1/0/4加入到聚合组4中。
[DeviceB] interface fortygige 1/0/3
[DeviceB-FortyGigE1/0/3] port link-aggregation group 4
[DeviceB-FortyGigE1/0/3] quit
[DeviceB] interface fortygige 1/0/4
[DeviceB-FortyGigE1/0/4] port link-aggregation group 4
[DeviceB-FortyGigE1/0/4] quit
# 将二层聚合接口4加入M-LAG组4中。
[DeviceB] interface bridge-aggregation 4
[DeviceB-Bridge-Aggregation4] port m-lag group 4
[DeviceB-Bridge-Aggregation4] quit
(3) 配置Device C
# 创建二层聚合接口4,并配置该接口为动态聚合模式。
<DeviceC> system-view
[DeviceC] interface bridge-aggregation 4
[DeviceC-Bridge-Aggregation4] link-aggregation mode dynamic
[DeviceC-Bridge-Aggregation4] quit
# 分别将端口FortyGigE1/0/1~FortyGigE1/0/4加入到聚合组4中。
[DeviceC] interface range fortygige 1/0/1 to fortygige 1/0/4
[DeviceC-if-range] port link-aggregation group 4
[DeviceC-if-range] quit
# 查看Device A上M-LAG的Keepalive报文信息。
[DeviceA] display m-lag keepalive
Neighbor keepalive link status: Up
Neighbor is alive for: 104 s 16 ms
Keepalive packet transmission status:
Sent: Successful
Received: Successful
Last received keepalive packet information:
Source IP address: 1.1.1.1
Time: 2019/09/11 09:21:51
Action: Accept
M-LAG keepalive parameters:
Destination IP address: 1.1.1.1
Source IP address: 1.1.1.2
Keepalive UDP port : 6400
Keepalive VPN name : N/A
Keepalive interval : 1000 ms
Keepalive timeout : 5 sec
Keepalive hold time: 3 sec
以上信息表明Device A和Device B设备间无故障。
# 查看Device A上peer-link接口和M-LAG接口的摘要信息和详细信息。
[DeviceA] display m-lag summary
Flags: A -- Aggregate interface down, B -- No peer M-LAG interface configured
C -- Configuration consistency check failed
Peer-link interface: BAGG3
Peer-link interface state (cause): UP
Keepalive link state (cause): UP
M-LAG interface information
M-LAG IF M-LAG group Local state (cause) Peer state Remaining down time(s)
BAGG4 4 UP UP -
[DeviceA] display m-lag verbose
Flags: A -- Home_Gateway, B -- Neighbor_Gateway, C -- Other_Gateway,
D -- PeerLink_Activity, E -- DRCP_Timeout, F -- Gateway_Sync,
G -- Port_Sync, H -- Expired
Peer-link interface/Peer-link interface ID: BAGG3/1
State: UP
Cause: -
Local DRCP flags/Peer DRCP flags: ABDFG/ABDFG
Local Selected ports (index): FGE1/0/1 (260), FGE1/0/2 (261)
Peer Selected ports indexes: 260, 261
M-LAG interface/M-LAG group ID: BAGG4/4
Local M-LAG interface state: UP
Peer M-LAG interface state: UP
M-LAG group state: UP
Local M-LAG interface down cause: -
Remaining M-LAG DOWN time: -
Local M-LAG interface LACP MAC: Config=0001-0001-0001, Effective=0001-0001-0001
Peer M-LAG interface LACP MAC: Config=0001-0001-0001, Effective=0001-0001-0001
Local M-LAG interface LACP priority: Config=123, Effective=123
Peer M-LAG interface LACP priority: Config=123, Effective=123
Local DRCP flags/Peer DRCP flags: ABDFG/ABDFG
Local Selected ports (index): FGE1/0/3 (258), FGE1/0/4 (259)
Peer Selected ports indexes: 258, 259
以上信息表明Device A和Device B成功组成M-LAG系统。
# 查看Device C上聚合组4的详细信息。
[DeviceC] display link-aggregation verbose bridge-aggregation 4
Loadsharing Type: Shar -- Loadsharing, NonS -- Non-Loadsharing
Port Status: S -- Selected, U -- Unselected, I -- Individual
Port: A -- Auto port, M -- Management port, R -- Reference port
Flags: A -- LACP_Activity, B -- LACP_Timeout, C -- Aggregation,
D -- Synchronization, E -- Collecting, F -- Distributing,
G -- Defaulted, H -- Expired
Aggregate Interface: Bridge-Aggregation4
Creation Mode: Manual
Aggregation Mode: Dynamic
Loadsharing Type: Shar
Management VLANs: None
System ID: 0x8000, 2e56-cbae-0600
Local:
Port Status Priority Index Oper-Key Flag
FGE1/0/1(R) S 32768 1 1 {ACDEF}
FGE1/0/2 S 32768 2 1 {ACDEF}
FGE1/0/3 S 32768 3 1 {ACDEF}
FGE1/0/4 S 32768 4 1 {ACDEF}
Remote:
Actor Priority Index Oper-Key SystemID Flag
FGE1/0/1 32768 16387 40004 0x7b , 0001-0001-0001 {ACDEF}
FGE1/0/2 32768 16388 40004 0x7b , 0001-0001-0001 {ACDEF}
FGE1/0/3 32768 32771 40004 0x7b , 0001-0001-0001 {ACDEF}
FGE1/0/4 32768 32772 40004 0x7b , 0001-0001-0001 {ACDEF}
以上信息表明,Device C的端口FortyGigE1/0/1~FortyGigE1/0/4均处于选中状态,此时Device C将DeviceA和DeviceB认为是一台设备,从而实现了跨设备的聚合。
· 由于用户对于业务的可靠性要求很高,如果Device C和接入设备(Device A和Device B)之间配置链路聚合只能保证链路级的可靠性,接入设备发生故障时则会导致业务中断。这时用户可以采用M-LAG技术,正常工作时链路进行负载分担且任何一台设备故障对业务均没有影响,保证业务的高可靠性。
· 配置Device A和Device B的三层以太网接口FortyGigE1/0/5为保留接口,在该三层以太网接口上搭建Keepalive链路,保证Keepalive报文能够正常传输。
· VLAN 100内主机的缺省网关为10.1.1.100/24,VLAN 101内主机的缺省网关为20.1.1.100/24。Device A和Device B同时属于虚拟IP地址为10.1.1.100/24的备份组1和虚拟IP地址为20.1.1.100/24的备份组2。在备份组1和备份组2中Device A的优先级高于Device B。
图1-14 M-LAG三层转发配置组网图
缺省情况下,本设备的接口处于ADM(Administratively Down)状态,请根据实际需要在对应接口视图下使用undo shutdown命令开启接口。
(1) 配置Device A
# 系统配置。
<DeviceA> system-view
[DeviceA] m-lag system-mac 1-1-1
[DeviceA] m-lag system-number 1
[DeviceA] m-lag system-priority 123
# 配置Keepalive报文的目的IP地址和源IP地址。
[DeviceA] m-lag keepalive ip destination 1.1.1.2 source 1.1.1.1
# 配置端口FortyGigE1/0/5工作在三层模式,并配置IP地址为Keepalive报文的源IP地址。
[DeviceA] interface fortygige 1/0/5
[DeviceA-FortyGigE1/0/5] port link-mode route
[DeviceA-FortyGigE1/0/5] ip address 1.1.1.1 24
[DeviceA-FortyGigE1/0/5] quit
# 配置Keepalive链路接口为M-LAG保留接口。
[DeviceA] m-lag mad exclude interface fortygige 1/0/5
# 创建动态二层聚合接口125。
[DeviceA] interface bridge-aggregation 125
[DeviceA-Bridge-Aggregation125] link-aggregation mode dynamic
[DeviceA-Bridge-Aggregation125] quit
# 分别将端口FortyGigE1/0/3和FortyGigE1/0/4加入到聚合组125中。
[DeviceA] interface fortygige 1/0/3
[DeviceA-FortyGigE1/0/3] port link-aggregation group 125
[DeviceA-FortyGigE1/0/3] quit
[DeviceA] interface fortygige 1/0/4
[DeviceA-FortyGigE1/0/4] port link-aggregation group 125
[DeviceA-FortyGigE1/0/4] quit
# 配置二层聚合接口125为peer-link接口。
[DeviceA] interface bridge-aggregation 125
[DeviceA-Bridge-Aggregation125] port m-lag peer-link 1
[DeviceA-Bridge-Aggregation125] quit
# 创建动态二层聚合接口100,并配置该接口为M-LAG接口1。
[DeviceA] interface bridge-aggregation 100
[DeviceA-Bridge-Aggregation100] link-aggregation mode dynamic
[DeviceA-Bridge-Aggregation100] port m-lag group 1
[DeviceA-Bridge-Aggregation100] quit
# 将端口FortyGigE1/0/1加入到聚合组100中。
[DeviceA] interface fortygige 1/0/1
[DeviceA-FortyGigE1/0/1] port link-aggregation group 100
[DeviceA-FortyGigE1/0/1] quit
# 创建动态二层聚合接口101,并配置该接口为M-LAG接口2。
[DeviceA] interface bridge-aggregation 101
[DeviceA-Bridge-Aggregation101] link-aggregation mode dynamic
[DeviceA-Bridge-Aggregation101] port m-lag group 2
[DeviceA-Bridge-Aggregation101] quit
# 将端口FortyGigE1/0/2加入到聚合组101中。
[DeviceA] interface fortygige 1/0/2
[DeviceA-FortyGigE1/0/2] port link-aggregation group 101
[DeviceA-FortyGigE1/0/2] quit
# 创建VLAN 100和101。
[DeviceA] vlan 100
[DeviceA-vlan100] quit
[DeviceA] vlan 101
[DeviceA-vlan101] quit
# 配置二层聚合接口100为Trunk端口,并允许VLAN 100的报文通过。
[DeviceA] interface bridge-aggregation 100
[DeviceA-Bridge-Aggregation100] port link-type trunk
[DeviceA-Bridge-Aggregation100] port trunk permit vlan 100
[DeviceA-Bridge-Aggregation100] quit
# 配置二层聚合接口101为Trunk端口,并允许VLAN 101的报文通过。
[DeviceA] interface bridge-aggregation 101
[DeviceA-Bridge-Aggregation101] port link-type trunk
[DeviceA-Bridge-Aggregation101] port trunk permit vlan 101
[DeviceA-Bridge-Aggregation101] quit
# 创建接口Vlan-interface100和Vlan-interface101,并配置其IP地址。
[DeviceA] interface vlan-interface 100
[DeviceA-vlan-interface100] ip address 10.1.1.1 24
[DeviceA-vlan-interface100] quit
[DeviceA] interface vlan-interface 101
[DeviceA-vlan-interface101] ip address 20.1.1.1 24
[DeviceA-vlan-interface101] quit
# 配置Vlan-interface100和Vlan-interface101接口为M-LAG保留接口。
[DeviceA] m-lag mad exclude interface vlan-interface 100
[DeviceA] m-lag mad exclude interface vlan-interface 101
# 配置OSPF。
[DeviceA] ospf
[DeviceA-ospf-1] import-route direct
[DeviceA-ospf-1] area 0
[DeviceA-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[DeviceA-ospf-1-area-0.0.0.0] network 20.1.1.0 0.0.0.255
[DeviceA-ospf-1-area-0.0.0.0] quit
[DeviceA-ospf-1] quit
# 为接口Vlan-interface100创建备份组1,并配置备份组1的虚拟IP地址为10.1.1.100。
[DeviceA] interface vlan-interface 100
[DeviceA-Vlan-interface100] vrrp vrid 1 virtual-ip 10.1.1.100
# 设置Device A在备份组1中的优先级为200,以保证Device A成为Master,从而和Device A在M-LAG中角色一致。
[DeviceA-Vlan-interface100] vrrp vrid 1 priority 200
[DeviceA-Vlan-interface100] quit
# 为接口Vlan-interface101创建备份组2,并配置备份组2的虚拟IP地址为20.1.1.100。
[DeviceA] interface vlan-interface 101
[DeviceA-Vlan-interface101] vrrp vrid 2 virtual-ip 20.1.1.100
# 设置Device A在备份组2中的优先级为200,以保证Device A成为Master,从而和Device A在M-LAG中角色一致。
[DeviceA-Vlan-interface101] vrrp vrid 2 priority 200
[DeviceA-Vlan-interface101] quit
(2) 配置Device B
# 系统配置。
<DeviceB> system-view
[DeviceB] m-lag system-mac 1-1-1
[DeviceB] m-lag system-number 2
[DeviceB] m-lag system-priority 123
# 配置Keepalive报文的目的IP地址和源IP地址。
[DeviceB] m-lag keepalive ip destination 1.1.1.1 source 1.1.1.2
# 配置端口FortyGigE1/0/5工作在三层模式,并配置IP地址为Keepalive报文的源IP地址。
[DeviceB] interface fortygige 1/0/5
[DeviceB-FortyGigE1/0/5] port link-mode route
[DeviceB-FortyGigE1/0/5] ip address 1.1.1.2 24
[DeviceB-FortyGigE1/0/5] quit
# 配置Keepalive链路接口为M-LAG保留接口。
[DeviceB] m-lag mad exclude interface fortygige 1/0/5
# 创建动态二层聚合接口125。
[DeviceB] interface bridge-aggregation 125
[DeviceB-Bridge-Aggregation125] link-aggregation mode dynamic
[DeviceB-Bridge-Aggregation125] quit
# 分别将端口FortyGigE1/0/3和FortyGigE1/0/4加入到聚合组125中。
[DeviceB] interface fortygige 1/0/3
[DeviceB-FortyGigE1/0/3] port link-aggregation group 125
[DeviceB-FortyGigE1/0/3] quit
[DeviceB] interface fortygige 1/0/4
[DeviceB-FortyGigE1/0/4] port link-aggregation group 125
[DeviceB-FortyGigE1/0/4] quit
# 配置二层聚合接口125为peer-link接口。
[DeviceB] interface bridge-aggregation 125
[DeviceB-Bridge-Aggregation125] port m-lag peer-link 1
[DeviceB-Bridge-Aggregation125] quit
# 创建动态二层聚合接口100,并配置该接口为M-LAG接口1。
[DeviceB] interface bridge-aggregation 100
[DeviceB-Bridge-Aggregation100] link-aggregation mode dynamic
[DeviceB-Bridge-Aggregation100] port m-lag group 1
[DeviceB-Bridge-Aggregation100] quit
# 将端口FortyGigE1/0/1加入到聚合组100中。
[DeviceB] interface fortygige 1/0/1
[DeviceB-FortyGigE1/0/1] port link-aggregation group 100
[DeviceB-FortyGigE1/0/1] quit
# 创建动态二层聚合接口101,并配置该接口为M-LAG接口2。
[DeviceB] interface bridge-aggregation 101
[DeviceB-Bridge-Aggregation101] link-aggregation mode dynamic
[DeviceB-Bridge-Aggregation101] port m-lag group 2
[DeviceB-Bridge-Aggregation101] quit
# 将端口FortyGigE1/0/2加入到聚合组101中。
[DeviceB] interface fortygige 1/0/2
[DeviceB-FortyGigE1/0/2] port link-aggregation group 101
[DeviceB-FortyGigE1/0/2] quit
# 创建VLAN 100和101。
[DeviceB] vlan 100
[DeviceB-vlan100] quit
[DeviceB] vlan 101
[DeviceB-vlan101] quit
# 配置二层聚合接口100为Trunk端口,并允许VLAN 100的报文通过。
[DeviceB] interface bridge-aggregation 100
[DeviceB-Bridge-Aggregation100] port link-type trunk
[DeviceB-Bridge-Aggregation100] port trunk permit vlan 100
[DeviceB-Bridge-Aggregation100] quit
# 配置二层聚合接口101为Trunk端口,并允许VLAN 101的报文通过。
[DeviceB] interface bridge-aggregation 101
[DeviceB-Bridge-Aggregation101] port link-type trunk
[DeviceB-Bridge-Aggregation101] port trunk permit vlan 101
[DeviceB-Bridge-Aggregation101] quit
# 创建接口Vlan-interface100和Vlan-interface101,并配置其IP地址。
[DeviceB] interface vlan-interface 100
[DeviceB-vlan-interface100] ip address 10.1.1.2 24
[DeviceB-vlan-interface100] quit
[DeviceB] interface vlan-interface 101
[DeviceB-vlan-interface101] ip address 20.1.1.2 24
[DeviceB-vlan-interface101] quit
# 配置Vlan-interface100和Vlan-interface101接口为M-LAG保留接口。
[DeviceB] m-lag mad exclude interface vlan-interface 100
[DeviceB] m-lag mad exclude interface vlan-interface 101
# 配置OSPF。
[DeviceB] ospf
[DeviceB-ospf-1] import-route direct
[DeviceB-ospf-1] area 0
[DeviceB-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[DeviceB-ospf-1-area-0.0.0.0] network 20.1.1.0 0.0.0.255
[DeviceB-ospf-1-area-0.0.0.0] quit
[DeviceB-ospf-1] quit
# 为接口Vlan-interface100创建备份组1,并配置备份组1的虚拟IP地址为10.1.1.100。
[DeviceB] interface vlan-interface 100
[DeviceB-Vlan-interface100] vrrp vrid 1 virtual-ip 10.1.1.100
[DeviceB-Vlan-interface100] quit
# 为接口Vlan-interface101创建备份组2,并配置备份组2的虚拟IP地址为20.1.1.100。
[DeviceB] interface vlan-interface 101
[DeviceB-Vlan-interface101] vrrp vrid 2 virtual-ip 20.1.1.100
[DeviceB-Vlan-interface101] quit
(3) 配置Device C
# 创建二层聚合接口100,并配置该接口为动态聚合模式。
<DeviceC> system-view
[DeviceC] interface bridge-aggregation 100
[DeviceC-Bridge-Aggregation100] link-aggregation mode dynamic
[DeviceC-Bridge-Aggregation100] quit
# 分别将端口FortyGigE1/0/1和FortyGigE1/0/2加入到聚合组100中。
[DeviceC] interface range fortygige 1/0/1 to fortygige 1/0/2
[DeviceC-if-range] port link-aggregation group 100
[DeviceC-if-range] quit
# 创建VLAN 100。
[DeviceC] vlan 100
[DeviceC-vlan100] quit
# 配置二层聚合接口100为Trunk端口,并允许VLAN 100的报文通过。
[DeviceC] interface bridge-aggregation 100
[DeviceC-Bridge-Aggregation100] port link-type trunk
[DeviceC-Bridge-Aggregation100] port trunk permit vlan 100
[DeviceC-Bridge-Aggregation100] quit
# 配置接口FortyGigE1/0/3为Trunk端口,并允许VLAN 100的报文通过。
[DeviceC] interface fortygige 1/0/3
[DeviceC-FortyGigE1/0/3] port link-type trunk
[DeviceC-FortyGigE1/0/3] port trunk permit vlan 100
[DeviceC-FortyGigE1/0/3] quit
# 创建接口Vlan-interface100,并配置其IP地址。
[DeviceC] interface vlan-interface 100
[DeviceC-vlan-interface100] ip address 10.1.1.3 24
[DeviceC-vlan-interface100] quit
# 配置OSPF。
[DeviceC] ospf
[DeviceC-ospf-1] import-route direct
[DeviceC-ospf-1] area 0
[DeviceC-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[DeviceC-ospf-1-area-0.0.0.0] quit
[DeviceC-ospf-1] quit
(4) 配置Device D
# 创建二层聚合接口101,并配置该接口为动态聚合模式。
<DeviceD> system-view
[DeviceD] interface bridge-aggregation 101
[DeviceD-Bridge-Aggregation101] link-aggregation mode dynamic
[DeviceD-Bridge-Aggregation101] quit
# 分别将端口FortyGigE1/0/1和FortyGigE1/0/2加入到聚合组101中。
[DeviceD] interface range fortygige 1/0/1 to fortygige 1/0/2
[DeviceD-if-range] port link-aggregation group 101
[DeviceD-if-range] quit
# 创建VLAN 101。
[DeviceD] vlan 101
[DeviceD-vlan101] quit
# 配置二层聚合接口101为Trunk端口,并允许VLAN 101的报文通过。
[DeviceD] interface bridge-aggregation 101
[DeviceD-Bridge-Aggregation101] port link-type trunk
[DeviceD-Bridge-Aggregation101] port trunk permit vlan 101
[DeviceD-Bridge-Aggregation101] quit
# 配置接口FortyGigE1/0/3为Trunk端口,并允许VLAN 101的报文通过。
[DeviceD] interface fortygige 1/0/3
[DeviceD-FortyGigE1/0/3] port link-type trunk
[DeviceD-FortyGigE1/0/3] port trunk permit vlan 101
[DeviceD-FortyGigE1/0/3] quit
# 创建接口Vlan-interface101,并配置其IP地址。
[DeviceD] interface vlan-interface 101
[DeviceD-vlan-interface101] ip address 20.1.1.3 24
[DeviceD-vlan-interface101] quit
# 配置OSPF。
[DeviceD] ospf
[DeviceD-ospf-1] import-route direct
[DeviceD-ospf-1] area 0
[DeviceD-ospf-1-area-0.0.0.0] network 20.1.1.0 0.0.0.255
[DeviceD-ospf-1-area-0.0.0.0] quit
[DeviceD-ospf-1] quit
# 在Device A上查看M-LAG的简要信息和详细信息。可以看到Device A和Device B成功组成M-LAG系统。
[DeviceA] display m-lag summary
Flags: A -- Aggregate interface down, B -- No peer M-LAG interface configured
C -- Configuration consistency check failed
Peer-link interface: BAGG125
Peer-link interface state (cause): UP
Keepalive link state (cause): UP
M-LAG interface information
M-LAG IF M-LAG group Local state (cause) Peer state Remaining down time(s)
BAGG100 1 UP UP -
BAGG101 2 UP UP -
[DeviceA] display m-lag verbose
Flags: A -- Home_Gateway, B -- Neighbor_Gateway, C -- Other_Gateway,
D -- PeerLink_Activity, E -- DRCP_Timeout, F -- Gateway_Sync,
G -- Port_Sync, H -- Expired
Peer-link interface/Peer-link interface ID: BAGG125/1
State: UP
Cause: -
Local DRCP flags/Peer DRCP flags: ABDFG/ABDFG
Local Selected ports (index): FGE1/0/3 (260), FGE1/0/4 (261)
Peer Selected ports indexes: 260, 261
M-LAG interface/M-LAG group ID: BAGG100/1
Local M-LAG interface state: UP
Peer M-LAG interface state: UP
M-LAG group state: UP
Local M-LAG interface down cause: -
Remaining M-LAG DOWN time: -
Local M-LAG interface LACP MAC: Config=N/A, Effective=0001-0001-0001
Peer M-LAG interface LACP MAC: Config=N/A, Effective=0001-0001-0001
Local M-LAG interface LACP priority: Config=32768, Effective=123
Peer M-LAG interface LACP priority: Config=32768, Effective=123
Local DRCP flags/Peer DRCP flags: ABDFG/ABDFG
Local Selected ports (index): FGE1/0/1 (258)
Peer Selected ports indexes: 258
M-LAG interface/M-LAG group ID: BAGG101/2
Local M-LAG interface state: UP
Peer M-LAG interface state: UP
M-LAG group state: UP
Local M-LAG interface down cause: -
Remaining M-LAG DOWN time: -
Local M-LAG interface LACP MAC: Config=N/A, Effective=0001-0001-0001
Peer M-LAG interface LACP MAC: Config=N/A, Effective=0001-0001-0001
Local M-LAG interface LACP priority: Config=32768, Effective=123
Peer M-LAG interface LACP priority: Config=32768, Effective=123
Local DRCP flags/Peer DRCP flags: ABDFG/ABDFG
Local Selected ports (index): FGE1/0/2 (259)
Peer Selected ports indexes: 259
# 在Device C和Device D上分别查看二层聚合组100和二层聚合组101的详细信息。可以看到Device C和Device D的端口FortyGigE1/0/1、FortyGigE1/0/2均处于选中状态,此时Device C和Device D将DeviceA和DeviceB认为是一台设备,从而实现了跨设备的聚合。
[DeviceC] display link-aggregation verbose
Loadsharing Type: Shar -- Loadsharing, NonS -- Non-Loadsharing
Port Status: S -- Selected, U -- Unselected, I -- Individual
Port: A -- Auto port, M -- Management port, R -- Reference port
Flags: A -- LACP_Activity, B -- LACP_Timeout, C -- Aggregation,
D -- Synchronization, E -- Collecting, F -- Distributing,
G -- Defaulted, H -- Expired
Aggregate Interface: Bridge-Aggregation100
Creation Mode: Manual
Aggregation Mode: Dynamic
Loadsharing Type: Shar
Management VLANs: None
System ID: 0x8000, a03b-0694-0300
Local:
Port Status Priority Index Oper-Key Flag
FGE1/0/1 S 32768 1 1 {ACDEF}
FGE1/0/2 S 32768 2 1 {ACDEF}
Remote:
Actor Priority Index Oper-Key SystemID Flag
FGE1/0/1(R) 32768 16386 40001 0x7b , 0001-0001-0001 {ACDEF}
FGE1/0/2 32768 32770 40001 0x7b , 0001-0001-0001 {ACDEF}
[DeviceD] display link-aggregation verbose
Loadsharing Type: Shar -- Loadsharing, NonS -- Non-Loadsharing
Port Status: S -- Selected, U -- Unselected, I -- Individual
Port: A -- Auto port, M -- Management port, R -- Reference port
Flags: A -- LACP_Activity, B -- LACP_Timeout, C -- Aggregation,
D -- Synchronization, E -- Collecting, F -- Distributing,
G -- Defaulted, H -- Expired
Aggregate Interface: Bridge-Aggregation101
Creation Mode: Manual
Aggregation Mode: Dynamic
Loadsharing Type: Shar
Management VLANs: None
System ID: 0x8000, a03b-0d51-0400
Local:
Port Status Priority Index Oper-Key Flag
FGE1/0/1 S 32768 1 1 {ACDEF}
FGE1/0/2 S 32768 2 1 {ACDEF}
Remote:
Actor Priority Index Oper-Key SystemID Flag
FGE1/0/1(R) 32768 16387 40002 0x7b , 0001-0001-0001 {ACDEF}
FGE1/0/2 32768 32771 40002 0x7b , 0001-0001-0001 {ACDEF}
# 在Device A和Device B上查看VRRP备份组的信息。可以看到Device A在备份组1和2中为Master,从而保证区域A和区域B内的主机通过Device A与外部通信。
[DeviceA] display vrrp
IPv4 Virtual Router Information:
Running mode : Standard
Total number of virtual routers : 2
Interface VRID State Running Adver Auth Virtual
Pri Timer Type IP
----------------------------------------------------------------------------
Vlan100 1 Master 200 100 None 10.1.1.100
Vlan101 2 Master 200 100 None 20.1.1.100
[DeviceB] display vrrp
IPv4 Virtual Router Information:
Running mode : Standard
Total number of virtual routers : 2
Interface VRID State Running Adver Auth Virtual
Pri Timer Type IP
----------------------------------------------------------------------------
Vlan100 1 Backup 100 100 None 10.1.1.100
Vlan101 2 Backup 100 100 None 20.1.1.100
# 查看Device C和Device D上的OSPF邻居信息,可以看到Device C与Device A和Device B分别建立OSPF邻居,Device D与Device A和Device B分别建立OSPF邻居,从而确保了三层互通。
[DeviceC] display ospf peer
OSPF Process 1 with Router ID 10.1.1.3
Neighbor Brief Information
Area: 0.0.0.0
Router ID Address Pri Dead-Time State Interface
20.1.1.1 10.1.1.1 1 37 Full/DR Vlan100
20.1.1.2 10.1.1.2 1 32 Full/BDR Vlan100
[DeviceD] display ospf peer
OSPF Process 1 with Router ID 20.1.1.3
Neighbor Brief Information
Area: 0.0.0.0
Router ID Address Pri Dead-Time State Interface
20.1.1.1 20.1.1.1 1 38 Full/DR Vlan101
20.1.1.2 20.1.1.2 1 37 Full/BDR Vlan101
# Host A和Host B可以互相ping通,表明通过M-LAG实现三层转发。
如图1-15所示,用户在服务器上通过三层路由方式接入到M-LAG时,需要满足以下要求:
· 当一条接入链路发生故障时,流量可以快速切换到另一条链路,保证可靠性。
· 用户流量在两条接入链路上负载分担。
图1-15 M-LAG双活网关场景下通过动态路由接入M-LAG配置组网图
# 配置M-LAG系统参数。
<DeviceA> system-view
[DeviceA] m-lag system-mac 2-2-2
[DeviceA] m-lag system-number 1
[DeviceA] m-lag system-priority 123
# 配置Keepalive报文的目的IP地址和源IP地址。
[DeviceA] m-lag keepalive ip destination 21.1.1.2 source 21.1.1.1
# 配置端口FortyGigE1/0/5工作在三层模式,并配置IP地址为Keepalive报文的源IP地址。
[DeviceA] interface fortygige 1/0/5
[DeviceA-FortyGigE1/0/5] port link-mode route
[DeviceA-FortyGigE1/0/5] ip address 21.1.1.1 24
[DeviceA-FortyGigE1/0/5] ipv6 address 21::1 64
[DeviceA-FortyGigE1/0/5] quit
# 配置Keepalive链路接口为M-LAG保留接口。
[DeviceA] m-lag mad exclude interface fortygige 1/0/5
# 创建动态二层聚合接口1。
[DeviceA] interface bridge-aggregation 1
[DeviceA-Bridge-Aggregation1] link-aggregation mode dynamic
[DeviceA-Bridge-Aggregation1] quit
# 分别将端口FortyGigE1/0/3和FortyGigE1/0/4加入到聚合组1中。
[DeviceA] interface fortygige 1/0/3
[DeviceA-FortyGigE1/0/3] port link-aggregation group 1
[DeviceA-FortyGigE1/0/3] quit
[DeviceA] interface fortygige 1/0/4
[DeviceA-FortyGigE1/0/4] port link-aggregation group 1
[DeviceA-FortyGigE1/0/4] quit
# 将二层聚合接口1配置为peer-link接口。
[DeviceA] interface bridge-aggregation 1
[DeviceA-Bridge-Aggregation1] port m-lag peer-link 1
[DeviceA-Bridge-Aggregation1] quit
# 创建动态二层聚合接口3,并配置该接口为M-LAG接口1。
[DeviceA] interface bridge-aggregation 3
[DeviceA-Bridge-Aggregation3] link-aggregation mode dynamic
[DeviceA-Bridge-Aggregation3] port m-lag group 1
[DeviceA-Bridge-Aggregation3] quit
# 将端口FortyGigE1/0/1和FortyGigE1/0/2加入到聚合组3中。
[DeviceA] interface fortygige 1/0/1
[DeviceA-FortyGigE1/0/1] port link-aggregation group 3
[DeviceA-FortyGigE1/0/1] quit
[DeviceA] interface fortygige 1/0/2
[DeviceA-FortyGigE1/0/2] port link-aggregation group 3
[DeviceA-FortyGigE1/0/2] quit
# 创建VLAN 102、VLAN 103。
[DeviceA] vlan 102 103
# 配置二层聚合接口3为Trunk端口,并允许VLAN 102和VLAN 103的报文通过。
[DeviceA] interface bridge-aggregation 3
[DeviceA-Bridge-Aggregation3] port link-type trunk
[DeviceA-Bridge-Aggregation3] port trunk permit vlan 102 103
[DeviceA-Bridge-Aggregation3] quit
# 创建接口Vlan-interface102,并配置其IPv4和IPv6地址,作为双活网关。
[DeviceA] interface vlan-interface 102
[DeviceA-Vlan-interface102] ip address 10.102.0.1 255.255.255.0
[DeviceA-Vlan-interface102] ipv6 address 10:102::1 64
# 配置M-LAG虚拟IPv4和IPv6地址,以便和下行设备Device D建立OSPF和OSPFv3邻居关系。
[DeviceA-Vlan-interface102] port m-lag virtual-ip 10.102.0.3 24 active
[DeviceA-Vlan-interface102] port m-lag ipv6 virtual-ip FE80::2 link-local
# 配置接口Vlan-interface102的MAC地址。
[DeviceA-Vlan-interface102] mac-address 3-3-3
[DeviceA-Vlan-interface102] quit
# 配置Vlan-interface102接口为M-LAG保留接口。
[DeviceA] m-lag mad exclude interface vlan-interface 102
# 创建接口Vlan-interface103,并配置其IPv4和IPv6地址,作为双活网关。
[DeviceA] interface vlan-interface 103
[DeviceA-Vlan-interface103] ip address 10.103.0.1 24
[DeviceA-Vlan-interface103] ipv6 address 10:103::1 64
# 配置M-LAG虚拟IPv4和IPv6地址,以便和下行设备Device D建立BGP和BGP4+邻居关系。
[DeviceA-Vlan-interface103] port m-lag virtual-ip 10.103.0.3 24 active
[DeviceA-Vlan-interface103] port m-lag ipv6 virtual-ip 10:103::3 64 active
# 配置接口Vlan-interface103的MAC地址。
[DeviceA-Vlan-interface103] mac-address 4-4-4
[DeviceA-Vlan-interface103] quit
# 配置Vlan-interface103接口为M-LAG保留接口。
[DeviceA] m-lag mad exclude interface vlan-interface 103
# 配置上行口FortyGigE1/0/6的IPv4地址和IPv6地址。
[DeviceA] interface fortygige 1/0/6
[DeviceA-FortyGigE1/0/6] port link-mode route
[DeviceA-FortyGigE1/0/6] ip address 32.1.1.1 24
[DeviceA-FortyGigE1/0/6] ipv6 address 32:1::1 64
[DeviceA-FortyGigE1/0/6] quit
# 配置OSPF。
[DeviceA] ospf 1 router-id 11.1.1.1
[DeviceA-ospf-1] area 0
[DeviceA-ospf-1-area-0.0.0.0] quit
[DeviceA-ospf-1] quit
[DeviceA] interface vlan-interface 102
[DeviceA-Vlan-interface102] ospf 1 area 0
[DeviceA-Vlan-interface102] ospf peer sub-address enable 10.102.0.3
[DeviceA-Vlan-interface102] quit
[DeviceA] interface fortygige 1/0/6
[DeviceA-FortyGigE1/0/6] ospf 1 area 0
[DeviceA-FortyGigE1/0/6] quit
# 配置OSPFv3。
[DeviceA] ospfv3 1
[DeviceA-ospfv3-1] router-id 10.1.1.1
[DeviceA-ospfv3-1] area 0
[DeviceA-ospfv3-1-area-0.0.0.0] quit
[DeviceA-ospfv3-1] quit
[DeviceA] interface vlan-interface 102
[DeviceA-Vlan-interface102] ospfv3 1 area 0
[DeviceA-Vlan-interface102] quit
[DeviceA] interface fortygige 1/0/6
[DeviceA-FortyGigE1/0/6] ospfv3 1 area 0
[DeviceA-FortyGigE1/0/6] quit
# 配置BGP。
[DeviceA] bgp 100
[DeviceA-bgp-default] router-id 12.1.1.1
[DeviceA-bgp-default] peer 32.1.1.2 as-number 100
[DeviceA-bgp-default] peer 10.103.0.2 as-number 100
[DeviceA-bgp-default] peer 10.103.0.2 source-address 10.103.0.3
[DeviceA-bgp-default] address-family ipv4
[DeviceA-bgp-default-ipv4] peer 10.103.0.2 enable
[DeviceA-bgp-default-ipv4] network 10.103.0.0 255.255.255.0
[DeviceA-bgp-default-ipv4] peer 32.1.1.2 enable
[DeviceA-bgp-default-ipv4] network 32.1.1.0 255.255.255.0
[DeviceA-bgp-default-ipv4] quit
# 配置BGP4+。
[DeviceA-bgp-default] peer 32:1::2 as-number 100
[DeviceA-bgp-default] peer 10:103::2 as-number 100
[DeviceA-bgp-default] peer 10:103::2 source-address 10:103::3
[DeviceA-bgp-default] address-family ipv6
[DeviceA-bgp-default-ipv6] peer 10:103::2 enable
[DeviceA-bgp-default-ipv6] network 10:103::2 64
[DeviceA-bgp-default-ipv6] peer 32:1::2 enable
[DeviceA-bgp-default-ipv6] network 32:1::2 64
[DeviceA-bgp-default-ipv6] quit
(2) 配置Device B
# 配置M-LAG系统参数。
<DeviceB> system-view
[DeviceB] m-lag system-mac 2-2-2
[DeviceB] m-lag system-number 2
[DeviceB] m-lag system-priority 123
# 配置Keepalive报文的目的IP地址和源IP地址。
[DeviceB] m-lag keepalive ip destination 21.1.1.1 source 21.1.1.2
# 配置端口FortyGigE1/0/5工作在三层模式,并配置IP地址为Keepalive报文的源IP地址。
[DeviceB] interface fortygige 1/0/5
[DeviceB-FortyGigE1/0/5] port link-mode route
[DeviceB-FortyGigE1/0/5] ip address 21.1.1.2 255.255.255.0
[DeviceB-FortyGigE1/0/5] ipv6 address 21::2 64
[DeviceB-FortyGigE1/0/5] quit
# 配置Keepalive链路接口为保留接口。
[DeviceB] m-lag mad exclude interface fortygige 1/0/5
# 创建动态二层聚合接口1。
[DeviceB] interface bridge-aggregation 1
[DeviceB-Bridge-Aggregation1] link-aggregation mode dynamic
[DeviceB-Bridge-Aggregation1] quit
# 分别将端口FortyGigE1/0/3和FortyGigE1/0/4加入到聚合组1中。
[DeviceB] interface fortygige 1/0/3
[DeviceB-FortyGigE1/0/3] port link-aggregation group 1
[DeviceB-FortyGigE1/0/3] quit
[DeviceB] interface fortygige 1/0/4
[DeviceB-FortyGigE1/0/4] port link-aggregation group 1
[DeviceB-FortyGigE1/0/4] quit
# 将二层聚合接口1配置为peer-link接口。
[DeviceB] interface bridge-aggregation 1
[DeviceB-Bridge-Aggregation1] port m-lag peer-link 1
[DeviceB-Bridge-Aggregation1] quit
# 创建动态二层聚合接口3,并配置该接口为M-LAG接口1。
[DeviceB] interface bridge-aggregation 3
[DeviceB-Bridge-Aggregation3] link-aggregation mode dynamic
[DeviceB-Bridge-Aggregation3] port m-lag group 1
[DeviceB-Bridge-Aggregation3] quit
# 将端口FortyGigE1/0/1和FortyGigE1/0/2加入到聚合组3中。
[DeviceB] interface fortygige 1/0/1
[DeviceB-FortyGigE1/0/1] port link-aggregation group 3
[DeviceB-FortyGigE1/0/1] quit
[DeviceB] interface fortygige 1/0/2
[DeviceB-FortyGigE1/0/2] port link-aggregation group 3
[DeviceB-FortyGigE1/0/2] quit
# 创建VLAN 102、103。
[DeviceB] vlan 102 103
# 配置二层聚合接口3为Trunk端口,并允许VLAN 102和VLAN 103的报文通过。
[DeviceB] interface bridge-aggregation 3
[DeviceB-Bridge-Aggregation3] port link-type trunk
[DeviceB-Bridge-Aggregation3] port trunk permit vlan 102 103
[DeviceB-Bridge-Aggregation3] quit
# 创建接口Vlan-interface102,并配置其IPv4和IPv6地址,作为双活网关。
[DeviceB] interface vlan-interface 102
[DeviceB-Vlan-interface102] ip address 10.102.0.1 24
[DeviceB-Vlan-interface102] ipv6 address 10:102::1 64
# 配置M-LAG虚拟IPv4和IPv6地址,以便和下行设备Device D建立OSPF和OSPFv3邻居关系。
[DeviceB-Vlan-interface102] port m-lag virtual-ip 10.102.0.4 24 active
[DeviceB-Vlan-interface102] port m-lag ipv6 virtual-ip FE80::4 link-local
# 配置接口Vlan-interface102的MAC地址。
[DeviceB-Vlan-interface102] mac-address 3-3-3
[DeviceB-Vlan-interface102] quit
# 配置Vlan-interface102接口为M-LAG保留接口。
[DeviceB] m-lag mad exclude interface vlan-interface 102
# 创建接口Vlan-interface103,并配置其IPv4和IPv6地址,作为双活网关。
[DeviceB] interface vlan-interface 103
[DeviceB-Vlan-interface103] ip address 10.103.0.1 24
[DeviceB-Vlan-interface103] ipv6 address 10:103::1 64
# 配置M-LAG虚拟IPv4和IPv6地址,以便和下行设备Device D建立BGP和BGP4+邻居关系。
[DeviceB-Vlan-interface103] port m-lag virtual-ip 10.103.0.4 24 active
[DeviceB-Vlan-interface103] port m-lag ipv6 virtual-ip 10:103::4 64 active
# 配置接口Vlan-interface103的MAC地址。
[DeviceB-Vlan-interface103] mac-address 4-4-4
[DeviceB-Vlan-interface103] quit
# 配置Vlan-interface103接口为M-LAG保留接口。
[DeviceB] m-lag mad exclude interface vlan-interface 103
# 配置上行口FortyGigE1/0/6的IPv4地址和IPv6地址。
[DeviceB] interface fortygige 1/0/6
[DeviceB-FortyGigE1/0/6] port link-mode route
[DeviceB-FortyGigE1/0/6] ip address 33.1.1.1 24
[DeviceB-FortyGigE1/0/6] ipv6 address 33:1::1 64
[DeviceB-FortyGigE1/0/6] quit
# 配置OSPF。
[DeviceB] ospf 1 router-id 11.1.1.2
[DeviceB-ospf-1] area 0
[DeviceB-ospf-1-area-0.0.0.0] quit
[DeviceB-ospf-1] quit
[DeviceB] interface vlan-interface 102
[DeviceB-Vlan-interface102] ospf 1 area 0
[DeviceB-Vlan-interface102] ospf peer sub-address enable 10.102.0.4
[DeviceB-Vlan-interface102] quit
[DeviceB] interface fortygige 1/0/6
[DeviceB-FortyGigE1/0/6] ospf 1 area 0
[DeviceB-FortyGigE1/0/6] quit
# 配置OSPFv3。
[DeviceB] ospfv3 1
[DeviceB-ospfv3-1] router-id 10.1.1.2
[DeviceB-ospfv3-1] area 0
[DeviceB-ospfv3-1-area-0.0.0.0] quit
[DeviceB-ospfv3-1] quit
[DeviceB] interface vlan-interface 102
[DeviceB-Vlan-interface102] ospfv3 1 area 0
[DeviceB-Vlan-interface102] quit
[DeviceB] interface fortygige 1/0/6
[DeviceB-FortyGigE1/0/6] ospfv3 1 area 0
[DeviceB-FortyGigE1/0/6] quit
# 配置BGP。
[DeviceB] bgp 100
[DeviceB-bgp-default] router-id 12.1.1.2
[DeviceB-bgp-default] peer 33.1.1.2 as-number 100
[DeviceB-bgp-default] peer 10.103.0.2 as-number 100
[DeviceB-bgp-default] peer 10.103.0.2 source-address 10.103.0.4
[DeviceB-bgp-default] address-family ipv4
[DeviceB-bgp-default-ipv4] peer 10.103.0.2 enable
[DeviceB-bgp-default-ipv4] network 10.103.0.0 255.255.255.0
[DeviceB-bgp-default-ipv4] peer 33.1.1.2 enable
[DeviceB-bgp-default-ipv4] network 33.1.1.0 255.255.255.0
[DeviceB-bgp-default-ipv4] quit
# 配置BGP4+。
[DeviceB-bgp-default] peer 33:1::2 as-number 100
[DeviceB-bgp-default] peer 10:103::2 as-number 100
[DeviceB-bgp-default] peer 10:103::2 source-address 10:103::4
[DeviceB-bgp-default] address-family ipv6
[DeviceB-bgp-default-ipv6] peer 10:103::2 enable
[DeviceB-bgp-default-ipv6] network 10:103::2 64
[DeviceB-bgp-default-ipv6] peer 33:1::2 enable
[DeviceB-bgp-default-ipv6] network 33:1::2 64
[DeviceB-bgp-default-ipv6] quit
(3) 配置Device C
# 配置接口FortyGigE1/0/1和FortyGigE1/0/2的IPv4地址和IPv6地址。
[DeviceC] interface fortygige 1/0/1
[DeviceC-FortyGigE1/0/1] port link-mode route
[DeviceC-FortyGigE1/0/1] ip address 32.1.1.2 24
[DeviceC-FortyGigE1/0/1] ipv6 address 32:1::2 64
[DeviceC-FortyGigE1/0/1] quit
[DeviceC] interface fortygige 1/0/2
[DeviceC-FortyGigE1/0/2] port link-mode route
[DeviceC-FortyGigE1/0/2] ip address 33.1.1.2 24
[DeviceC-FortyGigE1/0/2] ipv6 address 33:1::2 64
[DeviceC-FortyGigE1/0/2] quit
# 配置OSPF。
[DeviceC] ospf 1 router-id 11.1.1.3
[DeviceC-ospf-1] area 0
[DeviceC-ospf-1-area-0.0.0.0] quit
[DeviceC-ospf-1] quit
[DeviceC] interface fortygige 1/0/1
[DeviceC-FortyGigE1/0/1] ospf 1 area 0
[DeviceC-FortyGigE1/0/1] quit
[DeviceC] interface fortygige 1/0/2
[DeviceC-FortyGigE1/0/2] ospf 1 area 0
[DeviceC-FortyGigE1/0/2] quit
# 配置OSPFv3。
[DeviceC] ospfv3 1
[DeviceC-ospfv3-1] router-id 10.1.1.3
[DeviceC-ospfv3-1] area 0
[DeviceC-ospfv3-1-area-0.0.0.0] quit
[DeviceC-ospfv3-1] quit
[DeviceC] interface fortygige 1/0/1
[DeviceC-FortyGigE1/0/1] ospfv3 1 area 0
[DeviceC-FortyGigE1/0/1] quit
[DeviceC] interface fortygige 1/0/2
[DeviceC-FortyGigE1/0/2] ospfv3 1 area 0
[DeviceC-FortyGigE1/0/2] quit
# 配置BGP。
[DeviceC] bgp 100
[DeviceC-bgp-default] router-id 12.1.1.3
[DeviceC-bgp-default] peer 33.1.1.1 as-number 100
[DeviceC-bgp-default] peer 32.1.1.1 as-number 100
[DeviceC-bgp-default] address-family ipv4
[DeviceC-bgp-default-ipv4] peer 33.1.1.1 enable
[DeviceC-bgp-default-ipv4] network 33.1.1.0 255.255.255.0
[DeviceC-bgp-default-ipv4] peer 32.1.1.1 enable
[DeviceC-bgp-default-ipv4] network 32.1.1.0 255.255.255.0
[DeviceC-bgp-default-ipv4] quit
# 配置BGP4+。
[DeviceC-bgp-default] peer 33:1::1 as-number 100
[DeviceC-bgp-default] peer 32:1::1 as-number 100
[DeviceC-bgp-default] address-family ipv6
[DeviceC-bgp-default-ipv6] peer 32:1::1 enable
[DeviceC-bgp-default-ipv6] peer 33:1::1 enable
[DeviceC-bgp-default-ipv6] network 32:1:: 64
[DeviceC-bgp-default-ipv6] network 33:1:: 64
[DeviceC-bgp-default-ipv6] quit
[DeviceC-bgp-default] quit
(4) 配置Device D
# 创建VLAN 102、VLAN 103。
<DeviceD> system-view
[DeviceD] vlan 102 103
# 创建二层聚合接口3,并配置该接口为动态聚合模式。
[DeviceD] interface bridge-aggregation 3
[DeviceD-Bridge-Aggregation3] link-aggregation mode dynamic
[DeviceD-Bridge-Aggregation3] quit
# 将端口FortyGigE1/0/1~FortyGigE1/0/4加入到聚合组3中。
[DeviceD] interface range fortygige 1/0/1 to fortygige 1/0/4
[DeviceD-if-range] port link-aggregation group 3
[DeviceD-if-range] quit
# 配置二层聚合接口3为Trunk端口,并允许VLAN 102和VLAN 103的报文通过。
[DeviceD] interface bridge-aggregation 3
[DeviceD-Bridge-Aggregation3] port link-type trunk
[DeviceD-Bridge-Aggregation3] port trunk permit vlan 102 103
[DeviceD-Bridge-Aggregation3] quit
# 创建接口Vlan-interface102,并配置其IPv4和IPv6地址。
[DeviceD] interface vlan-interface 102
[DeviceD-Vlan-interface102] ip address 10.102.0.2 24
[DeviceD-Vlan-interface102] ipv6 address 10:102::2 64
[DeviceD-Vlan-interface102] quit
# 创建接口Vlan-interface103,并配置其IPv4和IPv6地址。
[DeviceD] interface vlan-interface 103
[DeviceD-Vlan-interface103] ip address 10.103.0.2 24
[DeviceD-Vlan-interface103] ipv6 address 10:103::2 64
[DeviceD-Vlan-interface103] quit
# 配置OSPF。
[DeviceD] ospf 1 router-id 11.1.1.4
[DeviceD-ospf-1] area 0
[DeviceD-ospf-1-area-0.0.0.0] quit
[DeviceD-ospf-1] quit
[DeviceD] interface vlan-interface 102
[DeviceD-Vlan-interface102] ospf 1 area 0
[DeviceD-Vlan-interface102] quit
[DeviceD] interface vlan-interface 103
[DeviceD-Vlan-interface103] ospf 1 area 0
[DeviceD-Vlan-interface103] quit
# 配置OSPFv3。
[DeviceD] ospfv3 1
[DeviceD-ospfv3-1] router-id 10.1.1.4
[DeviceD-ospfv3-1] area 0
[DeviceD-ospfv3-1-area-0.0.0.0] quit
[DeviceD-ospfv3-1] quit
[DeviceD] interface vlan-interface 102
[DeviceD-Vlan-interface102] ospfv3 1 area 0
[DeviceD-Vlan-interface102] quit
[DeviceD] interface vlan-interface 103
[DeviceD-Vlan-interface103] ospfv3 1 area 0
[DeviceD-Vlan-interface103] quit
# 配置BGP。
[DeviceD] bgp 100
[DeviceD-bgp-default] router-id 12.1.1.4
[DeviceD-bgp-default] peer 10.103.0.3 as-number 100
[DeviceD-bgp-default] peer 10.103.0.4 as-number 100
[DeviceD-bgp-default] address-family ipv4
[DeviceD-bgp-default-ipv4] peer 10.103.0.3 enable
[DeviceD-bgp-default-ipv4] peer 10.103.0.4 enable
[DeviceD-bgp-default-ipv4] network 10.103.0.3 255.255.255.0
[DeviceD-bgp-default-ipv4] quit
# 配置BGP4+。
[DeviceD-bgp-default] peer 10:103::3 as-number 100
[DeviceD-bgp-default] peer 10:103::4 as-number 100
[DeviceD-bgp-default] address-family ipv6
[DeviceD-bgp-default-ipv6] peer 10:103::3 enable
[DeviceD-bgp-default-ipv6] peer 10:103::4 enable
[DeviceD-bgp-default-ipv6] network 10:103::3 64
[DeviceD-bgp-default-ipv6] quit
[DeviceD-bgp-default] quit
# 查看M-LAG的简要信息和详细信息,可以看到M-LAG系统正常工作,以Device A为例。
[DeviceA] display m-lag summary
Flags: A -- Aggregate interface down, B -- No peer M-LAG interface configured
C -- Configuration consistency check failed
Peer-link interface: BAGG1
Peer-link interface state (cause): UP
Keepalive link state (cause): UP
M-LAG interface information
M-LAG IF M-LAG group Local state (cause) Peer state Remaining down time(s)
BAGG3 1 UP UP -
[DeviceA] display m-lag verbose
Flags: A -- Home_Gateway, B -- Neighbor_Gateway, C -- Other_Gateway,
D -- PeerLink_Activity, E -- DRCP_Timeout, F -- Gateway_Sync,
G -- Port_Sync, H -- Expired
Peer-link interface/Peer-link interface ID: BAGG1/1
State: UP
Cause: -
Local DRCP flags/Peer DRCP flags: ABDFG/ABDFG
Local Selected ports (index): FGE1/0/3 (260), FGE1/0/4 (261)
Peer Selected ports indexes: 260, 261
M-LAG interface/M-LAG group ID: BAGG3/1
Local M-LAG interface state: UP
Peer M-LAG interface state: UP
M-LAG group state: UP
Local M-LAG interface down cause: -
Remaining M-LAG DOWN time: -
Local M-LAG interface LACP MAC: Config=N/A, Effective=0002-0002-0002
Peer M-LAG interface LACP MAC: Config=N/A, Effective=0002-0002-0002
Local M-LAG interface LACP priority: Config=32768, Effective=123
Peer M-LAG interface LACP priority: Config=32768, Effective=123
Local DRCP flags/Peer DRCP flags: ABDFG/ABDFG
Local Selected ports (index): FGE1/0/1 (258), FGE1/0/2 (259)
Peer Selected ports indexes: 258, 259
# 查看设备上的OSPF邻居信息,可以看到OSPF中各邻居的信息,以Device A为例。
[DeviceA] display ospf peer
OSPF Process 1 with Router ID 11.1.1.1
Neighbor Brief Information
Area: 0.0.0.0
Router ID Address Pri Dead-Time State Interface
11.1.1.3 32.1.1.2 1 39 Full/BDR FGE1/0/6
11.1.1.4 10.102.0.2 1 31 Full/DROther Vlan102
11.1.1.2 10.102.0.4 1 37 Full/DR Vlan102
# 查看设备上的OSPFv3邻居信息,可以看到OSPFv3中各邻居的信息,以Device A为例。
[DeviceA] display ospfv3 peer
OSPFv3 Process 1 with Router ID 10.1.1.1
Area: 0.0.0.0
-------------------------------------------------------------------------
Router ID Pri State Dead-Time InstID Interface
10.1.1.3 1 Full/BDR 00:00:34 0 FGE1/0/6
10.1.1.2 1 Full/BDR 00:00:32 0 Vlan102
10.1.1.4 1 Full/DROther 00:00:39 0 Vlan102
# 查看设备上的BGP邻居信息,可以看到BGP中各邻居的信息,以Device A为例。
[DeviceA] display bgp peer ipv4
BGP local router ID: 12.1.1.1
Local AS number: 100
Total number of peers: 2 Peers in established state: 2
* - Dynamically created peer
^ - Peer created through link-local address
Peer AS MsgRcvd MsgSent OutQ PrefRcv Up/Down State
10.103.0.2 100 6 6 0 1 00:01:50 Established
32.1.1.2 100 5 5 0 2 00:00:01 Established
# 查看设备上的BGP4+邻居信息,可以看到BGP4+中各邻居的信息,以Device A为例。
[DeviceA] display bgp peer ipv6
BGP local router ID: 12.1.1.1
Local AS number: 100
Total number of peers: 2 Peers in established state: 2
* - Dynamically created peer
^ - Peer created through link-local address
Peer AS MsgRcvd MsgSent OutQ PrefRcv Up/Down State
10:103::2 100 9 9 0 1 00:04:26 Established
32:1::2 100 6 6 0 2 00:02:13 Established
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!