03-DRNI配置
本章节下载: 03-DRNI配置 (526.02 KB)
DRNI(Distributed Resilient Network Interconnect,分布式弹性网络互连)是一种跨设备链路聚合技术,将两台物理设备在聚合层面虚拟成一台设备来实现跨设备链路聚合,从而提供设备级冗余保护和流量负载分担。
如图1-1所示,Device A与Device B形成负载分担,共同进行流量转发,当其中一台设备发生故障时,流量可以快速切换到另一台设备,保证业务的正常运行。
图1-1 DRNI网络模型示意图
DR设备在DR系统中互为邻居,其中Device A为主设备,Device B为从设备。DRNI为每个DR设备定义了以下几个接口角色:
· DR接口(Distributed Relay interface,分布式聚合接口):与外部设备相连的二层聚合接口。与外部设备上相同聚合组相连的DR接口属于同一DR组(Distributed-Relay group,分布式聚合组)。如图1-1所示,Device A上的二层聚合接口1和Device B上的二层聚合接口2属于同一DR组。DR组中的DR接口由多条链路聚合组成,且具有相同的DR组编号。
· IPP(Intra-Portal Port,内部控制链路端口):连接对端DR邻居设备用于内部控制的接口。每台DR设备只有一个IPP口。IPP间的链路为IPL(Intra-Portal Link,内部控制链路),DR设备通过IPL交互协议报文及传输数据流量。一个DR系统只有一条IPL。
DR设备间通过Keepalive链路检测邻居状态。关于Keepalive机制的详细描述,请参见“1.1.3 Keepalive机制”。
如果一台外部设备仅接入DR系统的其中一台DR设备,则该设备称为单挂设备,这种接入方式称为单归接入。
DRNI通过在IPL上运行DRCP(Distributed Relay Control Protocol,分布式聚合控制协议)来交互分布式聚合的相关信息,以确定两台设备是否可以组成DR系统。运行该协议的设备之间通过互发DRCPDU(Distributed Relay Control Protocol Data Unit,分布式聚合控制协议数据单元)来交互分布式聚合的相关信息。
两端DR设备通过IPL链路定期交互DRCP报文。当本端DR设备收到对端DR设备的DRCP协商报文后,会判断DRCP协商报文中的DRNI系统配置是否和本端相同。如果两端的DRNI系统配置相同,则这两台设备可以组成DR系统。
DRCP超时时间是指IPP口或者DR接口等待接收DRCPDU的超时时间。在DRCP超时时间之前,如果本端IPP或者DR接口未收到来自对端DR设备的DRCPDU,则认为对端DR设备IPP口或者DR接口已经失效。
DRCP超时时间同时也决定了对端DR设备发送DRCPDU的速率。DRCP超时有短超时(3秒)和长超时(90秒)两种:
· 若本端DRCP超时时间为短超时,则对端DR设备将快速发送DRCPDU(每1秒发送1个DRCPDU)。
· 若本端DRCP超时时间为长超时,则对端DR设备将慢速发送DRCPDU(每30秒发送1个DRCPDU)。
DR设备间通过Keepalive链路检测邻居状态,即通过交互Keepalive报文来进行IPL故障时的双主检测。
如果在指定时间内,本端DR设备收到对端DR设备发送的Keepalive报文:
· 如果IPL链路状态为down,则本端和对端DR设备根据收到的Keepalive报文选举主从设备,保证DR系统中仅一台DR设备转发流量,避免两台DR设备均升级为主设备。
· 如果IPL链路状态为up,则DR系统正常工作。
如果在指定时间内,本端DR设备未收到对端DR设备发送的Keepalive报文时:
· 如果IPL链路状态为down,则认为对端DR设备状态为down:
¡ 本端设备为主设备时,如果本端设备上存在处于up状态的DR口,则本端仍为主设备;否则,本端设备角色变为None角色。
¡ 本端设备为从设备时,则升级为主设备。此后,只要本端设备上存在处于up状态的DR口,则保持为主设备,否则本端设备角色变为None角色。
当设备为None角色时,设备不能收发Keepalive报文,Keepalive链路处于down状态。
· 如果IPL链路状态为up,则认为Keepalive链路状态为down。此时主从设备正常工作,同时设备打印日志信息,提醒用户检查Keepalive链路。
IPL故障后,为了防止从设备继续转发流量,DRNI提供MAD(Multi-Active Detection,多Active检测)机制,即在DR系统分裂时将设备上部分接口置为DRNI MAD DOWN状态,不允许此类接口转发流量,避免流量错误转发,尽量减少对业务影响。
DR系统分裂时,设备上以下接口不被置为DRNI MAD DOWN状态:
· DRNI保留接口(包括用户配置的和系统保留的)。
· IRF保留接口(包括用户配置的和系统保留的)。
· 在接口上配置了强制端口up功能:
¡ 通过loopback命令开启接口的环回功能。有关本命令的详细介绍,请参见“接口管理命令参考”中的“以太网接口”。
¡ 通过port service-loopback group命令将端口加入指定的业务环回组。有关本命令的详细介绍,请参见“二层技术-以太网交换命令参考”中的“业务环回组”。
¡ 通过mirroring-group reflector-port命令为远程源镜像组配置反射端口。有关本命令的详细介绍,请参见“网络管理和监控命令参考”中的“端口镜像”。
¡ 通过port up-mode命令强制开启光口。有关本命令的详细介绍,请参见“接口管理命令参考”中的“以太网接口”。
DRNI保留接口包括系统保留接口和用户配置的保留接口。系统保留接口包括:
· IPP口
· IPP口所对应的二层聚合接口的成员接口
· DR口
· 管理以太网接口
当IPL故障恢复后,为了防止丢包,从设备尽可能在延迟恢复时间内完成表项(MAC地址表、ARP表等)同步,其后该设备上处于DRNI MAD DOWN状态的接口将恢复为up状态。
IPL故障后,DRNI通过MAD机制防止从设备继续转发流量。当两台DR设备健康状况不同时,为了使健康状况较好的设备继续转发流量,DRNI提供健康检测机制,获取当前设备的健康状况,并通过报文与对端进行交互,将健康状况好的设备选举为主设备,健康状况差的设备选举为从设备,尽量减少对业务影响。
设备的健康值可通过display system health命令查看,健康值越小设备越健康,设备无故障运行时,健康值为0。有关display system health命令的详细介绍,请参见“基础配置命令参考”中的“设备管理”。
DR设备可能出现三种设备角色,分别是Primary、Secondary和None。设备新配置DRNI功能或设备携带DRNI配置整机重启,设备初始化为None角色。
IPL链路UP后,两台DR设备通过交互DRCP报文计算角色,将其中一台设备计算为Primary角色,另一台计算为Secondary角色。Primary角色的设备DR接口配对成功后即可工作,立即转发流量,Secondary角色设备由于DRNI MAD机制,要等待DRNI MAD延迟恢复时间后才能工作。
图1-2 DRNI角色计算流程图
如图1-2所示,角色计算触发条件包括:
· DR设备在系统初始化时(包括新配置DRNI或带DRNI配置重启设备)为角色None。
· IPL链路UP时,设备角色通过IPL计算。
· IPL、Keepalive正常工作,且两端DR设备有可工作DR口情况下,此时IPL发生故障,角色通过Keepalive链路计算。
· IPL和Keepalive链路均故障,此时若有可工作DR口,设备角色为Primary。
· IPL故障且本端所有DR接口处于down状态时,设备角色为None。
· IPL故障且通过Keepalive感知到对端所有DR接口处于down状态时,设备角色为Primary。
当通过IPL或Keepalive链路交互报文计算设备角色时,依次比较如下因素:
(1) 比较计算前角色,若有一端为Primary,另一端为None,则Primary端优;
(2) 比较DRNI MAD DOWN状态,若一端存在处于DRNI MAD DOWN状态的接口,另一端不存在处于DRNI MAD DOWN状态的接口,则不存在处于DRNI MAD DOWN状态的接口的一端优;
(3) 比较设备健康状况,健康值越小越优;
(4) 比较设备角色优先级,越高越优;
(5) 比较设备桥MAC,越小越优。
上述因素按顺序比较,结果为优的一端角色计算为Primary,另一端为Secondary。
当IPL链路故障,Keepalive链路正常工作时,主设备正常工作,从设备会自动关闭本设备上除IRF保留接口、DRNI保留接口外的所有接口,将这些接口置为DRNI MAD DOWN状态。如果此时Keepalive链路也发生故障,从设备上的接口会解除DRNI MAD DOWN状态,并升级为主设备,使DR系统中的两台设备都作为主设备转发流量,引起网络故障。为了避免以上情况,需要开启DRNI MAD DOWN保持功能,使设备上的接口一直处于DRNI MAD DOWN状态,不参与流量转发。
如图1-3所示,Device A和Device B之间DR系统建立及工作过程如下:
(1) 当DR设备完成DR系统参数配置后,两端设备通过IPL链路定期发送DRCP报文。当本端收到对端的DRCP协商报文后,会判断DRCP协商报文中的DR口编号是否和本端相同。如果两端的DR口编号相同,则这两台设备组成DR系统。
(2) 配对成功后,两端设备会确定出主从状态。依次比较两端DR设备的初始角色、DRNI MAD DOWN状态、设备的健康值、角色优先级、设备桥MAC,比较结果更优的一端为主设备,具体比较原则请参见“1.1.6 角色计算”。如果优先级相同,那么比较两台设备的桥MAC地址,桥MAC地址较小的为主设备。主从协商后,DR设备间会进行配置一致性检查。有关一致性检查的详细介绍,请参见“1.1.10 配置一致性检查功能”。
(3) 当主从角色确定后,两端设备通过Keepalive链路周期性地发送Keepalive报文检测邻居状态。
(4) DR系统开始工作后,两端设备之间会实时同步对端的信息,例如MAC地址表项、ARP表项等,这样任意一台设备故障都不会影响流量的转发,保证正常的业务不会中断。
图1-3 DRNI建立及工作过程示意图
DR设备工作模式分为以下两种:
· DR系统工作模式:作为DR系统成员设备参与报文转发。
· 独立工作模式:脱离DR系统独立工作,独自转发报文。
当DR系统分裂时,为了避免DR系统中的两台设备都作为主设备转发流量的情况,需要DR设备独立工作。在IPL和Keepalive链路均处于DOWN状态时,从设备会立即或经过一段时间切换到独立运行模式。
DR设备切换到独立运行模式后,聚合接口发送的LACP报文中携带的DRNI系统参数还原为聚合接口的LACP系统MAC地址和LACP系统优先级,使同一DR组中的两个聚合接口的LACP系统MAC地址和LACP系统优先级不一致。这样只有一边聚合接口的成员端口可以被选中,通过被选中的设备转发业务流量,避免流量转发异常。
DR系统建立过程中会进行配置一致性检查,以确保两端DR设备配置一致,不影响DR设备转发报文。DR设备通过交换各自的配置信息,检查配置是否一致。目前DRNI支持对两种类型的配置一致性检查:
· Type 1类型配置:影响DR系统转发的配置。如果Type 1类型配置不一致,则将从设备上DR接口置为down状态。
· Type 2类型配置:仅影响业务模块的配置。如果Type 2类型配置不一致,从设备上DR接口依然为up状态,不影响DR系统正常工作。由Type 2类型配置对应的业务模块决定是否关闭该业务功能,其他业务模块不受影响。
为了避免设备DR接口震荡,设备会在延迟恢复定时器一半时间之后进行配置一致性检查。
延迟恢复定时器用来设置设备作为从设备加入分布式聚合系统时进行MAC地址表项等信息同步的最大时间。有关延迟恢复定时器的详细介绍,请参见“1.17 配置接口延迟恢复时间”
Type 1类型配置一致性检查分为全局配置和DR接口配置。
表1-1 全局Type 1类型配置
配置 |
一致性检查内容 |
IPP口链路类型 |
Access、Hybrid和Trunk |
IPP口的PVID |
IPP口的PVID |
生成树功能 |
全局生成树功能是否开启和VLAN内生成树功能是否开启 仅当生成树模式为PVST时,才对VLAN内生成树功能进行一致性检查 |
生成树模式 |
STP、RSTP和MSTP |
MST域相关配置 |
MST域的域名、MSTP的修订级别和MSTI与VLAN的映射关系 |
表1-2 DR接口Type 1类型配置
配置 |
一致性检查内容 |
聚合组的工作模式 |
静态聚合组和动态聚合组 |
接口生成树功能 |
接口上的生成树功能是否开启 |
接口的链路类型 |
Access、Hybrid和Trunk |
接口的PVID |
DR接口的PVID |
当接口所属的VLAN信息或VLAN接口信息检查不一致时,以下全局Type 2类型配置信息才能显示:
· VLAN接口状态
· VLAN接口的IPv4地址
· VLAN接口的IPv6地址
· VLAN接口的IPv4 VRRP备份组虚拟IP地址
Type 2类型配置一致性检查分为全局配置和DR接口配置。Type 2类型配置仅影响对应的业务模块。
表1-3 全局Type 2类型配置
配置 |
一致性检查内容 |
接口所属的VLAN |
IPP口所属的VLAN 先比较接口上携带Tag的VLAN,再比较接口上未携带Tag的VLAN |
VLAN接口 |
VLAN接口处于up状态,且IPP口加入该VLAN |
|
|
VLAN接口状态 |
VLAN接口是否被手工关闭 |
VLAN接口的IPv4地址 |
VLAN接口IPv4地址是否配置 |
VLAN接口的IPv6地址 |
VLAN接口IPv6地址是否配置 |
VLAN接口的IPv4 VRRP备份组虚拟IP地址 |
VLAN接口IPv4 VRRP备份组虚拟IP地址是否配置 |
全局BPDU保护 |
全局的BPDU保护功能是否配置 |
MAC地址老化时间 |
MAC地址老化时间 |
VSI名称 |
DR接口上AC关联的VSI的名称 |
VNI |
VSI的VXLAN ID |
网关接口编号 |
VSI关联的网关接口编号 |
VSI虚接口编号 |
VSI关联的VSI虚接口编号 |
VSI虚接口的MAC地址 |
VSI关联的VSI虚接口的MAC地址 |
VSI虚接口的IPv4地址 |
VSI关联的VSI虚接口的IPv4地址 |
VSI虚接口的IPv6地址 |
VSI关联的VSI虚接口的IPv6地址 |
VSI虚接口物理状态 |
VSI关联的VSI虚接口物理状态 |
VSI虚接口协议状态 |
VSI关联的VSI虚接口协议状态 |
表1-4 DR接口Type 2类型配置
配置 |
一致性检查内容 |
接口所属的VLAN |
DR口所属的VLAN 先比较接口上携带Tag的VLAN,再比较接口上未携带Tag的VLAN |
DR口上的端口速率作为优先选择参考端口功能 |
DR口上的端口速率作为优先选择参考端口功能是否配置 |
DR口上的选择选中端口时忽略端口速率功能 |
DR口上的选择选中端口时忽略端口速率功能是否配置 |
STP根保护功能 |
STP根保护功能是否配置 |
为了防止重放攻击,保证流量正常转发,DRNI支持序列号校验,以识别非法攻击报文。开启DRNI序列号校验功能后,如果DR设备本次收到的DRNI报文的序列号与已经收到的DRNI报文的序列号相同,或小于上次收到的DRNI报文的序列号,则认为发生重放攻击。DR设备会丢弃序列号校验失败的DRNI报文。
为防止攻击者篡改DRNI报文内容,DRNI提供报文认证功能,提高安全性。DR设备发送的协议报文中会携带一个消息摘要,该消息摘要是对协议报文内容经Hash计算得到。对端DR设备收到该报文时,会与自己计算的该报文的消息摘要进行比对,如果一致,则认为其合法。
如图1-4所示,某DR接口故障,网络侧流量会通过IPL发送给另外一台设备,所有流量均由另外一台DR设备转发,具体过程如下:
(1) Device B的某DR接口故障,网络侧不感知,流量依然会发送给所有DR设备。
(2) Device A的相同DR接口正常,则Device B收到网络侧访问Device C的流量后,通过IPL将流量交给Device A后转发给Device C。
(3) 故障恢复后,Device B的该DR口up,流量正常转发。
图1-4 DR接口故障处理机制示意图
如图1-5所示,IPL故障但Keepalive链路正常会导致从设备上除DRNI保留接口和IRF保留接口以外的接口处于DRNI MAD DOWN状态。主设备上DR接口所在的聚合链路状态仍为up,从设备上DR接口所在的聚合链路状态变为down,从而保证所有流量都通过主设备转发。一旦IPL故障恢复,处于DRNI MAD DOWN状态的接口经过延迟恢复时间自动恢复为up状态。
图1-5 IPL故障处理机制示意图
如图1-6所示,Device A为主设备,Device B为从设备。当主设备故障后,主设备上的聚合链路状态变为down,不再转发流量。从设备将升级为主设备,该设备上的聚合链路状态为up,流量转发状态不变,继续转发流量。主设备故障恢复后,DR系统中由从状态升级为主状态的设备仍保持主状态,故障恢复后的设备成为DR系统的从设备。
如果是从设备发生故障,DR系统的主从状态不会发生变化,从设备上的聚合链路状态变为down。主设备上的聚合链路状态为up,流量转发状态不变,继续转发流量。
上行链路故障并不会影响DR系统的转发。如图1-7所示,Device A上行链路虽然故障,但是外网侧的转发相关表项由Device B通过IPL同步给Device A,Device A会将访问外网侧的流量发送给Device B进行转发。而外网侧发送给Device C的流量由于接口故障,自然也不会发送给Device A处理。
上行链路故障时,如果通过Device A将访问外网侧的流量发送给Device B进行转发,会降低转发效率。此时用户可以配置Monitor Link功能,将DR组成员端口和上行端口关联起来,一旦上行链路故障了,会联动DR组成员端口状态,将其状态变为down,提高转发效率。有关Monitor Link的详细介绍,请参见“可靠性配置指导”中的“Monitor Link”。
DRNI二次故障是指在IPL发生故障后,Keepalive链路也发生故障,或者在Keepalive链路发生故障后,IPL也发生故障。针对DR设备上不同的配置情况,当发生二次故障时,处理方式不同。
如图1-8所示,若IPL链路先发生故障,此时两端DR设备会根据Keepalive链路进行设备角色选举,并依据MAD检测机制,将从设备上除IRF保留接口、DRNI保留接口外的所有接口置为DRNI MAD DOWN状态。
此后,若Keepalive链路也发生故障,从设备也会升为主设备,并解除设备上所有接口的DRNI MAD DOWN状态,以双主双活的方式转发流量。由于IPL链路故障时,无法同步表项,可能导致流量转发错误。
若Keepalive链路先发生故障,IPL链路后发生故障,则DR设备上的接口不会被置为DRNI MAD DOWN状态,而是直接以双主双活的方式转发流量。
如图1-9所示,若IPL先发生故障,此时两端DR设备会根据Keepalive链路进行设备角色选举,并依据MAD检测机制,将从设备上除IRF保留接口、DRNI保留接口外的所有接口置为DRNI MAD DOWN状态。
此后,若Keepalive链路也发生故障,从设备也会升为主设备,但由于DR设备已开启DRNI MAD DOWN状态保持功能,将不会解除设备上所有接口的DRNI MAD DOWN状态,继续只从原来的主设备转发流量。这样将不会出现双主双活的情况,避免流量转发异常。
若Keepalive链路先发生故障,IPL链路后发生故障,则DR设备上的接口不会被置为DRNI MAD DOWN状态,而是直接以双主双活的方式转发流量。
图1-9 开启DRNI MAD DOWN状态保持功能场景下二次故障处理机制示意图(一)
如图1-10所示,如果主设备故障或者主设备上DR口故障,则无法转发流量。为了避免这种情况可以解除从设备上所有接口的DRNI MAD DOWN状态,使从设备升级为主设备,以保证流量正常转发,减少流量中断时间。
图1-10 开启DRNI MAD DOWN状态保持功能场景下二次故障处理机制示意图(二)
如图1-11所示,若IPL先发生故障,此时两端DR设备会根据Keepalive链路进行设备角色选举,并依据MAD检测机制,将从设备上除IRF保留接口、DRNI保留接口外的所有接口置为DRNI MAD DOWN状态。
此后,若Keepalive链路也发生故障,从设备也会升为主设备,解除所有接口的DRNI MAD DOWN状态。但由于已开启立即或延迟切换到设备独立工作状态功能,两台DR设备将切换到独立工作状态,切换后DR接口对应的聚合接口发送的LACP报文中携带的DRNI系统参数还原为聚合接口的LACP系统MAC地址和LACP系统优先级,使同一DR组中的两个聚合接口的LACP系统MAC地址和LACP系统优先级不一致。这样只有一边聚合接口的成员端口可以被选中,通过被选中的设备转发业务流量,避免流量转发异常。成员端口的选中与LACP系统优先级和系统MAC地址相关,与DR设备角色无关。LACP系统优先级和系统MAC地址越小,则优先被选中。若选中的成员端口也发生故障,则将选中另外一台设备上聚合接口的成员端口,通过该聚合接口继续转发流量。
若Keepalive链路先发生故障,IPL链路后发生故障,则DR设备上的接口不会被置为DRNI MAD DOWN状态,将立即或延迟一段时间切换到设备独立工作模式。
图1-11 开启设备独立工作功能场景下二次故障处理机制示意图
与DRNI相关的协议规范有:
· IEEE P802.1AX-REV™/D4.4c:Draft Standard for Local and Metropolitan Area Networks
DRNI中所有DR设备的软件版本必须相同。
为了能够让对端设备将分布式聚合组中的两台设备看成一台设备,要求同一分布式聚合组中所有DR设备配置相同的系统MAC地址和系统优先级,配置不同的系统编号。
请保证DR系统中DR设备的业务模块相关配置一致,避免影响流量转发。
为了保证DRNI正常工作,需要注意:
· 请勿在DRNI组网环境开启全自动聚合功能。
· 请勿将DR口和IPP口加入隔离组中。有关隔离组的详细介绍,请参见“二层技术-以太网交换配置指导”中的“端口隔离”。
当聚合接口配置为DR口时,请注意:
· 该聚合接口上最大选中端口数和最小选中端口数的配置不生效。
· 通过display link-aggregation verbose命令显示该聚合接口详细信息时,显示信息中SystemID为分布式聚合配置的DR系统MAC和DR系统优先级。如果参考端口在DR口上,则两台DR设备上会各显示一个参考端口。
关于以太网链路聚合的详细介绍,请参见“二层技术-以太网交换配置指导”中的“以太网链路聚合”。在DRNI组网环境中,在设备存在大量MAC地址表项时,请通过mac-address timer aging命令增加MAC地址老化时间,建议配置MAC地址老化时间在20分钟以上。有关mac-address timer aging命令的详细介绍,请参见“二层技术-以太网交换配置指导”中的“MAC地址表”。
DRNI配置任务如下:
(1) 配置DR系统参数
¡ 配置DR系统编号
(2) 配置DR设备的角色优先级
(3) (可选)开启DR设备独立工作功能
(4) 配置Keepalive参数
(5) 配置DRNI MAD功能
¡ 配置接口在DR系统分裂后处于DRNI MAD DOWN状态
(6) 配置DR口
(7) 配置IPP口
(8) (可选)开启DRNI IPP口的MAC地址保持功能
(9) (可选)配置DRNI一致性检查功能
在进行软件升级时,为避免配置不一致,导致DR口被关闭,可暂时关闭配置一致性检查功能。
(10) (可选)配置IPP或DR接口的DRCP超时时间为短超时
(11) 配置DRNI时间参数
¡ (可选)配置IPL链路down后等待检测故障原因的时间
¡ (可选)配置接口延迟恢复时间
(12) (可选)配置DRNI安全功能
DR系统中相互配对的DR接口的系统MAC地址必须相同。
建议用户将系统MAC地址配置为其中一台DR设备的桥MAC地址。
修改DR设备的系统MAC地址将会导致当前设备从已经建立的分布式聚合组中分裂。因此DR系统形成后,不建议修改系统MAC地址。
只有聚合接口配置为DR接口后,才允许在该聚合接口视图下配置DR系统MAC地址。
DR系统MAC地址支持在系统视图和聚合接口视图下配置。对于一个聚合接口来说,优先采用该聚合接口下的配置,只有该聚合接口下未进行配置时,才采用系统视图下的配置。
(1) 进入系统视图。
system-view
(2) 配置DR系统MAC地址。
drni system-mac mac-address
缺省情况下,未配置DR系统MAC地址。
(3) 在DR接口下配置DR系统MAC地址。
port drni system-mac mac-address
缺省情况下,未配置DR系统MAC地址。
DR系统中不同DR设备的系统编号必须不同。
修改DR设备的系统编号将会导致当前设备从已经建立的分布式聚合组中分裂。
(1) 进入系统视图。
system-view
(2) 配置DR系统编号。
drni system-number system-number
缺省情况下,未配置DR系统编号。
DR系统使用DR系统优先级作为LACPDU中的系统LACP优先级与对端设备交互聚合组信息。
DR系统中相互配对的DR接口的系统优先级必须相同。
如果在系统视图下修改DR设备的系统优先级将会导致当前设备从已经建立的分布式聚合组中分裂。因此DR系统形成后,不建议在系统视图下修改系统优先级。
只有聚合接口配置为DR接口后,才允许在该聚合接口视图下配置DR系统优先级。
DR系统优先级支持在系统视图和聚合接口视图下配置。对于一个聚合接口来说,优先采用该聚合接口下的配置,只有该聚合接口未进行配置或配置为缺省值时,才采用系统视图下的配置。
(1) 进入系统视图。
system-view
(2) 配置DR系统优先级。
drni system-priority system-priority
缺省情况下,DR系统优先级为32768。
(3) 在DR接口下配置DR系统优先级。
port drni system-priority priority
缺省情况下,DR系统优先级为32768。
设备角色优先级用于两台设备间进行主从协商,值越小优先级越高,优先级高的为主设备。
如果优先级相同,那么比较两台设备的桥MAC地址,桥MAC地址较小的为主设备。
DR系统建立后,不建议修改DR设备的角色优先级,避免主从设备重新选举,导致网络震荡。
(1) 进入系统视图。
system-view
(2) 配置DR设备的角色优先级。
drni role priority priority-value
缺省情况下,DR设备的角色优先级为32768。
当DR系统分裂时,为了避免DR系统中的两台设备都作为主设备转发流量的情况,可以在DR系统分裂前配置本功能。配置本功能后,如果DR系统分裂,IPL和Keepalive链路均处于DOWN状态,此时从设备会立即或经过一段时间切换到独立运行模式。
DR设备切换到独立运行模式后,聚合接口发送的LACP报文中携带的DRNI系统参数还原为聚合接口的LACP系统MAC地址和LACP系统优先级,使同一DR组中的两个聚合接口的LACP系统MAC地址和LACP系统优先级不一致。这样只有一边聚合接口的成员端口可以被选中,通过被选中的设备转发业务流量,避免流量转发异常。
当IPL和Keepalive链路均发生故障时,本功能才会生效。
建议DR设备均配置本功能。
配置本功能前,需要保证DR设备的LACP系统优先级大于连接DR系统设备的LACP系统优先级,使参考端口位于连接DR系统的设备上,避免连接DR系统的设备的端口频繁震荡。
当对端DR设备整机重启时,本功能失效。
(1) 进入系统视图。
system-view
(2) 开启DR设备独立工作功能。
drni standalone enable [ delay delay-time ]
缺省情况下,DR设备独立工作功能处于关闭状态。
目前仅支持在管理以太网接口上创建Keepalive链路。
本端设备接收到的Keepalive报文的目的IP应该为本端配置的源IP。当设备收到其他目的IP地址的Keepalive报文时,Keepalive链路状态变为down。
本地设备和邻居设备的UDP端口号需配置一致,否则无法收到对端的Keepalive报文。
(1) 进入系统视图。
system-view
(2) 配置Keepalive报文的参数。
drni 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。
DR设备间会周期性地发送Keepalive报文。如果本端设备在Keepalive报文超时时间后仍未收到对端发送的Keepalive报文,则Keepalive链路变为down。
本端DR设备的Keepalive报文超时时间必须配置成对端DR设备的Keepalive报文发送时间间隔的2倍以上。
用户需要将DR设备的Keepalive协议报文的发送时间间隔配置一致,否则可能引起功能异常。
(1) 进入系统视图。
system-view
(2) 配置Keepalive报文发送的时间间隔和超时时间间隔。
drni keepalive interval interval [ timeout timeout ]
缺省情况下,Keepalive报文发送的时间间隔为1000毫秒,超时时间间隔为5秒。
设备上接口在DR系统分裂后有以下状态:
· DR系统分裂后接口处于DRNI MAD DOWN状态。
· DR系统分裂后接口保持原状态不变。
缺省情况下,IPL故障后,为了防止从设备继续转发流量,在DR系统分裂时将设备上除IRF保留接口、DRNI保留接口外的所有接口置为DRNI MAD DOWN状态,不允许此类接口转发流量,避免流量错误转发,尽量减少对业务影响。如果希望DR系统中有特殊用途的接口(比如Keepalive接口)保持UP状态,可以通过drni mad exclude interface命令将其配置为DRNI保留接口。
对于以下接口,不受本配置的影响:
· DRNI系统保留接口。
· IRF保留接口(包括用户配置的和系统保留的),通过display mad verbose命令查看。
· 在接口上配置了强制端口up功能:
¡ 通过loopback命令开启接口的环回功能。
¡ 通过port service-loopback group命令将端口加入指定的业务环回组。
¡ 通过mirroring-group reflector-port命令为远程源镜像组配置反射端口。
¡ 通过port up-mode命令强制开启光口。
(1) 进入系统视图。
system-view
(2) 配置接口在DR系统分裂后的状态。
drni mad default-action { down | none }
缺省情况下,在DR系统分裂后接口处于DRNI MAD DOWN状态。
用户需要将以下接口配置为DRNI保留接口,以避免接口被置为DRNI MAD DOWN状态:
· 将Keepalive链路的接口配置为DRNI保留接口,避免该接口的状态变为DRNI MAD DOWN导致Keepalive链路down,从而造成错误检测。
· 配置Tunnel接口为IPP口时,必须将隧道出接口配置为保留接口,避免该接口的状态变为DRNI MAD DOWN,导致Tunnel处于down状态,IPL无法收发DRCP协议报文。
· DR接口和IPP口所在VLAN对应的VLAN接口需要配置为DRNI保留接口,以避免DR设备间同步表项时,因VLAN接口处于DRNI MAD DOWN状态,ARP表项无法同步,影响流量转发。
可以通过display drni mad verbose命令查看当前已经配置的保留接口。
接口处于DRNI MAD DOWN状态时,配置该接口为保留接口,该接口仍会保持DRNI MAD DOWN状态,不会恢复up状态。
(1) 进入系统视图。
system-view
(2) 配置DRNI保留接口。
drni mad exclude interface interface-type interface-number
缺省情况下,未配置保留接口。
如果同时存在本命令、drni mad exclude interface命令和drni mad include interface命令,则drni mad exclude interface命令和drni mad include interface命令优先生效。
(1) 进入系统视图。
system-view
(2) 配置所有逻辑接口为DRNI保留接口。
drni mad exclude logical-interfaces
缺省情况下,所有逻辑接口未配置为DRNI保留接口。
系统自动配置DR口的成员口在DR系统分裂后处于DRNI MAD DOWN状态,不需要配置本功能。
配置以下接口在DR系统分裂后处于DRNI MAD DOWN状态时,配置不生效:
· DRNI系统保留接口。
· IRF保留接口(包括用户配置的和系统保留的)。有关IRF保留接口的详细介绍,请参见“虚拟化技术配置指导”中的“IRF”。
· 在接口上配置了强制端口up功能:
¡ 通过loopback命令开启接口的环回功能。
¡ 通过port service-loopback group命令将端口加入指定的业务环回组。
¡ 通过mirroring-group reflector-port命令为远程源镜像组配置反射端口。
¡ 通过port up-mode命令强制开启光口。
(1) 进入系统视图。
system-view
(2) 配置在DR系统分裂后处于DRNI MAD DOWN状态的接口。
drni mad include interface interface-type interface-number
缺省情况下,未指定接口为在DR系统分裂后必须处于DRNI MAD DOWN状态的接口。
当IPL链路故障,Keepalive链路正常工作时,主设备正常工作,从设备会自动关闭本设备上除IRF保留接口、DRNI保留接口外的所有接口,将这些接口置为DRNI MAD DOWN状态。如果此时Keepalive链路也发生故障,从设备上的接口会解除DRNI MAD DOWN状态,并升级为主设备,使DR系统中的两台设备都作为主设备转发流量,引起网络故障。为了避免以上情况,可以在设备上开启DRNI MAD DOWN状态保持功能,使设备上的接口一直处于DRNI MAD DOWN状态,不参与流量转发。在上述场景下,如果负责转发流量的DR设备故障,则可以强制解除另一台DR设备上所有接口的DRNI MAD DOWN状态,使设备正常转发流量,避免业务长时间中断。
(1) 进入系统视图。
system-view
(2) 开启DRNI MAD DOWN状态保持功能。
drni mad persistent
缺省情况下,DRNI MAD DOWN状态保持功能处于关闭状态。
(3) (可选)解除设备上所有接口的DRNI MAD DOWN状态。
drni mad restore
配置二层聚合接口加入分布式聚合组,该聚合接口不能是IPP口。二层聚合接口加入分布式聚合组后,同时也创建了对应的分布式聚合接口即DR口。
一台DR设备上可以配置多个DR口。
一个二层聚合接口只能加入一个分布式聚合组。
(1) 进入系统视图。
system-view
(2) 进入二层聚合接口视图。
interface bridge-aggregation interface-number
(3) 配置DR口。
port drni group group-id
配置二层聚合接口或Tunnel接口为IPP口时:
· 该聚合接口不能是DR口。
一台DR设备上只能配置一个IPP口。
建议在IPP口上配置link-delay命令,以减少接口震荡对上层业务的影响。关于link-delay命令的详细介绍,请参见“二层技术-以太网交换命令参考”中的“以太网链路聚合”。
IPP口不允许开启或者关闭MAC地址学习功能。有关MAC地址学习功能的详细介绍,请参见“二层技术-以太网交换命令参考”中的“MAC地址表”。
两端DR设备的IPP口上允许通过的超长帧需要相同,否则会导致DR设备间信息同步失败。关于超长帧的详细介绍,请参见“二层技术-以太网交换配置指导”中的“以太网链路聚合”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层聚合接口视图。
interface bridge-aggregation interface-number
¡ 进入Tunnel接口视图。
interface tunnel number
(3) 配置IPP口。
port drni intra-portal-port port-number
当设备单归接入DR系统时,如果设备连接DR设备的接口状态变为DOWN,本端IPP口需要删除其MAC地址,并向对端IPP口发送MAC地址删除消息,使对端IPP口立即同步删除对应的MAC地址表项。如果单归设备连接DR设备的接口反复震荡,则IPP口将反复删除和添加MAC地址表项。
当DR设备收到去往单归设备的流量时,由于IPP口反复删除和添加MAC地址表项,DR设备将对流量进行多次广播,造成单播流量泛洪。
通过配置本功能,可以使IPP口不立即删除MAC地址表项,而根据mac-address timer配置的MAC地址老化时间刷新MAC地址表。有关该命令的详细介绍,请参见“二层技术-以太网交换命令参考”中的“MAC地址表”。
(1) 进入系统视图。
system-view
(2) 开启DRNI IPP口的MAC地址保持功能。
drni ipp mac-address hold
缺省情况下,DRNI IPP口的MAC地址保持功能处于关闭状态。
进行配置一致性检查,检查到配置不一致时,根据配置一致性检查类型的不同,处理方式为:
· 当检查到Type 1类型不一致时,不同的配置一致性检查模式处理方式为:
¡ 松散模式:打印配置一致性检查失败的日志信息。
¡ 严格模式:关闭DR接口,并打印配置一致性检查失败的日志信息。
· 当检查到Type 2类型不一致时,在松散模式和严格模式下,都仅打印配置一致性检查失败的日志信息。
(1) 进入系统视图。
system-view
(2) 配置一致性检查的模式为松散模式。
drni consistency-check mode { loose | strict }
缺省情况下,DRNI配置一致性检查的模式为严格模式。
当分布式聚合系统中两台DR设备因为版本升级等原因,导致DR设备配置不一致时,为了避免因配置一致性检查而关闭DR口,用户可以通过drni consistency-check disable命令暂时关闭分布式聚合配置一致性检查,保证DR口正常工作。
请用户保证两端DR设备配置一致性检查功能开启状态一致。
(1) 进入系统视图。
system-view
(2) 关闭DRNI配置一致性检查功能。
drni consistency-check disable
缺省情况下,分布式聚合配置一致性检查功能处于开启状态。
当用户需要快速检测IPP口状态时,可以配置本功能,快速发送DRCP报文。
短超时配置仅在IPP口或者DR口下配置时生效。
请不要在DRNI进程重启时或ISSU升级前配置DRCP超时时间为短超时,否则在DRNI进程重启时或ISSU升级期间会出现网络流量中断,导致流量转发不通。有关ISSU升级的详细介绍,请参见“基础配置指导”中的“ISSU配置”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层聚合接口视图。
interface bridge-aggregation interface-number
¡ 进入Tunnel接口视图。
interface tunnel number
(3) 配置端口的DRCP超时时间为短超时。
drni drcp period short
缺省情况下,端口的DRCP超时时间为长超时(90秒)。
IPL链路down后,设备启动本定时器,等待链路上Keepalive报文收发完全,防止因为延迟造成错误检测。设备需要检测IPL链路down的原因,是设备故障即本端DR设备未收到对端DR设备的Keepalive报文,还是IPL链路故障。
在定时器超时前收到对端的Keepalive报文,则认为是IPL链路故障,否则认为设备故障。
在DRNI和VRRP组网环境下,需要确保vrrp vrid timer advertise命令配置的时间间隔大于本功能配置的时间间隔,否则在确认IPL故障前可能会进行VRRP主备切换,导致流量丢失。有关vrrp vrid timer advertise命令的详细介绍,请参见“可靠性命令参考”中的“VRRP”。
(1) 进入系统视图。
system-view
(2) 配置IPL链路down后等待检测故障原因的时间。
drni keepalive hold-time value
缺省情况下,IPL链路down后等待检测故障原因的时间为3秒。
DR系统中主从设备由于故障重启,仅一台DR设备恢复启动后,缺省情况下,该设备处于None角色,所有DR口处于DRNI DOWN状态。此时用户流量无法通过DR口转发。
为了避免上述情况出现,可以配置本功能,在设备重启后启动自动恢复定时器。当自动恢复定时器超时后,该设备上DR口被置为非DRNI DOWN状态,如果该设备上存在处于up状态的DR口,则该设备升级为主设备,用户流量可以正常转发;否则,设备保持None角色,用户流量无法转发。
DR系统中主从设备由于故障重启,两台DR设备均恢复启动时,如果设备在自动恢复定时器超时前未收到DRCP报文或Keepalive报文,且均存在处于up状态的DR口,则两台DR设备均升级为主设备,此时需要用户检查IPL和Keepalive链路,并排除故障。
请配置本定时器的值大于整机重启时间,避免DR设备间出现角色抢占。
(1) 进入系统视图。
system-view
(2) 配置设备重启后的自动恢复时间。
drni auto-recovery reload-delay delay-value
缺省情况下,设备不自动恢复。
本定时器用来设置设备作为从设备加入分布式聚合系统时进行MAC地址表项等信息同步的最大时间。定时器超时之前,业务口(除DRNI保留接口和IRF保留接口以外的接口)状态为DRNI MAD DOWN。定时器超时后,业务口状态变为up。
以下情况需要适当延长本定时器:
· 当设备表项较多或者进行ISSU升级时,为避免出现丢包或者其它转发问题。
· 开启分布式聚合配置一致性检查功能后,设备会启动延迟恢复定时器,设备会在延迟恢复定时器一半时间之后进行配置一致性检查,为避免在延迟恢复时造成DR接口震荡。
(1) 进入系统视图。
system-view
(2) 配置接口延迟恢复时间。
drni restore-delay value
缺省情况下,延迟恢复时间为30秒。
开启DRNI序列号校验功能,即开启DRCP报文和Keepalive报文的序列号校验功能。
序列号校验的防攻击能力比较差,攻击者只要将侦听到的报文序列号增加,就可以欺骗报文接收者。同时使用认证功能,防止攻击者篡改报文内容,才可以提供更好的安全性。
设备整机重启后,如果攻击者使用之前获取的报文进行攻击,则对端未重启设备可能认可攻击报文。建议设备重启后更换认证密钥。
(1) 进入系统视图。
system-view
(2) 开启DRNI序列号校验功能。
drni sequence enable
缺省情况下,DRNI序列号校验功能处于关闭状态。
开启DRNI报文认证功能,即开启DRCP报文和Keepalive报文的认证功能。
两台DR设备需要配置相同密钥,否则认证失败。
(1) 进入系统视图。
system-view
(2) 开启DRNI报文认证功能,并配置认证密钥。
drni authentication key { simple | cipher } string
缺省情况下,DRNI报文认证功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置后的分布式聚合的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,用户可以执行reset命令来清除分布式聚合的相关信息。
表1-5 DRNI显示和维护
操作 |
命令 |
显示分布式聚合配置一致性信息 |
display drni consistency { type1 | type2 } { global | interface interface-type interface-number } |
显示分布式聚合DRCP报文的统计信息 |
display drni drcp statistics [ interface interface-type interface-number ] |
显示分布式聚合Keepalive报文的信息 |
display drni keepalive |
显示分布式聚合MAD的详细信息 |
display drni mad verbose |
显示分布式聚合设备角色信息 |
display drni role |
显示分布式聚合的接口摘要信息 |
display drni summary |
显示分布式聚合系统信息 |
display drni system |
显示分布式聚合的接口详细信息 |
display drni verbose [ interface bridge-aggregation interface-number ] |
显示分布式聚合的故障信息 |
display drni troubleshooting [ dr | ipp | keepalive ] [ history ] [ count ] |
清除分布式聚合的DRCP统计信息 |
reset drni drcp statistics [ interface interface-list ] |
清除分布式聚合的历史故障信息 |
reset drni troubleshooting history |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!