mpls l3vpn Option-B跨域实验(HCL)

介绍:

OPTION-B:单跳MP-EBGP方式,也叫EBGP再分配方式

OPTION B跨域也叫单跳MP-EBGP跨域ASBR不需要为每个VPN创建VPN实例,ASBR和AS内的IBGP会话学习到PE上的VPNV4路由,再通过EBGP会话将这些路由发布到其他AS的ASBR。

不再像OptionA那样,不需要为每个VPN创建VPN实例,ASBR之间转发时带标签的,报文在ASBR之间交换了私网标签,标签由MP-BGP产生和传递,不需要配置LDP协议。

 

跨域VPN-OptionB方案中,ASBR接收本域内和域外传过来的所有跨域VPN-IPv4路由,再把VPN-IPv4路由发布出去。

但MPLS VPN的基本实现中,PE上只保存与本地VPN实例的VPN Target相匹配的VPN路由。通过对标签VPN-IPv4路由进行特殊处理,让ASBR不进行VPN Target匹配把收到的VPN路由全部保存下来,而不管本地是否有和它匹配的VPN实例。

这种方案的优点是所有的流量都经过ASBR转发,使流量具有良好的可控性,但ASBR的负担重。

可以同时使用BGP路由策略(如对VPN Target的过滤),使ASBR上只保存部分VPN-IPv4路由。

在Option B方案中,ASBR之间需要启用MPLS,以支持标签交换、传播VPN路由信息、实现流量工程和保证服务质量。MPLS提供了必要的机制,使得跨自治系统的VPN连接能够可靠、高效地进行数据传输。

实验环境:HCL

实验内容:MP-BGP MPLS L3VPN 跨域Option-B(带RR)实验

实验拓扑:

e975c81ef72541dfa99ae1f822858167.png

实验目的:通过MPLS L3VPN 跨域Option-B方案来实现PC之间的通信

实验步骤:

在实验开始前,我们先对拓扑进行简单分析,本次实验为MP-BGP L3VPN Option-B,MPLS作为数据平面指导数据转发,BGP作为控制平面负责路由计算。本次实验通过增加RR(路由反射器)设备来进行路由的集中转发。路由反射器通过减少IBGP对等体之间的直接连接、简化路由器配置和优化路由信息传播,从而提高了BGP网络的扩展性和管理效率。

数据的转发方式:CE设备通过BGP将路由传递给RR设备,再由RR设备将路由反射给ASBR设备。再由ASBR设备进行BGP标签重分配后,通过EBGP再传递给对端的ASBR设备,最后在通过RR反射给目标CE设备实现路由的转发。

步骤一:在CE设备,ASBR设备上创建VRF并绑定到相应的接口上
AR1(CE),AR6(CE)

ip vpn-instance h3c_1    //创建名为h3c_1的VRF
 route-distinguisher 100:1    //RD配置为100:1
 vpn-target 100:1 import-extcommunity    //RT入方向标签为100:1
 vpn-target 100:1 export-extcommunity    //RT出方向标签为100:1
 
ip vpn-instance h3c_2
 route-distinguisher 100:2
 vpn-target 100:2 import-extcommunity
 vpn-target 100:2 export-extcommunity
AR1:
interface GigabitEthernet0/1
 ip binding vpn-instance h3c_1
 
interface GigabitEthernet0/2
 ip binding vpn-instance h3c_2
AR6:
interface GigabitEthernet0/1
 ip binding vpn-instance h3c_1
 
interface GigabitEthernet0/2
 ip binding vpn-instance h3c_2

 步骤二:为设备添加IP地址、环回地址

AR1:
interface LoopBack0
 ip address 1.1.1.1 255.255.255.255
 #
interface GigabitEthernet0/0
 ip address 10.0.0.1 255.255.255.252
 #
interface GigabitEthernet0/1
 ip address 192.168.1.254 255.255.255.0
 #
interface GigabitEthernet0/2
 ip address 192.168.2.254 255.255.255.0
