《华为认证》mpls 笔记 2

Mpls vpn的定义

BGP/MPLS IP VPN网络一般由运营商搭建,VPN用户购买VPN服务来实现用户网络之间的路由传递、数据互通等。

Mpls vpn的网络架构:

MPLS VPN网络架构由三部分组成:CE(Customer Edge)、PE(Provider Edge)和P(Provider),其中PE和P是运营商设备,CE是MPLS VPN用户设备。

站点(site)就是MPLS VPN的用户,由CE和其他用户设备构成。

Mpls vpn的技术架构:

MPLS VPN不是单一的一种VPN技术,是多种技术结合的综合解决方案,主要包含下列技术:

MP-BGP:负责在PE与PE之间传递站点内的路由信息。

LDP:负责PE与PE之间的隧道建立。

VRF:负责PE的VPN用户管理。

静态路由、IGP、BGP:负责PE与CE之间的路由信息交换。

Mpls vpn的路由传递:

1、CE与PE之间的路由信息交换 (采用普通ipv4、ipv6的IGP、BGP、静态路由)

PE设备连接CE的接口需要划分到vpn实例,用于区分用户路由。

2、入口PE到出口PE路由传递(采用MP-BGP 传递vpnv4路由)

VPNv4地址共有12个字节,包括8字节的路由标识符RD(Route Distinguisher)和4字节的IPv4地址前缀。讲人话:就是CE的私网路由加上一个标记(RD)在MP-BGP当中传递的路由。

RD值:当PE 收到远端PE发送过来的不同的VRF里面的路由相同时,需要通过RD值来区分。

RT值:表明一个vrf的喜好,决定路由器是否接收此路由,并且对应的路由放到哪个实例的路由表。RT值是一种扩展团体属性。(发送VPNV4路由的时候会在扩展团体属性中携带出方向RT

MPLS VPN的数据转发:

Mpls vpn可以通过MP-bgp将站点内部的路由发布给对应的站点(将本端CE的路由传递给对端CE),这仅只是控制平面完成的路由交互,数据平面需要结合mpls ldp分配的公网隧道实现数据通信。

运营商的mpls 网络P设备是没有站点内(CE)的私网路由的,因此不可能使用IP进行转发,因此需要使用mpls 标签的形式来转发私网流量。

数据转发时需要两类标签

外层标签(公网标签)由LDP为VPN路由的NextHop(一般是PE的某个接口地址)分发,P根据外层标签转发数据到PE。

内层标签(私网标签)由PE的MP-BGP为VPN路由分发。PE根据内层标签确定数据所属的VPN。

数据转发时的问题:

通过标签解决问题:

Mpls vpn路由交互的过程:

Mpls vpn的特殊场景及解决方案:

AS号替换:

若CE1通过EBGP向PE1发送一条私网路由,并经过PE2发送到CE2,则CE2会由于AS号重复丢弃这条路由,导致属于同一VPN的Site 1和Site 2之间无法连通。

可以在PE上执行peer substitute-as命令使能AS号替换功能,即PE用本地AS号替换收到的私网路由中CE所在VPN站点的AS号,这样对端CE就不会因为AS号重复而丢弃路由了。

[PE1] bgp 123

[PE1-bgp] ipv4-family vpn-instance vpn1

[PE1-bgp-vpn1] peer 192.168.100.1 substitute-as

SOO:

在CE多归属场景,若使能了BGP的AS号替换功能,可能会引起路由环路,需要SoO(Site of Origin)特性来避免环路。

CE1与CE3处于同一个VPN站点1,CE2位于站点Site2,Site1和Site2站点所在的AS号都为65001。PE与CE之间运行的都是EBGP路由协议,为了Site 1和Site 2之间的路由可以正常学习,需要在PE1和PE2上配置AS号替换功能。

CE1传递站点内的路由给PE1,PE1传递该路由给CE3,由于配置AS号替换,CE3会接收该路由,可能会导致产生路由环路。

配置了BGP邻居的SoO后:

接收到该邻居的BGP路由时,会在路径属性中携带该SoO属性并通告给其他BGP邻居。

向该邻居通告BGP路由时,会检查路由中的SoO属性是否与配置的SoO值相同,若相同则不通告,避免引起环路。

[PE1] bgp 123

[PE1-bgp] ipv4-family vpn-instance vpn1

[PE1-bgp-vpn1] peer 192.168.100.1 soo 200:1

[PE1-bgp-vpn1] peer 192.168.200.1 soo 200:1

Sham link:

应用场景

当CE和PE之间运行ospf,并且存在后门链路;

经过MPLSVPN骨干(super bone)的作为区域间路由,经过后门链路作为区域内路由,会导致VPN流量走后门链路作为主路径。

对端CE给PE是LSAI/2/3,此时发到对端PE一一CE是LSA3

对端CE给PE是LSA5,此时发到对端PE一一CE是LSA5

在PE上创建用于建立sham Link的接口

[PE1]interface LoopBack0

[PE1-LoopBack0] ip binding vpn-instance VPNA

[PE1-LoopBack0]ip address 1.1.1.1 32

#在BGP的VPN地址族中发布出去

[PE1-bgp-VPNA]network  1.1.1.1 32

在PE节点上配置sham Link

[PE1-ospf-1]area 0

[PE1-ospf-1-area-0.0.0.0]sham-link 1.1.1.1 2.2.2.2

调整cost值,确保后门链路的cost要大于sham Link上的cost。

[CE1-GigabitEthernet0/0/0]ospf cost  1000

Mpls vpn防环:

DN位防环:

为了防止3类LSA环路,OSPF多实例进程使用LSA Options域中一个原先未使用的比特作为标志位,称为DN位。使用DN位可以防止Type3 LSA环路。

PE路由器的OSPF实例进程在进行SPF计算时,忽略DN置位的Type3 LSA。

如果CE设备也配置了vpn实例,缺省情况下由于DN防环,因此会对PE设备发送过来的路由执行接收不计算。导致CE无法收到对端CE的路由。

需要在CE执行以下命令来接收PE发送的路由:

方式一:

dn-bit-set disable summary/ase/nssa 命令用来禁止设置OSPF LSA的DN位。

指定不设置Summary LSA/AS-external LSA/NSSA LSA的DN位

方式二:

vpn-instance-capability simple命令用来禁止路由环路检测,直接进行路由计算。

Type5/7路由防环:VPN Route Tag:

可以使用VPN Route Tag(VPN路由标记)来防止此5类或7类路由环路。

PE在根据收到的BGP的私网路由生成5/7类LSA时,携带VPN路由标记。当PE发现LSA的VPN路由标记和本地配置的一样,就会忽略这条LSA,因此可以避免上述环路。

猜你喜欢

转载自blog.csdn.net/2301_76769137/article/details/130007520