VRF技术详解内容_第1页
VRF技术详解内容_第2页
VRF技术详解内容_第3页
VRF技术详解内容_第4页
VRF技术详解内容_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VRF技术详解1.原理简介近年来网络VPN技术方兴未艾,日益成为业界关注的焦点。根据VPN实现的技术特点,可以把VPN技术分为以下三类:传统VPN:FR和ATMCPE-basedVPN:L2TP和IPSec等ProviderProvisionedVPNs(PP-VPN):MPLSL2VPN和MPLSL3VPN。本文介绍的VRF特性是MPLSVPN中经常使用的技术,中文含义为VPN路由转发实例。鉴于VRF与MPLSVPN密切相关,下面首先对MPLSVPN作简要介绍。

图1是一个典型的MPLSL3VPN的组网图,运营商通过自己的IP/MPLS核心网络为BLUE和YELLOW两个客户提供VPN服务。SITE1和SITE3分别为VPNBLUE的两个站点,SITE2和SITE4分别为VPNYELLOW的两个站点。VPNBLUE两个站点内的主机可以互访,但不能访问VPNYELLOW内的主机。同样,VPNYELLOW两个站点内的主机可以互访,但不能访问VPNBLUE内的主机。从而实现了两个VPN间的逻辑划分和安全隔离。CE设备的作用是把用户网络连接到PE,与PE交互VPN用户路由信息:向PE发布本地路由并从PE学习远端站点路由。PE作用是向直连的CE学习路由,然后通过IBGP与其他PE交换所学的VPN路由。PE设备负责VPN业务的接入。P设备是运营商网络中不与CE直接相连的设备,只要支持MPLS转发,并不能感知到VPN的存在。

图1

上面组网中VPN的设计思想是很巧妙的,但存在如下几个问题:1、

本地路由冲突问题,即:在BLUE和YELLOW两个VPN中可能会使用相同的IP地址段,比如10.1.1.0/24,那么在PE上如何区分这个地址段的路由是属于哪个VPN的。2、

路由在网络中的传播问题,上述问题会在整个网络中存在。3、

PE向CE的报文转发问题,当PE接收到一个目的地址在10.1.1.0/24网段内的IP报文时,他如何判断该发给哪个VPN?

针对上述3个问题,分别有以下解决方案:1、

为了解决本地路由冲突问题,我们引入了VRF的概念:把每台PE路由器在逻辑上划分为多台虚拟路由器,即多个VPN路由转发实例VRF,每个VRF对应一个VPN,有自己独立的路由表、转发表和相应的接口。这就相当于将一台各VPN共享的PE模拟成多台专用PE。这样PE与CE交互的路由信息只是该VPN的路由,从而实现了VPN路由的隔离。由于不同VPN的路由存放在不同的VRF中,所以VPN路由重叠的问题也解决了。

2、

VPN重叠路由在网络中的传播问题,可以在路由传递的过程中为这条路由再添加一个标识,用以区别不同的VPN。正常的BGP4协议只能传递IPv4的路由,由于不同VPN用户具有地址空间重叠的问题,必须修改BGP协议。BGP最大的优点是扩展性好,可以在原来的基础上再定义新的属性,通过对BGP修改,把BGP4扩展成MP-BGP。在MP-IBGP邻居间传递VPN用户路由时打上RD标记等VPN信息,这样CE传来的VPN用户的IPv4路由被PE转换为VPN-IPv4路由,这样就能保证对端PE能够区分开属于不同VPN用户的地址重叠的路由。

3、

PE向CE的报文转发问题,由于IP报文的格式不可更改,没有什么文章可以做,但可以在IP头之外加上一些信息(标签),由始发的VPN打上标记,这样PE在接收报文时可以根据这个标记进行转发。

每一个VRF可以看作一台虚拟的路由器,好像是一台专用的PE设备。该虚拟路由器包括如下元素:一张独立的路由表/转发表,当然也包括了独立的地址空间。一组归属于这个VRF的接口集合。一组只用于本VRF的路由协议。

对于每个PE,可以维护一个或多个VRF,同时维护一个公网的路由表(也叫全局路由表),多个VRF实例相互分离独立。实现VRF并不困难,关键在于如何在PE上使用特定的策略规则来协调各VRF和全局路由表之间的关系。

在VRF中定义的和VPN业务有关的两个重要参数是RT和RD,RT和RD长度都是64bit。RT是RouteTarget的缩写,RT的本质是每个VRF表达自己的路由取舍及喜好的方式,主要用于控制VPN路由的发布和安装策略。分为import和export两种属性,前者表示了我对那些路由感兴趣,而后者表示了我发出的路由的属性。当PE发布路由时,将使用路由所属VRF的RTexport规则,直接发送给其他的PE设备。对端PE接收路由时,首先接收所有的路由,并根据每个VRF配置的RT的import规则进行检查,如果与路由中的RT属性match,则将该路由加入到相应的VRF中。以下图为例:SITE-1:我发的路由是蓝色的,我也只接收蓝色的路由。SITE-2:我发的路由是黄色的,我也只接收黄色的路由。SITE-3:我发的路由是蓝色的,我也只接收蓝色的路由。SITE-4:我发的路由是黄色的,我也只接收黄色的路由。