AR2:
interface LoopBack0
 ip address 1.1.1.2 255.255.255.255
 #
interface GigabitEthernet0/0
 ip address 10.0.0.2 255.255.255.252
 #
interface GigabitEthernet0/1
 ip address 10.0.0.5 255.255.255.252
AR3:
interface LoopBack0
 ip address 1.1.1.3 255.255.255.255
#
interface GigabitEthernet0/1
 ip address 10.1.0.1 255.255.255.252
#
interface GigabitEthernet0/2
 ip address 10.0.0.22 255.255.255.252
AR4:
interface LoopBack0
 ip address 1.1.1.4 255.255.255.255
#
interface GigabitEthernet0/0
 ip address 10.1.0.2 255.255.255.252
#
interface GigabitEthernet0/1
 ip address 10.0.0.9 255.255.255.252
#
interface GigabitEthernet0/2
 ip address 10.0.0.17 255.255.255.252
AR5:
interface LoopBack0
 ip address 1.1.1.5 255.255.255.255
#
interface GigabitEthernet0/0
 ip address 10.0.0.10 255.255.255.252
#
interface GigabitEthernet0/1
 ip address 10.0.0.13 255.255.255.252
AR6:
interface LoopBack0
 ip address 1.1.1.6 255.255.255.255
 #
interface GigabitEthernet0/0
 ip address 10.0.0.14 255.255.255.252
 #
interface GigabitEthernet0/1
 ip address 192.168.3.254 255.255.255.0
 #
interface GigabitEthernet0/2
 ip address 192.168.4.254 255.255.255.0
AR7:
interface LoopBack0
 ip address 1.1.1.7 255.255.255.255
#
interface GigabitEthernet0/0
 ip address 10.0.0.18 255.255.255.252
AR8:
interface LoopBack0
 ip address 1.1.1.8 255.255.255.255
#
interface GigabitEthernet0/0
 ip address 10.0.0.21 255.255.255.252

步骤三:配置区域内OSPF

AR1:
ospf 1 router-id 1.1.1.1
 area 0.0.0.0
  network 1.1.1.1 0.0.0.0
  network 10.0.0.0 0.0.0.3
 #
interface GigabitEthernet0/0
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
AR2:
ospf 1 router-id 1.1.1.2
 area 0.0.0.0
  network 1.1.1.2 0.0.0.0
  network 10.0.0.0 0.0.0.3
  network 10.0.0.4 0.0.0.3
 #
interface GigabitEthernet0/0
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
 #
interface GigabitEthernet0/1
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
AR3:
ospf 1 router-id 1.1.1.3
 area 0.0.0.0
  network 1.1.1.3 0.0.0.0
  network 10.0.0.4 0.0.0.3
  network 10.0.0.20 0.0.0.3
# 
interface GigabitEthernet0/0
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
#
interface GigabitEthernet0/2
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
AR4:
ospf 1 router-id 1.1.1.4
 area 0.0.0.0
  network 1.1.1.4 0.0.0.0
  network 10.0.0.8 0.0.0.3
  network 10.0.0.16 0.0.0.3
 #
interface GigabitEthernet0/1
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
 #
interface GigabitEthernet0/2
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
AR5:
ospf 1 router-id 1.1.1.5
 area 0.0.0.0
  network 1.1.1.5 0.0.0.0
  network 10.0.0.8 0.0.0.3
  network 10.0.0.12 0.0.0.3
 #
interface GigabitEthernet0/0
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
 #
interface GigabitEthernet0/1
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
AR6:
ospf 1 router-id 1.1.1.6
 area 0.0.0.0
  network 1.1.1.6 0.0.0.0
  network 10.0.0.12 0.0.0.3
 #
interface GigabitEthernet0/0
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
AR7:
ospf 1 router-id 1.1.1.7
 area 0.0.0.0
  network 1.1.1.7 0.0.0.0
  network 10.0.0.16 0.0.0.3
