36VRF配置36.1VRF概述VirtualPrivateNetworks(VPNs)为用户提供了一种安全的方式在ISP骨干网上共享带宽。一个VPN即是共享路由的站点集。用户站点通过一到多个接口链接到服务提供商网络,服务提供商为每一个接口关联一个VPN路由表;VPN路由表也叫VPNrouting/forwarding(VRF)table。注意具备VRF-lite特性,RG-38,RG-72系列路由器作为CE设备支持多VPN路由转发实例(VRF-lite也称multi-VRFCE,或者multi-VRFCustomerEdgeDevice).本章包括以下内容:VRF-lite原理介绍VRF-lite配置指导VRF-lite配置范例VRF-lite调试VRF-lite主要包含如下部分:CE设备提供多路接入PE供用户访问使用。CE设备向PE设备通告本地路由,从PE设备学习VPN远端路由;PE设备利用静态路由,动态路由协议(BGPRIPOSPF)向CE设备交互路由信息;PE设备可能存在多个接口属于一个VPN,PE设备间通过BGP协议交互VPN路由信息;PE设备本身不依赖于CE设备的功能;P设备不处理VPN信息,即VPN信息对P设备透明。VRF-lite典型应用模型当在网络上VRF-Lite使能时报文处理流程:当CE设备从VPN收到报文时,其通过接收接口信息查询相关的VRF路由转发表,如果成功则按照路由将报文送入PE设备;当入口PE设备从CE接收到报文时,将完成VRF查询。如果路由成功,将根据路由加入相关MPLS标签,送入MPLS网络;当出口PE设备充MPLS网络接收到MPLS报文,剥去MPLS标签,并找到相关的VPN路由表,其中进行普通路由查找,查找成功,将送给相关邻接;当CE从出口PE得到报文,利用报文进入接口信息得到相关VPN路由,进行路由查找,如果成功,则进入VPN。36.2VRF配置任务创建VRF接口使能VRF功能配置路由协议VRF-Lite使用指导:CE设备利用VRF-Lite支持多用户,用户在CE拥有自己的路由表;因为用户拥有自己的路由表,将可能使用相同的IP地址(暂不支持);在CE和PE之间的物理线路将为多用户公用,其存在多个逻辑接口,可以使用多种方式实现。VRF-Lite不支持MPLS-VRF相关功能,其主要作用在CE设备端;在PE设备上,连接多个CE和使用VRF-Lite没有区别;在PE和CE设备之间的路由交互,建议使用EBGP。当然使用OSPF、RIP、静态路由等也可以实现,其复杂度增加;如果使用OSPF进行路由交互,需要小心配置,建议在OSPF协议使用capabilityvrf-lite功能。36.2.1创建VRF命令作用Ruijie(config)#ipvrfvrf-name创建VRFRuijie(config)#noipvrfvrf-name删除VRFvrf-name不要超过31个字符36.2.2接口使能VRF功能命令作用Ruijie(config-if)#ipvrfforwardingvrf-name接口使能VRFRuijie(config-if)#noipvrfforwardingvrf-name接口关闭VRF默认情况下,接口不属于任何VRF,即属于全局路由注意接口使能vrf之后,原接口上的地址配置将失效;通常在接口上先使能vrf,再配置IP地址36.2.3配置路由协议命令作用Ruijie(config)#iproutevrfvrf-namenetworkmaskinterfacenexthop添加路由Ruijie(config)#noiproutevrfvrf-namenetworkmask删除路由也可以使用路由协议。36.3VRF配置范例如下图所示,使用RG-38做为CE设备,CISCO72作为PE设备,CE接入两个VPN:vpn1和vpn2。Ruijie#hostnameCE-A#给路由器取个名字CE-A#configureterminal#进入全局配置模式CE-A(config)#ipvrfvpn1#创建VRF,vpn1CE-A(config)#ipvrfvpn2#创建VRF,vpn2CE-A(config)#interfacef0/0#进入接口配置模式CE-A(config-if)#descriptionconnecting-to-vpn1#说明:链接到vpn1CE-A(config-if)#ipvrfforwardingvpn1#接口使能vrfCE-A(config-if)#ipaddress192.168.4.1255.255.255.0#配置IP地址CE-A(config)#interfacef0/1#进入接口配置模式CE-A(config-if)#ipvrfforwardingvpn2#接口使能vrfCE-A(config-if)#ipaddress192.168.5.1255.255.255.0#配置IP地址CE-A(config-if)#descriptionconnecting-to-vpn2#说明:链接到vpn2CE-A(config)#interfacef1/0#进入接口配置模式CE-A(config-if)#noipaddressCE-A(config)#interfacef1/0.10#进入子接口CE-A(config-if)#encapsulationdot1Q10#封装802.1Q,VLAN10CE-A(config-if)#ipvrfforwardingvpn1#接口使能vrfCE-A(config-if)#ipaddress10.10.1.1255.255.255.0#配置子接口IP地址CE-A(config)#interfacef1/0.20#进入子接口CE-A(config-if)#encapsulationdot1Q20#封装802.1Q,VLAN20CE-A(config-if)#ipvrfforwardingvpn2#接口使能vrfCE-A(config-if)#ipaddress10.10.2.1255.255.255.0#配置子接口IP地址CE-A(config)#iproutevrfvpn1192.168.44.0255.255.255.010.10.1.2#配置vpn1的静态路由CE-A(config)#iproutevrfvpn1192.168.55.0255.255.255.010.10.2.2#配置vpn2的静态路由Ruijie#hostnameCE-B#给路由器取个名字CE-B#configureterminal#进入全局配置模式CE-B(config)#ipvrfvpn1#创建VRF,vpn1CE-B(config)#ipvrfvpn2#创建VRF,vpn2CE-B(config)#interfacef0/0#进入接口配置模式CE-Bconfig-if)#ipvrfforwardingvpn1#接口使能vrfCE-B(config-if)#ipaddress192.168.44.1255.255.255.0#配置IP地址CE-B(config-if)#descriptionconnecting-to-vpn1#说明:链接到vpn1CE-B(config)#interfacef0/1#进入接口配置模式CE-B(config-if)#ipvrfforwardingvpn2#接口使能vrfCE-B(config-if)#ipaddress192.168.55.1255.255.255.0#配置IP地址CE-Bconfig-if)#descriptionconnecting-to-vpn2#说明:链接到vpn2CE-B(config)#interfacef1/0#进入接口配置模式CE-B(config-if)#noipaddressCE-B(config)#interfacef1/0.10#进入子接口CE-B(config-if)#encapsulationdot1Q100#封装802.1Q,VLAN100CE-B(config-if)#ipvrfforwardingvpn1#接口使能vrfCE-B(config-if)#ipaddress172.10.1.1255.255.255.0#配置子接口IP地址CE-B(config)#interfacef1/0.20#进入子接口CE-B(config-if)#encapsulationdot1Q200#封装802.1Q,VLAN200CE-B(config-if)#ipvrfforwardingvpn2#接口使能vrfCE-B(config-if)#ipaddress172.10.2.1255.255.255.0#配置子接口IP地址CE-B(config)#iproutevrfvpn1192.168.4.0255.255.255.0172.10.1.2#配置vpn1静态路由CE-B(config)#iproutevrfvpn1192.168.5.0255.255.255.0172.10.2.2#配置vpn2静态路由#接下来配置PE设备Router#configureterminalRouter(config)#ipvrfv1Router(config-vrf)#rd100:1Router(config-vrf)#route-targetexport100:1Router(config-vrf)#route-targetimport100:1Router(config-vrf)#exitRouter(config)#ipvrfv2Router(config-vrf)#rd100:2Router(config-vrf)#route-targetexport100:2Router(config-vrf)#route-targetimport100:2Router(config-vrf)#exitRouter(config)#ipcefRouter(config)#interfaceFastEthernet0/0.10Router(config-if)#encapsulationdot1q10Router(config-if)#ipvrfforwardingv1Router(config-if)#ipaddress10.10.1.2255.255.255.0Router(config-if)#exitRouter(config)#interfaceFastEthernet0/0.100Router(config-if)#encapsulationdot1q100Router(config-if)#ipvrfforwardingv1Router(config-if)#ipaddress172.10.1.2255.255.255.0Router(config-if)#exitRouter(config)#interfaceFastEthernet0/0.20Router(config-if)#encapsulationdot1q20Router(config-if)#ipvrfforwardingv2Router(config-if)#ipaddress10.10.2.2255.255.255.0Router(config-if)#exitRouter(config)#interfaceFastEthernet0/0.200Router(config-if)#encapsulationdot1q200Router(config-if)#ipvrfforwardingv2Router(config-if)#ipaddress172.10.2.2255.255.255.0Router(config-if)#exitRouter(config)#iproutevrfv1192.168.4.0255.255.255.010.10.1.1Router(co