MPLS VPN简介

MPLS VPN或MPLS虚拟专用网络是MPLS技术的最流行和最广泛的实现。已经运行MPLS VPN多年的许多服务提供商现在正在考虑将其网络与其他服务提供商的MPLS VPN网络互连,以提高其网络的可伸缩性和易用性。这就是自治的MPLS VPN和运营商的运营商(CsC)出现的地方。

在阅读本文之前,请确保您熟悉“对等VPN模型与重叠VPN模型”和“最佳流量”概念。

MPLS VPN的体系结构概述

要实现MPLS VPN,在PE路由器上需要一些基本的构建块。这些构造块如下:VRF,路由区分符(RD),路由目标(RT),通过MP-BGP的路由传播以及 标记数据包的转发。

虚拟路由转发(VRF)

虚拟路由/转发(VRF)是VPN路由和转发实例。它是VPN路由表,VRF Cisco快速转发(CEF)表以及PE路由器上关联的IP路由协议的组合的名称。PE路由器为每个连接的VPN都有一个VRF实例。查看下图,可以看到一个PE路由器不仅拥有全局IP路由表,而且还具有连接到PE的每个VPN的VRF路由表。

PE路由器上的VRF

由于PE路由器上的每个客户(VPN)的路由应该是分开的和私有的,因此每个VPN应该有自己的路由表。此专用路由表称为VRF路由表。PE路由器上通往CE路由器的接口只能属于一个VRF。这样,在VRF接口上接收到的所有IP数据包都被明确标识为属于该VRF。

因为每个VPN都有一个单独的路由表,所以每个VPN都有一个单独的CEF表以在PE路由器上转发这些数据包。这是VRF CEF表。与全局路由表和全局CEF表一样,VRF CEF表是从VRF路由表派生的。使用ip vrf命令在PE路由器上创建VRF 。您可以使用ip vrf Forwarding命令将PE路由器上的PE-CE接口分配给VRF。

您可以仅将一个接口分配给一个VRF,但是可以将多个接口分配给同一VRF。然后,PE路由器自动创建VRF路由表和CEF表。如果需要为一个接口分配多个VRF,则必须在CE和PE路由器中配置子接口,并将每个子接口分配给不同的VPN。

路由识别器(RD)

VPN前缀通过多协议BGP(MPBGP)在MPLS VPN网络中传播。问题在于,当BGP在服务提供商网络中携带这些IPv4前缀时,它们必须是唯一的。如果客户的IP地址重叠,则路由将是错误的。为了解决这个问题,RD的概念被认为可以使IPv4前缀唯一。

RD是一个64位字段,用于在MP-BGP携带VRF前缀时使它们唯一。RD未指明前缀所属的VRF。RD的功能不是VPN标识符的功能,因为某些更复杂的VPN方案每个VPN可能需要多个RD。PE路由器上的每个VRF实例必须为其分配一个RD。

此64位值可以具有两种格式:ASN:nn或IP地址:nn,其中nn代表数字。最常用的格式是ASN:nn,其中ASN代表自治系统编号。通常,服务提供商使用ASN:nn,其中ASN是Internet编号分配机构(IANA)分配给服务提供商的自治系统编号,而nn是服务提供商唯一地分配给VRF的编号。

RD与IPv4前缀的组合提供了vpnv4前缀,其地址长度为96位。掩码长度为32位,就像IPv4前缀一样。如果您使用IPv4前缀10.1.1.0/24和RD 1:1,则vpnv4前缀将变为1:1:10.1.1.0/24。

路线目标(RT)

如果仅使用RD来指示VPN,则不同VPN的站点之间的通信会出现问题。A公司的站点将无法与B公司的站点进行对话,因为RD不匹配。使公司A的站点能够与公司B的站点进行通信的概念称为Extranet VPN。站点之间的通信由另一种称为RT的MPLS VPN功能控制。

RT是BGP扩展团体,它指示应将哪些路由从MPBGP导入到VRF中。导出RT表示,当路由从VRF路由表重新分发到MP-BGP时,导出的vpnv4路由会收到一个额外的BGP扩展团体(即RT),该扩展团体是在PE路由器的ip vrf下配置的。

导入RT意味着,将从MP-BGP接收的vpnv4路由进行检查,以查找匹配的扩展团体(这是路由目标)以及配置中的扩展团体。如果结果匹配,则将前缀作为IPv4路由放入VRF路由表中。如果未发生匹配,则前缀被拒绝。为VRF配置RT的命令是route-target { import | 出口双方}路由目标扩展团体。关键字both表示导入和导出。

下图显示了RT控制从远程PE路由器导入哪些路由到哪些VRF,以及将vpnv4路由与哪些RT导出到远程PE路由器。vpnv4路由可能连接了多个RT。为了允许导入VRF,只需将来自vpnv4路由的一个RT与PE路由器的ip vrf部分下的导入RT的配置进行匹配。

当使用多个属于一个VPN的站点来配置VRF时,不必与属于另一个VPN的站点进行通信时,只需配置一个RT,即可在具有该VRF的站点的所有PE路由器上导入和导出该RT。这是内部网的简单情况。当您拥有属于一个VPN的站点且需要能够与另一个VPN的站点进行通信时(外部网情况),请注意正确配置RT的方式。下图显示了带有RT的示例网络。

显然,VRF客户一的站点A和站点B应该能够相互通信。VRF客户二的站点A和B的情况相同。VPN客户一使用的RT为1:1。VPN客户两个使用的RT是1:2。现在,假设仅一个VRF的站点A需要与仅两个VRF的站点A进行对话。这完全有可能,并且可以通过相应地配置RT来确定。为此,在PE1和PE2上为vrf客户1和客户2的站点A导入和导出RT 100:1。这称为外部网。

觉得文章有用?

点个广告表达一下你的爱意吧 !😁