如图模拟R1在北京,R10在上海,要求二者之间用loopback口进行通信
由于公司机密性质,要求二者需要使用mpls vxn 虚拟专线的方式进行通信
本实验采取option c带RR的方式模拟通信
左边AS100,右边AS200,pe和ce之间用ospf进行通信
mpls option c的关键问题和情况分析大家可以点击链接:锐捷(十四)mpls vxn optionc的关键问题所在和具体问题分析
mpls vxn option c的基础配置(无RR):mpls vxn option c 的基础配置
基础配置:
域内用ospf和mpls ld形成lsp
控制平面:
pe1—RR1—RR2—pe2
转发平面;
首先pe配置vrf实例,rd值全局唯一,rt值导入等于导出
配置pe和ce之间的ospf邻居关系,注意pe要在vrf实例下进行ospf的邻居建立
配置pe和RR之间的mpbgp邻居关系,注意RR上没用vrf实例,所以需要关闭rt值过滤
配置asbr之间的普通bgp邻居关系,但是要为其赋予标签交换功能
配置RR1和RR2之间的MPBGP邻居关系,注意因为是ebgp,所以要修改为可跨越多跳,此邻居建立起来的基础是RR1和RR2之间能ping通
这里不再多说,as100和as200域内的所有接口宣告进ospf,然后通过mpls ldp形成lsp的标签转发隧道,建立完成后路由和标签转发表如下图所示,以AS100为例:
rd值全局唯一,rt值导入等于导出,注意:将实例绑定接口的时候会清空ip,需要重新配。
R3:
r3(config)#ip vrf vrlab1
r3(config-vrf)#rd 1:1
r3(config-vrf)#route-target both 100:1
r3(config-if-GigabitEthernet 0/0)#ip vrf forwarding vrlab1
r3(config-if-GigabitEthernet 0/0)#ip address 13.1.1.3 24
R9:
r3(config)#ip vrf vrlab2
r3(config-vrf)#rd 1:2
r3(config-vrf)#route-target both 100:1
r3(config-if-GigabitEthernet 0/0)#ip vrf forwarding vrlab2
r3(config-if-GigabitEthernet 0/0)#ip address 99.1.1.2 24
R3:
r3(config)#router ospf 1 vrf vralb1
r3(config-router)#network 3.3.3.3 0.0.0.0 area 0
r3(config-router)#network 32.1.1.3 0.0.0.0 area 0
R1:
r1(config)#router ospf 1
r1(config-router)#network 11.11.11.11 0.0.0.0 area 0
r1(config-router)#network 13.1.1.1 0.0.0.0 area 0
R9:
r9(config)#router ospf 1 vrf vralb2
r9(config-router)#network 9.9.9.9 0.0.0.0 area 0
r9(config-router)#network 99.1.1.2 0.0.0.0 area 0
R10:
r10(config)#router ospf 1
r10(config-router)#network 10.10.10.10 0.0.0.0 area 0
r10(config-router)#network 99.1.1.1 0.0.0.0 area 0
此时已经建立起pe和ce之间的ospf邻居关系:
可通过show bgp v4 unicast all命令查看ce路由是否传递到pe,以pe1和ce1为例
在v4地址族下建立,rr注意要取消rt值的过滤
R3:
r3(config)#router bgp 100
r3(config-router)#address-family v4
r3(config-router-af)#neighbor 4.4.4.4 remote-as 100
r3(config-router-af)#neighbor 4.4.4.4 update-source lo0
R4:
r4(config)#router bgp 100
r4(config-router)#address-family v4
r4(config-router-af)#neighbor 3.3.3.3 remote-as 100
r4(config-router-af)#neighbor 3.3.3.3 update-source lo0
r4(config-router-af)#no bgp default route-target filter
R9:
r9(config)#router bgp 200
r9(config-router)#address-family v4
r9(config-router-af)#neighbor 8.8.8.8 remote-as 100
r9(config-router-af)#neighbor 8.8.8.8 update-source lo0
R8:
r4(config)#router bgp 200
r4(config-router)#address-family v4
r4(config-router-af)#neighbor 9.9.9.9 remote-as 100
r4(config-router-af)#neighbor 9.9.9.9 update-source lo0
r4(config-router-af)#no bgp default route-target filter
注意 要为其赋予分配标签的功能,并且在asbr之间的接口上要开启lab标签转发功能,并且在bgp中将RRloopback口的地址分配出去
R5:
r5(config)#router bgp 100
r5(config-router)neighbor 56.1.1.6 remote-as 200
r5(config-router)neighbor 56.1.1.6 next-hop-self
r5(config-router)neighbor 56.1.1.6 send-label
r5(config-router)network 4.4.4.4 mask 255.255.255.255
R6
r6(config)#router bgp 100
r6(config-router)neighbor 56.1.1.5 remote-as 200
r6(config-router)neighbor 56.1.1.5 next-hop-self
r6(config-router)neighbor 56.1.1.5 send-label
r(config-router)network 8.8.8.8 mask 255.255.255.255
asbr之间的接口上开启lab转发标签的功能
R5:
r5(config)#int g0/1
r5(config-if-GigabitEthernet 0/1)#label-switching
R6:
r6(config)#int g0/1
r6(config-if-GigabitEthernet 0/1)#label-switching
此时查看R5bgp路由表:
发现8.8.8.8已经过来了
在ospf中引入bgp:
原因:8.8.8.8是通过bgp学过来的,但是RR和ASBR之间走的是ospf
r5(config)#router ospf 1
r5(config-router)#redistribute bgp subnets
r6(config)#router ospf 1
r6(config-router)#redistribute bgp subnets
此时查看R4路由表,发现8.8.8.8通过外部路由传递过来了
但是还是ping不通,原因很简单,我不再多说了,大家可以看我实验分析里面之前写的链接,8.8.8.8是通过bgp学过来的,mpld不会为bgp分配标签,所以我们需要以下操作:
R5:
r5(config)#mpls router ldp
r5(config-mpls-router)#advertise-labels for bgp-routes
R6:
r6(config)#mpls router ldp
r6(config-mpls-router)#advertise-labels for bgp-routes
此时RR1和RR2终于能ping通了
注意配置ebgp邻居的多跳传递
R4:
r4(config)#router bgp 100
r4(config-router)#address-family v4
r4(config-router-af)#neighbor 8.8.8.8 remote-as 200
r4(config-router-af)#neighbor 8.8.8.8 ebgp-multihop 255
r4(config-router-af)#neighbor 8.8.8.8 update-source Loopback 0
R8:
r4(config)#router bgp 200
r4(config-router)#address-family v4
r4(config-router-af)#neighbor 4.4.4.4 remote-as 100
r4(config-router-af)#neighbor 4.4.4.4 ebgp-multihop 255
r4(config-router-af)#neighbor 4.4.4.4 update-source Loopback 0
检查RR之间的邻居建立状态:
此时路由已传递完成:
ping通:
实验完成