#
interface GigabitEthernet0/0
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛
AR8:
ospf 1 router-id 1.1.1.8
 area 0.0.0.0
  network 1.1.1.8 0.0.0.0
  network 10.0.0.20 0.0.0.3
#
interface GigabitEthernet0/0
 ospf network-type p2p    //修改OSPF的网络类型为P2P加快收敛

查看OSPF邻居建立状态

535bcc00c30d4c4e90f4198419bcbd48.png

1b9c2a1ee48a4758967c9c9a33411c02.png ad3ab221365049d7ac5c1f86b0260fa6.png

1ab152115b5b41bebd24120f9a35220a.png 0ed62207b9e1481bba9537c6b0beba24.png

2afbb83bb67749259285b5089f305204.png 5705db09c6e74953aafcd62bb2ee6adc.png

fc7193911b194d5097d616a5a0cd5664.png

查看OSPF路由表

 4375d8bb0ab84aca8ed40367eb5dd5bf.png

 8335b4f40af149ce8bbabf06c6da9bc3.png

查看OSPF的网络类型

caefc1534b8b4a6189e57f9ce293bb84.png 可以看到图中,是通过p2p的方式来建立的邻居,除了修改ospf的网路类型,我么还能还可以通过bfd来优化我们的网络。

在OSPF中启用BFD可以带来以下几个主要效果:

快速故障检测:BFD 提供了比传统的 OSPF Hello 协议更快速的故障检测能力。传统的 OSPF 依赖于 Hello 和 Dead 间隔来检测邻居故障,这可能导致故障检测的时间较长。BFD 则可以在毫秒级别内检测到故障,从而缩短网络的故障恢复时间。

提高网络可靠性:通过快速检测链路故障并将其通知给 OSPF,BFD 可以更迅速地促使 OSPF 重新计算路由,从而减少由于链路故障导致的数据包丢失或延迟。

优化路由收敛时间:当 BFD 发现链路失效时,会迅速告知 OSPF,促使 OSPF 尽快进行路由收敛。这种快速收敛有助于提升网络的整体性能和稳定性。

减少协议交互:启用 BFD 后,可以减少 OSPF 协议的交互,因为 BFD 会在链路状态变化时立即通知 OSPF,而不需要 OSPF 协议自身频繁地检查邻居状态。
配置简单:

BFD 的配置相对简单,只需要在相关的接口和 OSPF 邻居上进行配置即可,不需要复杂的操作。

 步骤四:打开部分设备全局以及互联接口的MPLS、LDP功能

(注:ASBR设备之间需要开启MPLS功能,但不需要开启LDP功能。其作用是用于ASBR对vpn路由进行标签重分配) 

AR1:
mpls lsr-id 1.1.1.1    //配置lsr-id为1.1.1.1作为LSR(标签交换路由器)的标识符
mpls ldp    //打开路由器的ldp功能
 
interface GigabitEthernet0/0
 mpls enable    //打开接口的mpls功能
 mpls ldp enable    //打开接口的ldp功能
AR2:
mpls lsr-id 1.1.1.2    //配置lsr-id为1.1.1.2作为LSR(标签交换路由器)的标识符
mpls ldp    //打开路由器的ldp功能
 #
interface GigabitEthernet0/0
 mpls enable
 mpls ldp enable
 #
interface GigabitEthernet0/1
 mpls enable
 mpls ldp enable
AR3:
mpls lsr-id 1.1.1.3    //配置lsr-id为1.1.1.3作为LSR(标签交换路由器)的标识符
mpls ldp    //打开路由器的ldp功能
 #
interface GigabitEthernet0/0
 mpls enable    //打开接口的mpls功能
 mpls ldp enable    //打开接口的ldp功能
#
interface GigabitEthernet0/1
 mpls enable    //打开接口的mpls功能
AR4:
mpls lsr-id 1.1.1.4    //配置lsr-id为1.1.1.4作为LSR(标签交换路由器)的标识符
mpls ldp    //打开路由器的ldp功能
 #
interface GigabitEthernet0/0
 mpls enable    //打开接口的mpls功能
