华为 MPLS LDP MP-BGP

乾坤未定,你我皆是黑马。

温馨提示:因特殊原因,本人用“#”号代替N。

一、BGP/MPLS IP VP# 概述

BGP/MPLS IP VP#是一种L3VP#(Layer 3 Virtual Private Network)。它使用BGP(Border Gateway Protocol)在服务提供商骨干网上发布VP#路由,使用MPLS(Multiprotocol Label Switch)在服务提供商骨干网上转发VP#报文。这里的IP是指服务提供商骨干网络是IP网络。

1、BGP/MPLS IP VP#的基本模型由三部分组成:CE、PE和P。

(1)CE(Customer Edge):用户网络边缘设备,有接口直接与服务提供商SP(ServiceProvider)网络相连。CE可以是路由器或交换机,也可以是一台主机。通常情况下,CE“感知”不到VP#的存在,也不需要支持MPLS。
(2)PE(Provider Edge):是服务提供商网络的边缘设备,与CE直接相连。在MPLS网络中,对VP#的所有处理都发生在PE上,对PE性能要求较高。
(3)P(Provider):服务提供商网络中的骨干设备,不与CE直接相连。P设备只需要具备基本MPLS转发能力,不维护VP#信息。
PE和P设备仅由SP管理;CE设备仅由用户管理,除非用户把管理权委托给SP。
一台PE设备可以接入多台CE设备。一台CE设备也可以连接属于相同或不同服务提供商的多台PE设备。

2、目的

BGP与IGP不同,其着眼点不在于发现和计算路由,而在于控制路由的传播和选择最佳路由。VP#本身就是利用公共网络传递VP#数据,而公共网络通常已经应用IGP发现和计算自身的路由。构建VP#的关键在于控制VP#路由的传播,及如何在两个PE之间选择最佳的路由。

BGP使用TCP作为其传输层协议(端口号179),提高了协议的可靠性。可以利用这一点来进行跨路由器的两个PE设备之间交换VP#路由。

BGP可以承载附加在路由后的任何信息,作为可选的BGP属性,任何不了解这些属性的BGP设备都将透明的转发它们。这为在PE间传播VP#路由提供了便利。路由更新时,BGP只发送更新的路由,减少了传播路由所占用的带宽,提供了在公共网络上传播大量的VP#路由的可能。

BGP是一种外部网关协议(EGP),因此实现跨运营商的VP#更加容易。

二、拓扑

在这里插入图片描述

三、基础配置

1、各设备环回口0宣告进IGP协议并且作为LSR-ID

[AR-1]mpls lsr-id 1.1.1.1
[AR-1]mpls
[AR-1-mpls]quit
[AR-1]mpls ldp

2、IGP

(1)OSPF: AR-1—AR-2—AR-3----AR-4
(2)IS-IS:AR-3—AR-5—AR-6

3、BGP

AR-1与AR-6建立IBGP邻居(AS 100)

[AR-1]bgp 100
[AR-1-bgp]router-id 1.1.1.1
[AR-1-bgp]peer 6.6.6.6 as-number 100 
[AR-1-bgp]peer 6.6.6.6 connect-interface LoopBack0

4、IGP协议进行路由引入实现IGP网络全网互通

[AR-1]ping 56.1.1.6
在这里插入图片描述

5、AR-1配置静态路由

ip route-static 100.100.100.100 32 12.1.1.1

dis ip routing-table
在这里插入图片描述
抓包AR3接口下G0/0/0
在这里插入图片描述

四、观察与总结

1、查看AR-1的MPLS LSP信息,是否存在真的100.100.100.100/32的标签,如果不存在原因是什么?

[AR-1]dis mpls lsp
在这里插入图片描述
由以上输出结果可知,不存在真的100.100.100.100/32的标签。

LDP协议只为IGP路由分发标签
华为LDP默认只为32位主机路由分发标签

如果在AR2上配置100.100.100.100的IP地址;在其他设备上不行,因为得要是IGP路由才行。

[AR-2]int l100
[AR-2-LoopBack100]ip address 100.100.100.100 32

[AR-2]dis mpls lsp
在这里插入图片描述
[AR-1]dis mpls lsp
在这里插入图片描述
会为自己的直连路由分发表标签,并且分发的标签都是3;

受下游设备触发产生的

在AR1的接口下抓包,在AR2上undo掉100.100.100.100,接着在AR3上配置100.100.100.100IP地址。

在这里插入图片描述
上游没收到其标签

2、在AR-3的G0/0/0接口抓包,观察AR-6 ping 4.4.4.4的数据

