MPLS,VPN学习笔记

来源:日本留学 发布时间:2021-04-12 点击:

 配置 MPLS_VPN 方法:

 说明:MP-BGP 是配置 MPLS-VPN 的必须协议,在开始配置 MPLS_VPN 之前,应该先将 MPLS区域的相关接 配置 MPLS_VPN 时,需要在边缘路由器 R1 和 R3 之间使用 MP-BGP 协议,我们使用路由器的loopback 口作为源地址来建立邻居,首先测试双方 loopback 口已经实现标签交换。, 口实现标签交换,如各自的直连口,loopback 口均可看见已经通过标签进行交换;

 1, , R1, ,R2 和 和 R3 配置 OSPF 协议 (为配置 MPLS 区域的连通性基本前提)

 在 R1,R2 和 R3:

 Router ospf 1 Router-id x.x.x.x Network x.x.x.x 0.0.0.0 area 0 Network y.y.y.y 0.0.0.0 area 0 在相应的接口下配置:ip ospf network point-to-point 2, , 配置 MPLS 区域:

  在 R1,R2 和 R3:

 Mpls label protocol ldp

 在相应的接口下配置:mpls ip

 (r1#sh mpls ldp discovery detail// 查看Router-ID 和Transport IP地址

  说明:要解决邻居建立问题,就要让双方的Transport IP能够相通,而Transport IP就是选用Rotuer-ID的IP地址,可以修改Rotuer-ID为可路由的接口,即可解决Transport IP互通。

  改R1Router-Id为S1/1接口地址

 r1(config)#mpls ldp router-id serial 1/1 force force说明立即生效 说明:可以看到Rotuer-ID已经改成接口S1/1的地址12.1.1.1,Transport IP也随即变成了12.1.1.1。

 ) 3, , 配置普通 BGP: 说明:在R1和R3之间配置普通BGP,因为在配置MP-BGP之前,需要保证正常的BGP邻居是正常连通的. R1(config)#router bgp 100 R1(config-router)#neighbor 3.3.3.3 remote-as 100

 R1(config-router)#neighbor 3.3.3.3 update-source loopback 0 R3(config)#router bgp 100 R3(config-router)#neighbor 1.1.1.1 remote-as 100 R3(config-router)#neighbor 1.1.1.1 update-source loopback 0 R3# show ip bgp summary

  // 可以看到R3与R1已建立正常的BGP邻居关系。

 4, , 在 在PE 上创建VRF 和RD 值: 说明:在PE上为用户创建相应的VRF,并且指定RD值,需要通信的两个用户网络之间,VRF和RD值保持一致。

 R1(config)#ip vrf zqx1 R1(config-vrf)#rd 100:1

 R3(config)#ip vrf zqx1 R3(config-vrf)#rd 100:1

 5, , 在 在PE 上将连CE 的接口划入VRF: 说明:在PE上将相应的CE接口划入相应的VRF,以后从该接口进入的用户数据包,则属于相应的VRF,该用户的数据只能根据该VRF路由表作出转发决策。

 R1(config)#interface s1/1 R1(config-if)#ip vrf forwarding zqx1 % Interface Serial1/1 IP address 14.1.1.1 removed due to enabling VRF zqx1 R1(config-if)#ip add 14.1.1.1 255.255.255.0

 说明:当一个正常的接口被划入VRF之后,接口上的地址会消失,所以需要重新配置一次该接口的IP地址。

 R3(config)#interface s1/0 R3(config-if)#ip vrf forwarding zqx1 % Interface Serial1/0 IP address 36.1.1.3 removed due to enabling VRF zqx1 R3(config-if)#ip add 36.1.1.3 255.255.255.0

 在PE上查看VRF的路由表情况:

  说明:从用户发到PE的数据包,PE只能根据该用户的VRF路由表作出转发决策,也就是说,如果两个要通信的用户网络,如果各自的内网路由没有出现在PE的VRF路由表里,那么他们将不能通信,

 (1 )

 在R1上查看VRF vpn1的路由表: r1#sh ip route vrf zqx1

 14.0.0.0/24 is subnetted, 1 subnets

 C 14.1.1.0 is directly connected, Serial1/1

 说明:可以看见,PE在将连CE R4的接口s1/1划入VRF zqx1之后,该接口就进入VRF zqx1的路由表。并且要说明的是,该接口就不会再出现在全局路由表里。

 (2)

 查看PE R1的全局路由表,已经不会再有连CE接口s1/1的路由了:

 r1#sh ip route

 Gateway of last resort is not set

 1.0.0.0/32 is subnetted, 1 subnets

 C

 1.1.1.1 is directly connected, Loopback0

 2.0.0.0/32 is subnetted, 1 subnets

 O

 2.2.2.2 [110/65] via 12.1.1.2, 00:14:25, Serial1/0

 3.0.0.0/32 is subnetted, 1 subnets

 O

 3.3.3.3 [110/129] via 12.1.1.2, 00:14:25, Serial1/0

 23.0.0.0/24 is subnetted, 1 subnets

 O

 23.1.1.0 [110/128] via 12.1.1.2, 00:14:25, Serial1/0

 12.0.0.0/24 is subnetted, 1 subnets

 C

 12.1.1.0 is directly connected, Serial1/0

 r1# 6, 创建MP-BGP:

 说明:通过上面在PE上查看VRF路由表发现,VRF路由表中并没有双方用户的路由,所以,必须创建MP-BGP,来为双方用户网络传递路由信息。

 (1) 在PE R1上创建MP-BGP: R1(config)#router bgp 100 R1(config-router)#address-family vpnv4 R1(config-router-af)#neighbor 3.3.3.3 activate R1(config-router-af)#neighbor 3.3.3.3 send-community both

 说明:因为要传递vpnv4的路由,所以创建的address-family为vpnv4,并且将正常的BGP邻居在vpnv4里面激活,而且还需要将这些BGP的扩展属性手工强行发给对端,否则对方收到的路由信息不会携带扩展属性,也就无法正常区分用户的路由信息。

 (2) 在PE R3上创建MP-BGP: R3(config)#router bgp 100 R3(config-router)#address-family vpnv4 R3(config-router-af)#neighbor 1.1.1.1 activate R3(config-router-af)#neighbor 1.1.1.1 send-community both (3) 查看MP-BGP邻居:

 R1#show ip bgp all summary For address family: IPv4 Unicast

 BGP router identifier 1.1.1.1, local AS

 BGP table version is 1, main routing table version 1

  Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

 3.3.3.3 4 100 23 23 1 0 0 00:03:18 0

  For address family: VPNv4 Unicast

 BGP router identifier 1.1.1.1, local AS number 100

 BGP table version is 1, main routing table version 1

  Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

 3.3.3.3 4 100 23 23 1 0 0 00:03:18 0

 r1#

 说明:可以看到,R1上已经和R3建立普通BGP邻居关系,同时也建立MP-BGP邻居关系。

 7, 查看 MP- - GBP 的 VRF 路由

 R1#show ip bgp vpnv4 all

 R1#

 说明:在PE上只是已经创建了MP-BGP,并没有为BGP创建VRF,所以无法看到BGP中的VRF路由表信息,所以还需要手工创建VRF路由表。

 8, 为MP-BGP 创建VRF:

 说明:MP-BGP在收到用户的路由信息后,必须将其放入相应的VRF路由表,但是这个VRF表是要手工创建的,并且和该用户相关联的VRF名字保持一致。

 (1) 在R1上为MP-BGP创建VRF zqx1: R1(config)#router bgp 100 R1(config-router)#address-family ipv4 vrf zqx1 (2) 在R3上为MP-BGP创建VRF zqx1: R3(config)#router bgp 100 R3config-router)#address-family ipv4 vrf zqx1 (3) 查看已创建的VRF路由表的路由条目:

 R1#show ip bgp vpnv4 all

 R1# R1#show ip bgp vpnv4 vrf zqx1

 R1#

 说明:可以看到,BGP VRF路由表中并没有用户的路由信息。

 9, 配置RT 控制VRF 路由信息:

 说明:因为MP-BGP的VRF路由表能让什么样的路由进入,是靠RT来控制的,所以要想让用户的路由被MP-BGP传递,就必须为VRF配置相应的RT,只有RT允许的RD路由,才能进入和出去VRF表。

 (1)

 在R1上为VRF配置相应的RT:

 R1(config)#ip vrf zqx1 R1(config-vrf)#route-target both 100:1

  说明:VRF zqx1允许RD为100:1的路由进入和出去。

 (2)

 在R3上为VRF配置相应的RT:

 R1(config)#ip vrf zqx1 R1(config-vrf)#route-target both 100:1

  10. 配置PE-CE 的路由协议

  说明:虽然MP-BGP的VRF已经允许相应的用户路由进入,但是在PE上,此时并不能获知用户的路由信息,所以MP-BGP的VRF路由表中,依然为空,要想让MP-BGP的VRF路由表能够导入相应的用户路由,那就必须和用户CE之前启用路由协议,以获得对方的路由信息,从而导入MP-BGP的VRF表。

  11. 在PE 上查看VRF 路由

  说明:已经在PE和CE配置路由协议,所以PE上应该已经获得用户的内部路由信息。

 (1) 在R1上查看是否得到CE R4的内部路由信息10.1.1.0/24:

 r1#sh ip route vrf zqx1

 Gateway of last resort is not set

  10.0.0.0/24 is subnetted, 1 subnets

 R

 10.1.1.0 [120/1] via 14.1.1.4, 00:00:27, Serial1/1

 14.0.0.0/24 is subnetted, 1 subnets

 C

 14.1.1.0 is directly connected, Serial1/1

 r1#

 说明:PE R1已经成功通过路由协议RIP获得用户的内部路由信息。

  (2) 查看MP-BGP的VRF路由表中是否已将用户的内部路由信息导入:

 r1#sh ip bgp vpnv4 all

 r1#

 说明:MP-BGP的VRF路由表还没有得到用户的内部路由信息,因为PE和CE之间运行的是IGP协议,所以要想让IGP学到的路由进入MP-BGP的VRF路由表,必须手工重分布。

  12. 将路由重分布进MP-BGP

 说明:PE-CE之间在运行IGP时,无法自动导入MP-BGP,所以手工重分布。

 (1) 在R1上将RIP路由导入MP-BGP:

 r1(config)#router bgp 100

 r1(config-router)#address-family ipv4 vrf zqx1

 r1(config-router-af)#redistribute rip

  (2) 在R3上将OSPP路由导入MP-BGP: r3(config)#router bgp 100

 r3(config-router)#address-family ipv4 vrf zqx1

 r3(config-router-af)#redistribute ospf 100

  13. 查看MP-BGP 路由 说明:MP-BGP已经和IGP之间实现重分布,查看双方路由是否获得。

 r1#sh ip bgp vpnv4 all

 r3#sh ip bgp vpnv4 all

 说明:已经拥有双方用户网络的内部路由信息。

  14. 查看VRF 路由 说明:MP-BGP中已经拥有双方用户的网络信息,再看VRF中是否全部拥有。

 r1#show ip route vrf zqx1

 r3#show ip route vrf zqx1

 说明:PE R1上的VRF已经拥有双方用户的网络信息,再看VRF中是否全部拥有。

  15. 查看CE 路由 说明:因为PE上已经拥有双方用户的路由信息,并且PE和CE之间也运行路由协议,所以这些路由应该出现在CE的路由表中,从而双方用户可以实现通信。

 r4#sh ip route

  。。。。。。

 r6#sh ip route 。。。。。

 16. 测试用户 之间通信

  说明:因为用户CE之间已经拥有双方的内部路由信息,所以应该能够通信

 17.PE 到CE 的通信 说明:因为PE将连CE的接口放入VRF之后,该接口就从全局路由表中消失,所以和CE的通信,由VRF路由表决定。

 (1)测试ping: r1#ping 14.1.1.4

 不通

 说明:因为正常的ping是走的全局路由表,而全局路由表中没有到CE的接口,所以不通。

 (3)

 使用VRF路由表: r1#ping vrf zqx1 14.1.1.4

  !!!!!

 说明:通过指定到CE的数据走VRF路由表,所以最后通信成功。

推荐访问:学习笔记 MPLS VPN
上一篇:司法委托各类中介机构申报表
下一篇:在全区基层党组织书记抓基层党建工作述职评议会上主持词

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有