#
interface GigabitEthernet0/1
 mpls enable    //打开接口的mpls功能
 mpls ldp enable    //打开接口的ldp功能
AR5:
mpls lsr-id 1.1.1.5    //配置lsr-id为1.1.1.5作为LSR(标签交换路由器)的标识符
mpls ldp    //打开路由器的ldp功能
 #
interface GigabitEthernet0/0
 mpls enable
 mpls ldp enable
 #
interface GigabitEthernet0/1
 mpls enable
 mpls ldp enable
AR6:
mpls lsr-id 1.1.1.6    //配置lsr-id为1.1.1.6作为LSR(标签交换路由器)的标识符
mpls ldp    //打开路由器的ldp功能
 #
interface GigabitEthernet0/1
 mpls enable    //打开接口的mpls功能
 mpls ldp enable    //打开接口的ldp功能

注:AR7与AR8作为RR只需要关注VPN路由的接收与传递,并不需要开启mpls功能,但是需要在Vpnv4视图取消对接收的VPN路由或者标签块进行VPN-Target过滤。稍后在BGP的配置中会介绍到这条命令。     

查看MPLS转发表

eaf301379e204e2eab98f8696c7f669a.png

fb6f3a10b3b544dca89c49d247434ffa.png

768653940edf41fd8da85deae559f053.png b928f78831d4459d8a10d1690f7dc7fb.png

6600fa2343d04bf1a93f39e79cb7359d.png db566c0f95be4e8aa7458ebd9605ccf1.png

从lsp转发表中可以看到,数据都没有问题 

步骤五:配置域内IBGP,将CE的路由传递给ASBR

注:本实验加入2台路由器作为两区域的RR(路由反射器),所以CE设备和ASBR设备只需要和RR(路由反射器)建立IBGP邻居即可。

AR1:
bgp 65001
 router-id 1.1.1.1    //配置routerid为1.1.1.1
 peer 1.1.1.8 as-number 65001    //配置邻居所在的区域为65001
 peer 1.1.1.8 connect-interface LoopBack0    //配置与邻居建立的路由为环回地址
 #
 address-family vpnv4    //进入vpnv4地址族视图
  peer 1.1.1.8 enable    //开启邻居
 #
 ip vpn-instance h3c_1    //进入vpn视图
  #
  address-family ipv4 unicast    //进入ipv4地址族视图
   import-route direct    //引入VRF路由
 #
 ip vpn-instance h3c_2
  #
  address-family ipv4 unicast
   import-route direct    //引入VRF路由
AR3:
bgp 65001
 router-id 1.1.1.3    //配置routerid为1.1.1.3
 peer 1.1.1.8 as-number 65001    //配置邻居所在的区域为65001
 peer 1.1.1.8 connect-interface LoopBack0    //配置与邻居建立的路由为环回地址
 #
 address-family vpnv4    //进入vpnv4地址族视图
  peer 1.1.1.8 enable    //开启邻居
AR8:
bgp 65001
 peer 1.1.1.1 as-number 65001
 peer 1.1.1.1 connect-interface LoopBack0
 peer 1.1.1.3 as-number 65001
 peer 1.1.1.3 connect-interface LoopBack0
 #
 address-family vpnv4
  undo policy vpn-target    //取消VPN 目标策略配置
  peer 1.1.1.1 enable
  peer 1.1.1.1 reflect-client    //配置邻居为路由反射器的客户端
  peer 1.1.1.3 enable
  peer 1.1.1.3 reflect-client
AR4:
bgp 65002
 router-id 1.1.1.4    //配置routerid为1.1.1.4
 peer 1.1.1.7 as-number 65002    //配置邻居所在的区域为65001
 peer 1.1.1.7 connect-interface LoopBack0    //配置与邻居建立的路由为环回地址
 #
 address-family vpnv4    //进入vpnv4地址族视图
  peer 1.1.1.7 enable    //开启邻居
