MPLS VPN跨域 Option C2(二)

简介: MPLS VPN跨域 Option C2

R6配置

ip vpn-instance vpn1
 ipv4-family
  route-distinguisher 6:6
  vpn-target 6:1 export-extcommunity
  vpn-target 1:6 import-extcommunity
#
mpls lsr-id 6.6.6.6
mpls                                     
#
mpls ldp
#
isis 1
 is-level level-2
 cost-style wide
 network-entity 50.0000.0000.0006.00
interface GigabitEthernet0/0/0
 ip address 56.1.1.6 255.255.255.0
 isis enable 1                           
 mpls
 mpls ldp
#
interface GigabitEthernet0/0/1
 ip binding vpn-instance vpn1
 ip address 68.1.1.6 255.255.255.0
 ospf enable 1 area 0.0.0.0
#
interface NULL0
#
interface LoopBack0
 ip address 6.6.6.6 255.255.255.255
 isis enable 1
#
bgp 200
 peer 1.1.1.1 as-number 100
 peer 1.1.1.1 ebgp-max-hop 255
 peer 1.1.1.1 connect-interface LoopBack0
 peer 4.4.4.4 as-number 200
 peer 4.4.4.4 connect-interface LoopBack0
 #
 ipv4-family unicast                     
  undo synchronization
  peer 1.1.1.1 enable
  peer 4.4.4.4 enable
  peer 4.4.4.4 label-route-capability
 #
 ipv4-family vpnv4
  policy vpn-target
  peer 1.1.1.1 enable
 #
 ipv4-family vpn-instance vpn1
  import-route ospf 1
#
ospf 1 vpn-instance vpn1
 import-route bgp
 area 0.0.0.0

R7配置

interface GigabitEthernet0/0/0
 ip address 17.1.1.7 255.255.255.0
 ospf enable 1 area 0.0.0.0
#
interface GigabitEthernet0/0/1
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
interface LoopBack0
 ip address 7.7.7.7 255.255.255.255
 ospf enable 1 area 0.0.0.0
#
ospf 1
 area 0.0.0.0

R8配置

interface GigabitEthernet0/0/0
 ip address 68.1.1.8 255.255.255.0
 ospf enable 1 area 0.0.0.0
#
interface GigabitEthernet0/0/1
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
interface LoopBack0
 ip address 8.8.8.8 255.255.255.255
 ospf enable 1 area 0.0.0.0
#
interface LoopBack9
#
ospf 1
 area 0.0.0.0
  1. 查看现象

此处会封装三层标签,分别是内层标签,以及R3分配的二层标签与LDP标签

当数据包进入R3的端口时,LDP标签会被次末跳弹出,中间层标签会执行swap动作换为R4分配的标签,内层标签保持不变,此时会有两层标签携带

此时数据包会依靠R4分配的标签进行跨域,跨域后会把策略标签弹出,封装LDP标签依靠隧道去找R6,此时会有两层标签,分别是LDP标签和内层标签,在R4的出口上面进行抓包

因为内层标签是R6分配的,所以访问目的地在R6的实例上面,迭代到去往6.6.6.6的隧道里面,封装标签为1024

  1. 配置细节
  2. R1与R6建立MP-BGP邻居(此时肯定建立不会成功,EBGP跨跳功能打开)
  3. R3与R4建立EBGP邻居,R3宣告1.1.1.1,R4宣告6.6.6.6
  4. 此时R3与R1建立IBGP邻居,R4与R6建立IBGP邻居,这样R1学习到了6.6.6.6,R6学习到了1.1.1.1(但是下一跳不可达)
  5. AS 100与AS 200内部分别开启LDP协议用于分配标签
  6. R3与R4之间开启MPLS功能,用于传递策略标签
  7. R3配置策略抓取1.1.1.1的路由向R4传递时携带标签
  8. 配置发送与接收标签的能力
  9. R4配置向R6传递路由时携带标签并进行swap动作(以及发送与接收标签能力)
  10. 相反,R4配置向R3传递路由时携带策略标签,R3向R1传递路由时携带标签
  11. 控制平面
  12. R6把内层标签传递给R1设备,R1发送数据包时会封装这个内层标签
  13. R4把策略标签附加到IPV4路由中,形成一个带标签的IPV4路由传递给R3设备,让它可以进行跨域
  14. R3swap一个策略标签附加到IPV4路由中,形成一个带标签的IPV4路由传递给R1设备,因为标签变了,下一跳一定会变,R3还会产生一个LDP标签。
  15. 此时R1如果向外发送数据会封装3个数据包。
  16. 转发平面
  17. 此时R7封装数据包向R8发送,数据包首先进入R1设备并封装最内层标签1027(用于数据包到R6时,R6决定去往哪一个VRF)
  18. R1设备会查看FIB去往R8的下一跳是谁,是否要走隧道
  19. 这时候,我们先封装上路由携带的标签1027,再去查看隧道的详情
  20. 查看之后隧道ID不为0,下一跳是3.3.3.3,所以我们要去看发往3.3.3.3设备的标签封装信息

    此时因为要去3.3.3.3所以需要封装外层标签1025进行传递
  21. 数据包这时来到了R2设备,查看MPLS信息,发现来自1025的标签要次末跳弹出换位3号标签发出
  22. 此时因为要发送给R3的时候已经把最外层标签弹出,所以只剩了两层标签分别是策略标签和内层标签
  23. 数据包来到了R3查看MPLS标签,发现来自于1027的BGP标签要swap为1024再进行转发(这就是中间层标签,手动让BGP路由产生的)

  24. 数据包下一步按照MPLS标签传递给了R4,R4是最后一台产生BGP标签的设备,所以需要进行弹出,另外要去6.6.6.6还需要LDP标签的支持,所以需要再封装LDP标签1024,然后向外发送数据包给R5
  25. R5根据MPLS标签表发现来自1024的标签要发给R6时进行次末跳弹出操作这个时候仅仅还剩最后一层标签1027交给R6设备

10.R6根据内层标签决定数据交给了哪个VRF,到此结束

目录
相关文章
|
4月前
|
网络协议 Shell 网络虚拟化
手把手教你玩MPLS VPN如何配置
手把手教你玩MPLS VPN如何配置
347 0
|
6月前
|
网络协议 网络虚拟化 网络架构
MPLS VPN协议高级应用
MPLS VPN协议高级应用
|
6月前
|
网络协议 网络虚拟化 虚拟化
|
6月前
|
网络协议 网络虚拟化
MPLS VPN跨域方案(一)
MPLS VPN跨域方案(一)
|
7月前
|
网络虚拟化
配置BGP/MPLS IP VPN示例
配置BGP/MPLS IP VPN示例
|
网络虚拟化
MPLS VPN跨域C2 RR反射器方案(二)
MPLS VPN跨域C2 RR反射器方案
147 0
|
网络虚拟化
MPLS VPN跨域C2 RR反射器方案(一)
MPLS VPN跨域C2 RR反射器方案
167 0
|
网络虚拟化
MPLS VPN跨域C1方案 RR反射器(二)
MPLS VPN跨域C1方案 RR反射器
90 0
|
存储 网络协议 网络虚拟化
【HCIE】09.MPLS VPN跨域C
【HCIE】09.MPLS VPN跨域C
101 0
|
7月前
|
网络协议 PHP 网络虚拟化
BGP MPLS VPN(OPTION C)实验笔记
BGP MPLS VPN(OPTION C)实验笔记
197 1