因为华为模拟器不支持M-LAG配置,所以昨天配置了华三的DRNI(M-LAG是个啥?M-LAG和DRNI谁更厉害?)。前面提到DRNI是一种跨设备链路聚合技术,将两台物理设备在聚合层面虚拟成一台设备来实现跨设备链路聚合,从而提供设备级冗余保护和流量负载分担。
本来想昨天把业务一块测了,后来发现业务测试属于三层转发的配置,那今天就敲一个DRNI三层转发配置的实验。
由于用户对于业务的可靠性要求很高,如果SWC和接入设备(SWA和SWB)之间配置链路聚合只能保证链路级的可靠性,接入设备发生故障时则会导致业务中断。这时用户可以采用DRNI技术,正常工作时链路进行负载分担且任何一台设备故障对业务均没有影响,保证业务的高可靠性。
配置三层以太网接口为保留接口,在该三层以太网口上搭建Keepalive链路,保证Keepalive报文能够正常传输。
Windows 7旗舰版
HCL 3.0.1
H3C S6850(Version 7.1.070, Alpha 7170)
H3C S5820V2(Version 7.1.075, Alpha 7571)
DRNI三层转发配置组网图如下。
两台DR设备的G1/0/1做keepalive检测,将G1/0/2和G1/0/3加入聚合组BAGG1,并配置为IPP(intra-portal-port,内部控制链路端口),配置两台设备的G1/0/4、G1/0/5口加入DRNI聚合组2、3,分别和SWC、SWD互联。
VLAN 10内主机的缺省网关为10.1.1.1/24,VLAN 20内主机的缺省网关为20.1.1.1/24。SWA和SWB同时属于虚拟IP地址为10.1.1.1/24的备份组1和虚拟IP地址为20.1.1.1/24的备份组2。在备份组1和备份组2中SWA的优先级高于SWB。
把上次的配置稍微调整一下就可以用了,直接上配置。
#
sysname SWA
#
interface Bridge-Aggregation1
port link-type trunk
port trunk permit vlan all
mode dynamic
port drni intra-portal-port 1
#
interface Bridge-Aggregation2
mode dynamic
port drni group 2
#
interface Bridge-Aggregation3
mode dynamic
port drni group 3
#
interface GigabitEthernet1/0/1
port link-mode route
ip address 1.1.1.1 255.255.255.0
#
interface GigabitEthernet1/0/2
port link-type trunk
port trunk permit vlan all
port link-aggregation group 1
#
interface GigabitEthernet1/0/3
port link-type trunk
port trunk permit vlan all
port link-aggregation group 1
#
interface GigabitEthernet1/0/4
port link-mode bridge
port link-aggregation group 2
#
interface GigabitEthernet1/0/5
port link-mode bridge
port link-aggregation group 3
#
drni system-mac 0001-0001-0001
drni system-number 1
drni system-priority 666
drni keepalive ip destination 1.1.1.2 source 1.1.1.1
drni mad exclude interface GigabitEthernet1/0/2
创建VLAN 10和20。
#
vlan 10
#
vlan 20
配置二层聚合接口2为Trunk端口,并允许VLAN 10的报文通过。
#
interface Bridge-Aggregation2
port link-type trunk
port trunk permit vlan 1 10
配置二层聚合接口3为Trunk端口,并允许VLAN 20的报文通过。
#
interface Bridge-Aggregation3
port link-type trunk
port trunk permit vlan 1 20
创建接口Vlan-interface10和Vlan-interface20,并配置其IP地址。
#
interface Vlan-interface10
ip address 10.1.1.11 255.255.255.0
#
interface Vlan-interface20
ip address 20.1.1.11 255.255.255.0
配置Vlan-interface10和Vlan-interface20接口为DRNI保留接口。
#
drni mad exclude interface Vlan-interface10
drni mad exclude interface Vlan-interface20
配置OSPF。
#
ospf 1
import-route direct
area 0.0.0.0
network 10.1.1.0 0.0.0.255
network 20.1.1.0 0.0.0.255
为接口Vlan-interface10创建VRRP备份组10,并配置备份组10的虚拟IP地址为10.1.1.1。
#
interface Vlan-interface10
vrrp vrid 10 virtual-ip 10.1.1.1
设置SWA在备份组10中的优先级为200,以保证SWA成为Master,从而和SWA在DRNI中角色一致。
#
interface Vlan-interface10
vrrp vrid 10 priority 200
同理,为接口Vlan-interface20创建VRRP备份组20,并配置备份组20的虚拟IP地址为20.1.1.1。设置SWA在备份组20中的优先级为200,以保证SWA成为Master,从而和SWA在DRNI中角色一致。
#
interface Vlan-interface20
ip address 20.1.1.11 255.255.255.0
vrrp vrid 20 virtual-ip 20.1.1.1
vrrp vrid 20 priority 200
SWB的配置思路和SWA基本一致,直接上配置。
#
sysname SWB
#
interface Bridge-Aggregation1
port link-type trunk
port trunk permit vlan all
mode dynamic
port drni intra-portal-port 1
#
interface Bridge-Aggregation2
mode dynamic
port drni group 2
#
interface Bridge-Aggregation3
mode dynamic
port drni group 3
#
interface GigabitEthernet1/0/1
port link-mode route
ip address 1.1.1.1 255.255.255.0
#
interface GigabitEthernet1/0/2
port link-type trunk
port trunk permit vlan all
port link-aggregation group 1
#
interface GigabitEthernet1/0/3
port link-type trunk
port trunk permit vlan all
port link-aggregation group 1
#
interface GigabitEthernet1/0/4
port link-mode bridge
port link-aggregation group 2
#
interface GigabitEthernet1/0/5
port link-mode bridge
port link-aggregation group 3
#
drni system-mac 0001-0001-0001
drni system-number 2
drni system-priority 666
drni keepalive ip destination 1.1.1.1 source 1.1.1.2
drni mad exclude interface GigabitEthernet1/0/2
#
vlan 10
#
vlan 20
#
interface Bridge-Aggregation2
port link-type trunk
port trunk permit vlan 1 10
#
interface Bridge-Aggregation3
port link-type trunk
port trunk permit vlan 1 20
#
interface Vlan-interface10
ip address 10.1.1.12 255.255.255.0
vrrp vrid 10 virtual-ip 10.1.1.1
vrrp vrid 10 priority 200
#
interface Vlan-interface20
ip address 20.1.1.12 255.255.255.0
vrrp vrid 20 virtual-ip 20.1.1.1
vrrp vrid 20 priority 200
#
drni mad exclude interface Vlan-interface10
drni mad exclude interface Vlan-interface20
#
ospf 1
direct
area 0.0.0.0
network 10.1.1.0 0.0.0.255
network 20.1.1.0 0.0.0.255
SWC和SWD配置相同,创建二层聚合接口1,配置为动态聚合模式,并将端口G1/0/2和G1/0/3加入到聚合组1中。配置聚合口为Trunk端口,并允许VLAN 10的报文通过。配置创建接口Vlan-interface10,配置IP地址,完成OSPF配置。
#
sysname SWC
#
ospf 1
direct
area 0.0.0.0
network 10.1.1.0 0.0.0.255
#
vlan 10
#
interface Bridge-Aggregation1
port link-type trunk
port trunk permit vlan 1 10
mode dynamic
#
interface Vlan-interface10
ip address 10.1.1.13 255.255.255.0
#
interface GigabitEthernet1/0/1
port link-mode bridge
port access vlan 10
#
interface GigabitEthernet1/0/2
port link-mode bridge
port link-type trunk
port trunk permit vlan 1 10
port link-aggregation group 1
#
interface GigabitEthernet1/0/3
port link-mode bridge
port link-type trunk
port trunk permit vlan 1 10
port link-aggregation group 1
和SWC配置大体相同,调整VLAN及IP相关配置,配置如下:
#
sysname SWD
#
ospf 1
direct
area 0.0.0.0
network 20.1.1.0 0.0.0.255
#
vlan 20
#
interface Bridge-Aggregation1
port link-type trunk
port trunk permit vlan 1 20
mode dynamic
#
interface Vlan-interface20
ip address 20.1.1.13 255.255.255.0
#
interface GigabitEthernet1/0/1
port link-mode bridge
port access vlan 20
#
interface GigabitEthernet1/0/2
port link-mode bridge
port link-type trunk
port trunk permit vlan 1 20
port link-aggregation group 1
#
interface GigabitEthernet1/0/3
port link-mode bridge
port link-type trunk
port trunk permit vlan 1 20
port link-aggregation group 1
查看DRNI的设备角色信息,一主一备。
dis drni role
查看SWB的DRNI系统信息。
dis drni system
查看SWB上分布式聚合的Keepalive报文信息。
display drni keepalive
查看确认收发报文是否正常,如果正常会提示成功,像上图这种,表示状态正常。
查看DRCP报文的统计信息。
dis drni drcp statistics
查看SWB上IPP口和DR口的摘要信息。
display drni summary
查看DRNI的接口详细信息。
dis drni verbose
查看SWA上聚合组2、3的详细信息。
查看SWB上聚合组2、3的详细信息。
查看SWC上聚合组1的详细信息。
查看SWD上聚合组1的详细信息。
在SWA上查看VRRP备份组的信息。
在SWB上查看VRRP备份组的信息。
查看SWC上的OSPF邻居信息,可以看到设备之间都建立了OSPF邻居。查看路由表,学习到了全部路由,从而确保了三层互通。
查看SWD上的OSPF邻居信息和路由信息。
在PCA上测试到PCB的访问情况。
在PCA上测试到其他地址的访问情况。
在PCA发起到PCB的9999个ping包,从拓扑上删除SWA接口G1/0/5的接线,查看报文中断情况。
额,这么刺激的吗?一上来就翻车。
原来是VRRP状态没有切换,不过也没有问题,VRRP是虚接口,VLAN接口也是虚接口,IPP接口配置了放通VLAN,所以上下行链路状态变化不会引起VRRP状态切换。
debug报文转发,看上去还是正常的。
查看IPP接口下的报文收发情况,竟然没有正常报文通信。
那就懂了,就是SWA没有将报文发给SWB或者互联线路转发异常。
然后把SWA接口G1/0/5的接线接上,断开接口G1/0/5的接线,查看报文中断情况。
没有中断,想想也没有问题,报文直接从SWB上来了,直接转发给PCB了,没有经过SWA。虽然VRRP也没有发生倒换,但是也不需要VRRP发生倒换。
1、这个实验设置的有点问题,IPP接口配置之后默认会下发trunk vlan all的配置,配置中要求重复配置放通VLAN 10和20,重复操作;
2、VRRP有作用,但是配置的倒换没办法生效,因为IPP口放通所有VLAN的配置,导致VRRP接口不会DOWN,所以不会倒换;
3、上行链路故障的转发机制,SWA上行链路虽然故障,但是SWB上也存在转发到外网侧的相关表项,SWA会将访问外网侧的流量发送给SWB进行转发。但是没发过来,大概率可能是BUG了;
4、难道IRF不好用吗?为什么非要用配置这么复杂还不稳定的DRNI?本来就是一堆二层的功能,上了一堆三层的路由配置,差评!