AR6:
bgp 65002
 router-id 1.1.1.6    //配置routerid为1.1.1.6
 peer 1.1.1.7 as-number 65002    //配置邻居所在的区域为65002
 peer 1.1.1.7 connect-interface LoopBack0    //配置与邻居建立的路由为环回地址
 #
 address-family vpnv4    //进入vpnv4地址族视图
  peer 1.1.1.7 enable    //开启邻居
 #
 ip vpn-instance h3c_1    //进入vpn视图
  #
  address-family ipv4 unicast    //进入ipv4地址族视图
   import-route direct    //引入VRF路由
 #
 ip vpn-instance h3c_2
  #
  address-family ipv4 unicast
   import-route direct    //引入VRF路由
AR7:
bgp 65002
 peer 1.1.1.4 as-number 65002
 peer 1.1.1.4 connect-interface LoopBack0
 peer 1.1.1.6 as-number 65002
 peer 1.1.1.6 connect-interface LoopBack0
 #
 address-family vpnv4
  undo policy vpn-target
  peer 1.1.1.4 enable
  peer 1.1.1.4 reflect-client
  peer 1.1.1.6 enable
  peer 1.1.1.6 reflect-client

接着我们在RR上查看BGP邻居建立状态

10d7d00a16da48aa828883744be08865.png

e3f4fa1e773646aab7cb5aa57e8ca9a7.png

可以看到邻居已经建立成功了, 并且从各自的CE设备上学习到了2条路由

查看BGP的VPN路由表

1be4b814fc7e41b38a746a8fe8f6c069.png

02b148ec288c48a8b837468104fca762.png 从图中可以看出,学习到的IBGP路由是有效并且可达的

都到这这一步我们先不急着打通ASBR,我们先在ASBR上查看一下CE为VPN路由分配的标签是多少

c647713f81be4efebb892a29f06c45f6.png1b43a7c5f2c54840a5489a907d23189d.png

 ef8c9f46f27e44f98de525e1f7e05bfc.png

 fd01d6cc7ff047b6bc9886ca87df4333.png

可以看到为两条VPN路由分配的内层标签(私网标签)分别是24127和24128、24255和24256,等下ASBR打通后为我们再重新在AR3、AR4上查看标签从对方传递过来的标签。

步骤六:配置域间EBGP,将路由传递到对端

AR3:
bgp 65001
 peer 10.1.0.2 as-number 65002
 #
 address-family vpnv4
  peer 10.1.0.2 enable
AR4:
bgp 65002
 peer 10.1.0.1 as-number 65001
 #
 address-family vpnv4
  peer 10.1.0.1 enable

查看邻居建立状态

c756d79c546c4a46bd055fe0339dadfa.png

fa8db1b39f4b49ab91def7613522d31f.png

查看从对等体学到的路由

45e8143ad70e4b66b9eda1f5dbc48a1a.pnge0c90c0834b5423f8a5d663cb92ce4a6.png

从图中可以看到,分别从对等体学习到了两条路由,路由可达并且有效的

 实验做到这个地方已经差不多了,我们最后再来看一下ASBR分别为路由分配的标签是否有变化

查看从EBGP邻居分配的路由所携带的标签

f13fe8b005064c02aa9b48192b4ead21.png6fe254571c914105a7026bfe310a9aea.png

d2f2844ea8f1483c900664e465a476fc.png 61854a1278e647a18fed9c5a3bd575a7.png

可以看到标签发生了变化,那么对于双方CE来说,本端ASBR从对端ASBR学习到的路由任然会通过标签重分配的方式将路由传递给对方,这里就不再做演示,各位可自行查看。

步骤七:验证连通性 

PC7-PC9

d4517f9439634c1bb1a00c897aaceaca.png

 PC8-PC10

bf0acff0c0c944de87a08f6f7487a83d.png

实验下载: 【免费】MP-BGPL3VPNOption-B跨域实验资源-CSDN文库

 网络可达,本次实验就到这里了,如果有发现小编哪块有错误的话欢迎指正,谢谢 

 

  • 9
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

leo·Thomas

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值