图4

首先Ping包从CE2发出,为IPv4报文,在图中用绿色方块标识。当IP报文到达PE2时,PE2根据目的地址查找VRF的转发表,发现该路由出标签为10,同时该路由下一跳为PE1,而PE1对应的LSP标签为L1,于是PE2给报文分别打上10、L1作为内外层标签,进行MPLS转发。MPLS报文到达P时,P根据MPLS转发表项把外层标签替换为L2继续转发。MPLS报文到达PE1时,因为PE1是LSP的终点,所以外层标签被剥掉。PE1根据露出的内层标签10判断出该报文是发往SITE1所属VPN的报文。于是PE1剥掉内层标签向CE1转发IP报文。CE1收到的是还原后的IP报文,后续处理与正常IP处理流程一样,这里不再赘述。2.2

VRFlite特性应用尽管VRF经常与MPLS一起使用,但VRF也可以脱离MPLS单独应用。VRFlite就是典型例子。VRFlite就是在CE设备上支持VRF。图5所示为典型MPLSVPN组网中用户侧网络,一个企业分支内部的三个部门要求相互隔离,分别通过一台CE连接到PE,形成一个VPN。可见,该分支机构需要三台出口路由器,三条链路与PE连接;同时PE需要为一个企业用户提供三个接口,这将带来端口、链路资源的浪费,直接导致成本与支出的增加。

图5针对这种情况,我们引入VRFlite特性来解决问题,即在CE上配置VRF特性。具体组网如图6所示:此时企业分支只需要一台CE路由器与PE相连,在CE上配置VRF,CE连接三个部门的接口分别与VRF绑定。同时CE只需要一条物理链路与PE相连,并通过链路的子接口分别与VRF绑定,完成CE与PE上对应VRF的逻辑连接。PE与CE可以在各个VRF中运行动态路由协议完成VPN路由交换。PE上的配置和图5中的一样,需要配置VRF和MP-IBGP。

图6这种方案的优点有:只需要一个CE,比多CE情况简化了网络的配置和管理;PE与CE间只需一条物理链路;节省了PE端口资源;允许企业内部不同部门间的地址重叠;

3.应用场合VRF特性用于实现VPN的需求,可以与MPLS配合使用,也可以单独组网应用4.

配置举例4.1VRF与MPLS组合应用图3所示的组网配置如下:CE1配置:#

sysnameCE1#

domainsystem#

controllerT33/0

usingt3

#

interfaceAux0

asyncmodeflow#

interfaceEthernet0/0

/*连接site1内的网络*/

ipaddress10.10.0.1255.255.0.0

#interfaceEthernet0/1#

interfaceSerial3/0/0

link-protocolppp

ipaddress100.10.0.1255.255.0.0#

interfaceNULL0

#interfaceLoopBack9

ipaddress28.40.1.1255.255.255.255

#

ospf1

import-routedirect

area0.0.0.0

network100.10.0.00.0.255.255#

user-interfacecon0

idle-timeout00user-interfaceaux0user-interfacevty04#

return

PE1配置:#

sysnamePE1#

mplslsr-id28.40.1.2#

/*公网运行MPLS*/mpls#

mplsldp#

/*VRF配置*/ipvpn-instancesite1

route-distinguisher100:1

vpn-target100:2export-extcommunity

vpn-target100:3import-extcommunity#domainsystem

#controllerT33/0

usingt3#interfaceAux0

asyncmodeflow#interfaceEthernet0/0

/*连接P的接口*/

ipaddress172.16.32.59255.255.0.0

mpls

mplsldpenable#interfaceEthernet0/1#interfaceSerial0/0

/*连接CE的接口*/

ipbindingvpn-instancesite1

link-protocolppp

ipaddress100.10.0.2255.255.0.0

#interfaceNULL0

#interfaceLoopBack9

ipaddress28.40.1.2255.255.255.255#bgp100

/*配置MPiBGP*/

undosynchronization

groupin100internal

peerin100connect-interfaceLoopBack9

peer46.80.1.1groupin100

/*46.80.1.1是PE2的loopback口地址*/

#

ipv4-familyvpn-instanceblue

import-routedirect

import-routeospf

undosynchronization

#

ipv4-familyvpnv4

peerin100enable

peer46.80.1.1groupin100

#

ospf1

/*IP网络上跑OSPF*/

import-routedirect

area0.0.0.0

network172.16.0.00.0.255.255

#

ospf100vpn-instancesite1

/*VRF中运行OSPF,与CE交换路由*/

import-routedirect