(1)分析10.1.1.0/24的LDP邻居关系,分析和描述AR-5对4.4.4.4/32此FEC的标签采用的是哪个LDP邻居

10.1.1.4

(2)试分析此数据走向与标签分配,并且观察来去数据路径是否一致

不一致

标签的采用
查看IP路由表是否存在此FEC
查看IP路由表此FEC的下一跳是否满足LDP邻居Address
在这里插入图片描述
ping 4.4.4.4
在这里插入图片描述
3、BGP的团体属性与标签分配

(1)BGP可以通过community—团体属性定义同一类路由,针对具有Community特征的路由统一过滤
AR-1只接收带有100:6 community的BGP路由
AR-6只接收带有100:1 community的BGP路由

AR1

[AR-1]ip community-filter 1 permit 100:6

AR1 BGP

[AR-1] bgp 100
[AR-1-bgp]di th
[V200R003C00]
#
bgp 100
 router-id 1.1.1.1
 peer 6.6.6.6 as-number 100 
 peer 6.6.6.6 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  network 1.1.1.11 255.255.255.255 
  network 1.1.1.12 255.255.255.255 
  network 1.1.1.112 255.255.255.255 
  peer 6.6.6.6 enable
  peer 6.6.6.6 route-policy 2 import
  peer 6.6.6.6 route-policy 1 export
  peer 6.6.6.6 label-route-capability
  peer 6.6.6.6 advertise-community
 # 
 ipv4-family vpnv4
  policy vpn-target
  peer 6.6.6.6 enable
#
return

AR1 ACL

[AR-1]acl 2000
[AR-1-acl-basic-2000]rule 5 permit source 1.1.1.12 0 

AR1 Route-policy

[AR-1]dis route-policy
Route-policy : 1
  permit : 10 (matched counts: 1)
    Match clauses : 
      if-match acl 2000
    Apply clauses : 
      apply community 100:1
      apply mpls-label 
  permit : 1000 (matched counts: 1)
Route-policy : 2
  permit : 10 (matched counts: 1)
    Match clauses : 
      if-match community-filter 1

AR6

[AR-6]ip community-filter 1 permit 100:1

AR6 BGP

[AR-6]bgp 100
[AR-6-bgp]di th
[V200R003C00]
#
bgp 100
 router-id 6.6.6.6
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  network 6.6.6.1 255.255.255.255 
  network 6.6.6.2 255.255.255.255 
  peer 1.1.1.1 enable
  peer 1.1.1.1 route-policy 2 import
  peer 1.1.1.1 route-policy 1 export
  peer 1.1.1.1 label-route-capability
  peer 1.1.1.1 advertise-community
 # 
 ipv4-family vpnv4
  policy vpn-target
  peer 1.1.1.1 enable
#
return

AR6 ACL

[AR-6]acl 2000
[AR-6-acl-basic-2000]rule 5 permit source 6.6.6.2 0 

AR6 Route-policy

[AR-6]dis route-policy
Route-policy : 1
  permit : 10 (matched counts: 1)
    Match clauses : 
      if-match acl 2000
    Apply clauses : 
      apply community 100:6
      apply mpls-label 
  permit : 10000 (matched counts: 1)
Route-policy : 2
  permit : 10 (matched counts: 1)
    Match clauses : 
      if-match community-filter 1

(2)BGP可以通过策略的方式为邻居之间传递的路由分配与传递标签
(通过策略封装为路由分配标签)

[AR-1-bgp]peer 6.6.6.6 label-route-capability  //针对此邻居接收和发送带有标签的路由能力 

[AR-1]route-policy 1 permit node 10
[AR-1-route-policy]apply mpls-label            //为此策略命中的路由分配标签

在AR-3的抓包点开启抓包,观察AR-1去往6.6.6.2的 icmp包,携带的标签
可以试着分析一下此数据包为何携带这样的标签

[AR-1]ping 6.6.6.2
在这里插入图片描述
抓包
在这里插入图片描述

4、标签的产生方式:

(1)静态部署
(2)LDP
(3)BGP通过策略为BGP路由分发标签(但此方法意义不大)
(4)MP-BGP VP#-v4 自动分发标签

5、VP#-V4路由特点

(1)通过MP-BGP传递时会自动的分发标签
(2)通过MP-BGP传递时会的分发扩展团体属性----过滤
(3)通过MP-BGP传递时会自动填充RD(64+32)

6、MPLS -VP#

路由传递-----BGP
数据转发-----LSP


在这里插入图片描述
我是艺博东!坚持住,因为总有人要赢的,那个人也许就是你我。也欢迎你和我一起讨论,我们下期见。

猜你喜欢

转载自blog.csdn.net/HYD696/article/details/107614154
ldp