发布时间:2021-12-03 13:20:47 作者:衡水铁头哥阅读:0
上个MPLS实验中(MPLS小实验:通过FEC标签接受控制策略配置LSP),我们验证了使能LDP后,LSR可以把网络层的IP路由信息映射到MPLS的标签交换路径上,并且通过在LSR上配置LSP触发策略,可以限制引入到LDP的路由表项而触发建立的LSP。
对于引入到LDP的路由表项,LSP触发策略包括:
1、所有路由表项都会触发LDP建立LSP。
2、利用IP地址前缀列表对路由表项进行过滤,只有匹配IP地址前缀列表的路由表项才能触发建立LSP。
3、只有32位掩码的IPv4主机路由或128位前缀的IPv6主机路由能够触发LDP建立LSP。
规则1是前提,3是默认的,2的优先级高于3。
现在我们已经实现了指定PCA到PCB的流量从RT3转发,那如果下游线路故障会怎么样呢?
首先我们将RT4和RT3的互联口DOWN掉。
丢了一个包之后快速恢复,而且路径也切换回来了。
但是从RT1查看LSP表项,发现问题没这么简单,已经没有路由表了。
使用ping mpls ipv4命令用来检测一下,发现已经不通了。那就说明是通过OSPF路由转发走了。
那这里就有问题了。而且我发现开启接口之后,过了很久才恢复连通性,那有没有办法快速恢复流量转发呢?
那就要提到今天的LDP快速重路由了。
LDP LFA(Loop Free Alternate,无环备份)快速重路由功能可用来缩短网络故障导致的MPLS流量中断时间。LDP快速重路由完全基于IP快速重路由实现,在IP快速重路由使能后,LDP快速重路由即自动使能。
而在大型组网中,LDP LFA快速重路由可能无法计算出备份路径,不能满足可靠性要求,可以通过部署LDP Remote LFA(Remote Loop Free Alternate,远端无环备份)快速重路由解决该问题。
组网需求
RT1-4均支持MPLS,在RT1到RT4之间通过LDP建立LSP,使11.1.1.0/24和44.1.1.0/24这两个网段中互访的报文能够通过MPLS进行传输。
RT1和RT4之间存在两条路径:RT1-RT2-RT4和RT1-RT3-RT4,需要在两条路径上利用LDP分别建立主LSP和备份LSP。默认只沿着路径RT1-RT3-RT4这条主LSP传输,当主LSP故障时,切换到RT1-RT2-RT4这条备份LSP上传输。
组网图
LDP快速重路由配置组网图。
实验环境
Windows 10专业版(1909-18363.1556,16 GB内存)
HCL 3.0.1
MSR 36-20(Version 7.1.064, Release 0821P11)
配置步骤
首先按照组网图所示配置各接口的IP地址和掩码,并在RT1、RT2、RT3和RT4上配置OSPF,实现各路由器之间路由可达。配置开启每台设备和接口的的MPLS和LDP功能。各设备配置如下:
RT1
#
sysname RT1
#
ospf 1 router-id 1.1.1.1
area 0.0.0.0
network 1.1.1.1 0.0.0.0
network 11.1.1.0 0.0.0.255
network 12.1.1.0 0.0.0.255
network 13.1.1.0 0.0.0.255
#
mpls lsr-id 1.1.1.1
#
mpls ldp
#
interface LoopBack0
ip address 1.1.1.1 255.255.255.255
#
interface GigabitEthernet0/0
ip address 11.1.1.1 255.255.255.0
#
interface GigabitEthernet0/1
ip address 12.1.1.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface GigabitEthernet0/2
ip address 13.1.1.1 255.255.255.0
mpls enable
mpls ldp enable
RT2
#
sysname RT2
#
ospf 1 router-id 2.2.2.2
area 0.0.0.0
network 2.2.2.2 0.0.0.0
network 12.1.1.0 0.0.0.255
network 24.1.1.0 0.0.0.255
#
mpls lsr-id 2.2.2.2
#
mpls ldp
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
interface GigabitEthernet0/0
ip address 12.1.1.2 255.255.255.0
mpls enable
mpls ldp enable
#
interface GigabitEthernet0/1
ip address 24.1.1.2 255.255.255.0
mpls enable
mpls ldp enable
RT3
#
sysname RT3
#
ospf 1 router-id 3.3.3.3
area 0.0.0.0
network 3.3.3.3 0.0.0.0
network 13.1.1.0 0.0.0.255
network 34.1.1.0 0.0.0.255
#
mpls lsr-id 3.3.3.3
#
mpls ldp
#
interface LoopBack0
ip address 3.3.3.3 255.255.255.255
#
interface GigabitEthernet0/0
ip address 13.1.1.3 255.255.255.0
mpls enable
mpls ldp enable
#
interface GigabitEthernet0/1
ip address 34.1.1.3 255.255.255.0
mpls enable
mpls ldp enable
RT4
#
sysname RT4
#
ospf 1 router-id 4.4.4.4
area 0.0.0.0
network 4.4.4.4 0.0.0.0
network 24.1.1.0 0.0.0.255
network 34.1.1.0 0.0.0.255
network 44.1.1.0 0.0.0.255
#
mpls lsr-id 4.4.4.4
#
mpls ldp
#
interface LoopBack0
ip address 4.4.4.4 255.255.255.255
#
interface GigabitEthernet0/0
ip address 44.1.1.1 255.255.255.0
#
interface GigabitEthernet0/1
ip address 24.1.1.4 255.255.255.0
mpls enable
mpls ldp enable
#
interface GigabitEthernet0/2
ip address 34.1.1.4 255.255.255.0
mpls enable
mpls ldp enable
通过路由策略指定备份下一跳
首先通过路由策略指定备份下一跳。
RT1
配置echo报文的源IP地址,为了避免对端发送大量的ICMP重定向报文造成网络拥塞,建议配置echo报文的源IP地址不属于该设备任何一个接口所在网段。
#
bfd echo-source-ip 66.6.6.6
创建IP地址前缀列表rt1,引入44.1.1.0/24的路由表项触发LDP建立LSP。
#
ip prefix-list rt1 index 10 permit 44.1.1.0 24
配置路由策略,匹配备份下一跳。
#
route-policy rt1 permit node 10
if-match ip address prefix-list rt1
apply fast-reroute backup-nexthop 12.1.1.2
配置OSPF的快速重路由。
#
ospf 1 router-id 1.1.1.1
fast-reroute route-policy rt1
配置LSP的触发建立策略为所有路由都能触发LDP建立LSP。
#
mpls ldp
lsp-trigger all
RT4
配置思路和RT1相同,直接上配置。
#
bfd echo-source-ip 88.8.8.8
#
ip prefix-list rt4 index 10 permit 11.1.1.0 24
#
route-policy rt4 permit node 10
if-match ip address prefix-list rt4
apply fast-reroute backup-nexthop 24.1.1.2
#
ospf 1 router-id 4.4.4.4
fast-reroute route-policy rt4
#
mpls ldp
lsp-trigger all
RT2
#
mpls ldp
lsp-trigger all
RT3
#
mpls ldp
lsp-trigger all
验证配置
配置完成之后,查看主备LSP信息。
嗯?和手册写的不一样,没有标识备份LSP的“B”显示。
tracert看一下,路径也是走到了RT3。
将RT4和RT3的互联口DOWN掉,可以看到tracert路径马上就变过来了。
查看LSP信息,也是只有走RT2这一条了。
然后把RT4和RT3的互联口恢复,路径没有切回来,而且主路径一直没有显示出来。
也不是一直不显示,大概过了一分钟才显示的,
查看LDP发现过程相关的详细信息。
查看通过LDP学习到的FEC标签映射信息,可以看到去往44.1.1.0/24的两个FEC。
这次再快速DOWN掉RT4和RT3的互联口,过几秒再恢复,全程就没有丢包了。这么看来,Out Label后是否存在“B”,影响好像就不大了。
但是流量回切的时候还是要一分钟左右。
通过LFA算法选取备份下一跳信息
还有一种简单的配置方法,那就是通过LFA算法选取备份下一跳信息,不需要配置路由策略。RT4的以下配置:
#
ip prefix-list rt4 index 10 permit 11.1.1.0 24
#
route-policy rt4 permit node 10
if-match ip address prefix-list rt4
apply fast-reroute backup-nexthop 24.1.1.2
#
ospf 1 router-id 4.4.4.4
fast-reroute route-policy rt4
将简化成以下2行。
#
ospf 1 router-id 4.4.4.4
fast-reroute lfa
同理,RT1的配置也是一样。
测试效果一样,不再多展示了。查看OSPF区域中FRR备份下一跳候选列表。
哎,好像差别不大,目前来看,快速重路由应对不了流量回切、链路闪断和链路震荡等情况,实用性好像不大啊。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:shawn.lee@vecloud.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
标题:MPLS小实验:LDP快速重路由配置
TAG标签:MPLS
地址:http://www.kd010.com/hyzs/487.html