area0.0.0.0

network100.10.0.00.0.255.255#user-interfacecon0

idle-timeout00user-interfaceaux0

user-interfacevty04

#return

说明:PE2和CE2的配置与PE1和CE1类似,此处不再列出。关于BGP和MPLS的配置,请参考操作手册和命令手册

4.2VRFlite特性应用图6中各路由器的配置如下CE的配置:#

sysnameCE

#

ipvpn-instanceMRT

/*VRFMRT*/

route-distinguisher100:1

vpn-target100:1export-extcommunity

vpn-target100:1import-extcommunity

#

ipvpn-instanceRD

/*VRFRD*/

route-distinguisher200:1

vpn-target200:1export-extcommunity

vpn-target200:1import-extcommunity

#

ipvpn-instanceHR

/*VRFHR*/

route-distinguisher300:1

vpn-target300:1export-extcommunity

vpn-target300:1import-extcommunity

#

domainsystem

#

local-useradmin

#

interfaceAux0

asyncmodeflow

#

interfaceEthernet0/0ipaddress110.11.0.2255.255.0.0

/*连接MRT部门*/#

interfaceEthernet0/1

ipaddress110.12.0.2255.255.0.0

/*连接RD部门*/#

interfaceEthernet2/0

ipaddress110.13.0.2255.255.0.0

/*连接HR部门*/#

interfaceEthernet2/1

#

interfaceEthernet2/1.1

/*VRFMRT的子接口*/

ipbindingvpn-instanceMRT

ipaddress11.11.0.2255.255.0.0

vlan-typedot1qvid1

#

interfaceEthernet2/1.2

/*VRFRD的子接口*/

ipbindingvpn-instanceRD

ipaddress11.12.0.2255.255.0.0

vlan-typedot1qvid2

#

interfaceEthernet2/1.3

/*VRFHR的子接口*/

ipbindingvpn-instanceHR

ipaddress11.13.0.2255.255.0.0

vlan-typedot1qvid3

#

interfaceSerial1/0

link-protocolppp

ipaddressppp-negotiate

#

interfaceNULL0

#

ospf1vpn-instanceMRT

/*VRFMRT与PE跑ospf*/

import-routedirect

area0.0.0.0

network11.11.0.00.0.255.255

#

ospf2vpn-instanceRD

/*VRFRD与PE跑ospf*/

import-routedirect

area0.0.0.0

network11.12.0.00.0.255.255

#

ospf3vpn-instanceHR

/*VRFHR与PE跑ospf*/

import-routedirect

area0.0.0.0

network11.13.0.00.0.255.255

#

user-interfacecon0

user-interfaceaux0

user-interfacevty04

authentication-modescheme

#

return

PE的配置:#

sysname2840

#

mplslsr-id28.40.0.1

#

mpls

#

mplsldp

#

ipvpn-instanceMRT

/*VRFMRT*/

route-distinguisher100:1

vpn-target100:1export-extcommunity

vpn-target100:1import-extcommunity

#

ipvpn-instanceRD

/*VRFRD*/

route-distinguisher200:1

vpn-target200:1export-extcommunity

vpn-target200:1import-extcommunity

#

ipvpn-instanceHR

/*VRFHR*/

route-distinguisher300:1

vpn-target300:1export-extcommunity

vpn-target300:1import-extcommunity

#

interfaceAux0

asyncmodeflow

#

interfaceEthernet0/0

ipaddress172.16.0.2255.255.0.0

mpls

mplsldpenable

#

interfaceEthernet0/1

ipaddress11.13.0.1255.255.0.0

#

interfaceEthernet0/1.1

/*VRFMRT的子接口*/

ipbindingvpn-instanceMRT

ipaddress11.11.0.1255.255.0.0

vlan-typedot1qvid1

#

interfaceEthernet0/1.2

/*VRFRD的子接口*/

ipbindingvpn-instanceRD

ipaddress11.12.0.1255.255.0.0

vlan-typedot1qvid2

#

interfaceEthernet0/1.3

/*VRFHR的子接口*/

ipbindingvpn-instanceHR

ipaddress11.13.0.1255.255.0.0

vlan-typedot1qvid3

#

interfaceNULL0

#

interfaceLoopBack0

ipaddress28.40.0.1255.255.255.255

#

bgp10

/*BGP*/

undosynchronization

group10internal

peer10connect-interfaceLoopBack0

peer28.80.0.1group10

/*28.80.0.1为对端PElsrid*/

#

ipv4-familyvpn-instanceMRT

import-routedirect

import-routeospf-ase2

undosynchronization

#

ipv4-familyvpn-instanceRD

import-routedirect

import-routeospf-ase3

undosynchronization

#

ipv4-familyvpn-instanceHR

import-routedirect

import-routeospf4

undosynchronization

#

ipv4-familyvpnv4

peer10enable

peer28.80.0.1group10

#

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论