VRF

功能介绍

VRF概述

VRF(VPN Routing and Forwarding Table,VPN路由转发表)用来解决不同VPN之间,采用相同IP地址空间导致的本地路由冲突问题。每个VPN对应一个VRF,可以把每个VRF想象成一台“虚拟路由器”,负责接收或者通告VPN路由信息。每个VRF包括:

一张独立的路由表;

一组归属于该VRF的接口集合;

一组只用于本VRF的路由协议;

在提供VPN服务的设备上同时存在多份路由表,包括一份公网路由表和一份或多份VRF。公网路由表用于公网报文转发,VRF用于VPN报文转发。公网路由表和VRF之间路由隔离,各VRF之间路由隔离。

说明

VPN(Virtual Private Network,虚拟专用网)用于在公共网络上构建私人专用网络。“虚拟”是指这种“专用”是逻辑上的独占,而非物理上的独占。

私人专用网络简称为“私网”,公共网络简称为“公网”。

工作原理

VPN实例

VPN实例用来提供VPN服务。在提供VPN服务的设备上,将属于同一个VPN的VRF、接口、路由协议进程、配置信息等的集合统称为一个VPN实例。通常,使用VRF来代表VPN实例。

VPN路由

VPN路由仅用于指导VPN报文转发。VPN路由来自于:

接口加入VRF后生成的直连路由和主机路由。

配置导入接口上的直连路由和主机路由(接口未加入VRF)。

配置VPN实例下的静态路由、动态路由协议(RIP、RIPng、OSPFv2、OSPFv3、ISIS、BGP)。

说明

关于“VPN实例下的静态路由”,配置请参见“IP路由”中的“IP路由基础”。

关于“VPN实例下的RIP”,配置请参见“IP路由”中的“RIP”。

关于“VPN实例下的RIPng”,配置请参见“IP路由”中的“RIPng”。

关于“VPN实例下的OSPFv2”,配置请参见“IP路由”中的“OSPFv2”。

关于“VPN实例下的OSPFv3”,配置请参见“IP路由”中的“OSPFv3”。

关于“VPN实例下的ISIS”,配置请参见“IP路由”中的“ISIS”。

关于“VPN实例下的BGP”,配置请参见“IP路由”中的“BGP”。

VPN路由属性

VPN路由的两个重要属性:RD和RT。

RD(Route Distinguisher,路由区分符),用来解决BGP路由发布过程中的路由冲突问题。如果不同的VPN具有相同的网络地址,BGP决策只会从这些相同的地址中选择最好的路由进行通告,这样会导致某些VPN得不到对应的路由信息。加入RD值可以为相同的地址加上不同的区分符。BGP根据VPN信息中携带的不同区分符,区分相同的网络地址,每个VPN可以得到各自的路由信息。

通常为每个VPN指定唯一的RD值。一条VPN路由信息只能携带一个RD值。RD的内容有类型字段、管理子区域和分配字段组成。如图1-1所示,根据类型字段的数值,编码格式有如下三种形式:

RD结构图

image.png

当Type为0时,管理子区域有2个字节,使用AS号标识,必须是公共的自治系统号;分配字段有4个字节,由服务提供商管理。

当Type为1时,管理子区域有4个字节,使用IPv4地址,该地址必须是全局的IP地址;分配字段有2个字节,由服务提供商管理。

当Type为2时,管理子区域有4个字节,此时使用4字节的AS号标识,分配字段有2个字节,由服务提供商管理。

增加了RD的IPv4地址称为VPN-IPv4地址,如图1-2所示。BGP收到IPv4路由后,将转换为全局唯一的VPN-IPv4路由,并在公网上发布。

VPN-IPv4地址结构

image.png

RT(Route-Target,路由目标属性),用来控制VPN路由的发布和安装策略。分为Import和Export两种属性。

Import:设备收到发布的VPN-IPv4路由时,检查其Export属性。当设备上指定VPN实例的Import属性与Export属性匹配时,设备把路由加入到该VPN实例中。

Export:本地学到IPv4路由后,转换为VPN-IPv4地址结构的路由。为这些路由设置Export属性,作为BGP的扩展团体属性随路由发布给其他设备。

BGP的扩展团体属性定义了RT的编码结构,如图1-3所示:

RT结构图

image.png

RT值和RD值的定义相似。对于类型0x02和0x202,AS号也必须是公共的。对于类型0x102,其IPv4地址也必须是全局的,不能是私有的。

配置限制与指导

单协议VRF和多协议VRF只能选择其一。

单协议VRF仅支持IPv4,多协议VRF同时支持IPv4和IPv6。

配置任务概览

以下配置步骤互斥,请选择其中一项进行配置。

配置单协议VRF

创建单协议VRF

(可选)配置单协议VRF的RD

(可选)配置单协议VRF的RT

(可选)配置单协议VRF的标签分配方式

(可选)配置单协议VRF关联的导出策略

(可选)配置单协议VRF关联的导入策略

配置接口加入单协议VRF

(可选)配置接口路由导入单协议VRF

(可选)配置单协议VRF的最大路由条数

配置多协议VRF

创建多协议VRF

(可选)配置多协议VRF的地址族

(可选)配置多协议VRF的RD

(可选)配置多协议VRF的RT

(可选)配置多协议VRF的标签分配方式

(可选)配置多协议VRF关联的导出策略

(可选)配置多协议VRF关联的导入策略

配置接口加入多协议VRF

(可选)配置接口路由导入多协议VRF

(可选)配置多协议VRF的最大路由条数

配置全局VRF

配置全局VRF的地址族

(可选)配置全局VRF的RD

(可选)配置全局VRF的RT

(可选)配置全局VRF的标签分配方式

(可选)配置全局VRF关联的导出策略

(可选)配置全局VRF关联的导入策略

(可选)配置全局VRF的最大路由条数

配置单协议VRF

功能简介

配置单协议VRF,用于管理VPN路由。

配置限制与指导

如果设备仅转发指定私网的报文,或仅转发公网报文,则不需要配置VRF。

如果设备需要同时转发公网报文和私网报文,或同时转发多个私网报文,则必须使用VRF进行路由隔离。

需要向VRF中添加静态路由或动态路由(RIP、OSPF、ISIS、BGP)。

仅支持IPv4。

当三层接口加入或退出单协议VRF时,接口的IPv4地址、相关路由协议和三层特性都将被删除。

若已有三层接口加入单协议VRF,则在删除该VRF时,接口的IPv4地址、相关路由协议以及三层特性都将被删除。

配置任务简介

单协议VRF配置任务如下:

创建单协议VRF

(可选)配置单协议VRF的RD

(可选)配置单协议VRF的RT

(可选)配置单协议VRF的标签分配方式

(可选)配置单协议VRF关联的导出策略

(可选)配置单协议VRF关联的导入策略

配置接口加入单协议VRF

(可选)配置接口路由导入单协议VRF

(可选)配置单协议VRF的最大路由条数

创建单协议VRF

功能简介

为每个私网创建一个单协议VRF。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

创建单协议VRF,并进入VRF配置模式。

ip vrf vrf-name

缺省情况下,不存在单协议VRF。

(可选)配置单协议VRF的描述符

description description

缺省情况下,未配置单协议VRF描述符

配置单协议VRF的RD

功能简介

配置路由区分符,解决BGP路由发布过程中的路由冲突问题。

配置限制与指导

在单协议VRF模式下配置RD命令。

如果配置了VRF和RD值,要想修改RD值,只能先删除该VRF,重新配置VRF后再配置RD值。

每个VRF只能配置一个RD值,不能配置多个RD值。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入单协议VRF配置模式。

ip vrf vrf-name

配置RD。

rd rd-value

缺省情况下,没有配置RD值。

配置单协议VRF的RT

功能简介

配置路由目标属性值,控制VPN路由的发布。

配置限制与指导

在单协议VRF模式下配置目标属性值。

每个VRF可以配置多个导入属性值,也可以配置多个导出属性值。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入单协议VRF配置模式。

ip vrf vrf-name

配置路由目标属性值。

route-target { both | export | import } route-value

缺省情况下,未配置路由目标属性值。

配置单协议VRF的标签分配方式

功能简介

配置单协议VRF的标签分配方式。

配置限制与指导

基于每条路由标签分配方式。每条路由都对应一个标签。优点是可以根据标签值查找ILM表转发到下一跳,报文转发相对较快。缺点是要求ILM表的容量较大。

基于每个VRF的标签分配方式。每个VRF对应一个标签。优点是VRF内部的所有路由公用该标签,减少了ILM表的容量。缺点是相比第一种方法,报文转发较慢。因为转发过程需要2次查表:先根据ILM表找到该报文所在的VRF,再在该VRF的路由表中根据目的IP转发出去。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入单协议VRF配置模式。

ip vrf vrf-name

配置标签分配方式。

alloc-label { per-route | per-vrf }

缺省情况下,未配置标签分配方式。

配置单协议VRF关联的导出策略

功能简介

配置从本地VRF导出分发给远端的VPN路由的扩展团体属性策略。

配置限制与指导

当需要采用更精确的方式对导出路由的扩展团体属性进行控制时,可以在关联的路由图中根据需要定义精确的规则。

本命令支持添加或者修改通过route-target export命令定义的扩展团体属性。

本命令关联的路由图只支持配置match ip address和set extcommunity两条规则命令。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入单协议VRF配置模式。

ip vrf vrf-name

配置关联的导出策略。

export map route-map-name

缺省情况下,未配置VRF关联的导出策略。

配置单协议VRF关联的导入策略

功能简介

配置接收远端分发过来的VPN路由导入到本地VRF的策略。

配置限制与指导

当需要采用更精确的方式对导入到本地VRF的路由进行过滤时,可以在关联的路由图中根据需要定义精确的规则。

import map定义的规则在VRF中定义的导入扩展团体属性后面生效,即从远端接收的VPN路由只有满足了VRF下使用route-target import命令定义的扩展团体属性后,才能再进入import map定义的规则再次进行过滤。

目前本命令关联的路由图只支持配置match ip address和match extcommunity两条规则命令。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入单协议VRF配置模式。

ip vrf vrf-name

配置关联的导入策略。

import map route-map-name

缺省情况下,未配置VRF关联的导入策略。

配置接口加入单协议VRF

功能简介

将接口加入到指定的VRF中。从该接口进入的报文,将使用相应的VRF信息进行转发。

配置限制与指导

接口必须先加入单协议VRF,再配置IPv4地址。如果接口先配置IPv4地址,再加入单协议VRF,则IPv4地址配置失效(保留IPv6配置)。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入接口配置模式。

进入三层以太网接口配置模式。

interface ethernet-type interface-number

进入三层以太网子接口配置模式。

interface ethernet-type interface-number.subnumber

进入SVI接口配置模式。

interface vlan interface-number

进入管理口配置模式。

interface mgmt interface-number

进入环回口配置模式。

interface loopback interface-number

接口加入单协议VRF。

ip vrf forwarding vrf-name

缺省情况下,接口不属于任何VRF。

配置接口路由导入单协议VRF

功能简介

将指定接口的主机路由和直连路由导入到指定VRF。

配置限制与指导

如果要求使用策略路由选择VRF,则必须在应用策略路由的接口上配置ip vrf receive命令,将接口上的直连路由和主机路由导入每个供选择的VRF。

如果要导入该接口的主机和直连路由到多个VRF,则需要多次执行本命令。

在指定接口上,ip vrf forwarding命令和ip vrf receive命令是互斥的。与ip vrf forwarding命令不同,ip vrf receive命令不会将接口加入VRF,接口不属于任何VRF。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入接口配置模式。

进入三层以太网接口配置模式。

interface ethernet-type interface-number

进入三层以太网子接口配置模式。

interface ethernet-type interface-number.subnumber

进入SVI接口配置模式。

interface vlan interface-number

进入管理口配置模式。

interface mgmt interface-number

进入环回口配置模式。

interface loopback interface-number

将接口的主机和直连路由导入VRF。

ip vrf receive vrf-name

缺省情况下,未将接口的直连和主机路由导入指定的VRF路由表中。

配置单协议VRF的最大路由条数

功能简介

限制单协议VRF内最大路由条目数。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入单协议VRF配置模式。

ip vrf vrf-name

配置单协议VRF内的最大路由条数。

maximum routes limit { warning-only | warning-threshold }

缺省情况下,单协议VRF内的最大路由条数为。

配置多协议VRF

功能简介

配置多协议VRF,用于管理VPN路由。通过配置地址族,可以支持IPv4和IPv6。在BGP的帮助下,可以灵活控制VPN之间的隔离和互访。

配置限制与指导

如果设备仅转发某个私网的报文,或仅转发公网报文,则不需要配置VRF。

如果设备需要同时转发公网报文和私网报文,或同时转发多个私网报文,则必须使用VRF进行路由隔离。

需要向VRF中添加静态路由或动态路由(RIP、OSPF、ISIS、BGP)。

当三层接口加入或退出多协议VRF时,接口的IP地址、相关路由协议和三层特性都将被删除。

若已有三层接口加入多协议VRF,则在删除该VRF时,接口的IP地址、相关路由协议以及三层特性都将被删除。

配置任务简介

多协议VRF配置任务如下:

创建多协议VRF

(可选)配置多协议VRF的地址族

(可选)配置多协议VRF的RD

(可选)配置多协议VRF的RT

(可选)配置多协议VRF的标签分配方式

(可选)配置多协议VRF关联的导出策略

(可选)配置多协议VRF关联的导入策略

配置接口加入多协议VRF

(可选)配置接口路由导入多协议VRF

(可选)配置多协议VRF的最大路由条数

创建多协议VRF

功能简介

为每个私网创建一个多协议VRF。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

创建多协议VRF,并进入多协议VRF配置模式。

vrf definition vrf-name

缺省情况下,不存在多协议VRF。

(可选)配置多协议VRF的描述符

description description

缺省情况下,未配置多协议VRF描述符

配置多协议VRF的地址族

功能简介

配置VRF的IPv4/IPv6地址族,并进入相应的配置模式。

配置限制与指导

为每个创建的VRF配置相应的地址族。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入多协议VRF配置模式。

vrf definition vrf-name

配置地址族。请至少选择其中一项进行配置。

配置IPv4地址族,并进入VRF IPv4地址族子模式。

address-family ipv4

配置IPv6地址族,并进入VRF IPv6地址族子模式。

address-family ipv6

缺省情况下,多协议VRF未配置任何地址族。

配置多协议VRF的RD

功能简介

配置路由区分符,解决BGP路由发布过程中的路由冲突问题。

配置限制与指导

在多协议VRF模式下配置RD命令。

如果配置了VRF和RD值,要想修改RD值,只能先删除该VRF,重新配置VRF后再配置RD值。

每个VRF只能配置一个RD值,不能配置多个RD值。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入多协议VRF配置模式。

vrf definition vrf-name

配置RD。

rd rd-value

缺省情况下,没有配置RD值。

配置多协议VRF的RT

功能简介

配置路由目标属性组,控制VPN路由的发布。

配置限制与指导

在多协议VRF模式下或者是多协议VRF地址族模式下配置路由目标属性值。

每个VRF可以配置多个导入属性值,也可以配置多个导出属性值。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入多协议VRF配置模式。

vrf definition vrf-name

(可选)进入多协议VRF地址族配置模式。

address-family { ipv4 | ipv6 }

配置路由目标属性值。

route-target { both | export | import } route-value

缺省情况下,未配置路由目标属性值。

配置多协议VRF的标签分配方式

功能简介

配置多协议VRF的标签分配方式。

配置限制与指导

基于每条路由标签分配方式。每条路由都对应一个标签。优点是可以根据标签值查找ILM表转发到下一跳,报文转发相对较快。缺点是要求ILM表的容量较大。

基于每个VRF的标签分配方式。每个VRF对应一个标签。优点是VRF内部的所有路由公用该标签,减少了ILM表的容量。缺点是相比第一种方法,报文转发较慢。因为转发过程需要2次查表:先根据ILM表找到该报文所在的VRF,再在该VRF的路由表中根据目的IP转发出去。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入多协议VRF配置模式。

vrf definition vrf-name

进入多协议VRF地址族配置模式。

address-family { ipv4 | ipv6 }

配置标签分配方式。

alloc-label { per-route | per-vrf }

缺省情况下,未配置标签分配方式。

配置多协议VRF关联的导出策略

功能简介

配置从本地VRF导出分发给远端的VPN路由的扩展团体属性策略

配置限制与指导

当需要采用更精确的方式对导出路由的扩展团体属性进行控制时,可以在关联的路由图中根据需要定义精确的规则。

本命令支持添加或者修改通过route-target export命令定义的扩展团体属性。

本命令关联的路由图只支持配置match ip address和set extcommunity两条规则命令。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入多协议VRF配置模式。

vrf definition vrf-name

进入多协议VRF地址族配置模式。

address-family { ipv4 | ipv6 }

配置关联的导出策略。

export map route-map-name

缺省情况下,未配置VRF关联的导出策略。

配置多协议VRF关联的导入策略

功能简介

配置接收远端分发过来的VPN路由导入到本地VRF的策略。

配置限制与指导

当需要采用更精确的方式对导入到本地VRF的路由进行过滤时,可以在关联的路由图中根据需要定义精确的规则。

import map定义的规则在VRF中定义的导入扩展团体属性后面生效,即从远端接收的VPN路由只有满足了VRF下使用route-target import命令定义的扩展团体属性后,才能再进入import map定义的规则再次进行过滤。

目前本命令关联的路由图只支持配置match ip address和match extcommunity两条规则命令。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入多协议VRF配置模式。

vrf definition vrf-name

进入多协议VRF地址族配置模式。

address-family { ipv4 | ipv6 }

配置关联的导入策略。

import map route-map-name

缺省情况下,未配置VRF关联的导入策略。

配置接口加入多协议VRF

功能简介

将接口加入到指定的VRF中。从该接口进入的报文,将使用相应的VRF信息进行转发。

配置限制与指导

配置本命令后,接口上的直连路由和主机路由自动导入VRF。

必须先开启多协议VRF的地址族,再将接口加入该VRF。如果接口加入多协议VRF时,未开启IPv4地址族,则不允许在接口上配置IPv4地址和VRRP IPv4地址。如果未开启IPv6地址族,则不允许在接口上配置IPv6地址和VRRP IPv6地址。

必须先将接口加入多协议VRF,再为接口配置IPv4地址、IPv6地址和VRRP IPv4/IPv6地址。当接口加入多协议VRF时,接口上已有的IPv4地址、IPv6地址和VRRP IPv4/IPv6地址都将被删除,并且接口的IPv6协议将被关闭。

如果删除多协议VRF的IPv4地址族,将删除加入该VRF的所有接口的IPv4地址和VRRP IPv4地址,同时删除路由VRF或者下一跳VRF是该VRF的IPv4静态路由。

如果删除多协议VRF的IPv6地址族,将删除加入该VRF的所有接口的IPv6地址和VRRP IPv6地址,关闭接口的IPv6协议,同时删除路由VRF或者下一跳VRF是该VRF的IPv6静态路由。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入接口配置模式。

进入三层以太网接口配置模式。

interface ethernet-type interface-number

进入三层以太网子接口配置模式。

interface ethernet-type interface-number.subnumber

进入SVI接口配置模式。

interface vlan interface-number

进入管理口配置模式。

interface mgmt interface-number

进入环回口配置模式。

interface loopback interface-number

接口加入多协议VRF。

vrf forwarding vrf-name

缺省情况下,接口不属于任何VRF。

配置接口路由导入多协议VRF

功能简介

将指定接口的主机路由和直连路由导入到指定VRF。

配置限制与指导

如果要求使用策略路由选择VRF,则必须在应用策略路由的接口上配置vrf receive命令,将接口上的直连路由和主机路由导入每个供选择的VRF。

如果要导入该接口的主机和直连路由到多个VRF,则需要多次执行本命令。

在指定接口上,vrf forwarding命令和vrf receive命令是互斥的。与vrf forwarding命令不同,vrf receive命令不会将接口加入指定VRF,接口不属于任何VRF。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入接口配置模式。

进入三层以太网接口配置模式。

interface ethernet-type interface-number

进入三层以太网子接口配置模式。

interface ethernet-type interface-number.subnumber

进入SVI接口配置模式。

interface vlan interface-number

进入管理口配置模式。

interface mgmt interface-number

进入环回口配置模式。

interface loopback interface-number

将接口的主机和直连路由导入VRF。

vrf receive vrf-name

缺省情况下,未将接口的直连和主机路由导入多协议VRF中。

配置多协议VRF的最大路由条数

功能简介

限制多协议VRF内的最大路由条目数。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入多协议VRF配置模式。

vrf definition vrf-name

进入多协议VRF地址族配置模式。

address-family { ipv4 | ipv6 }

配置多协议VRF内的最大路由条数。

maximum routes limit { warning-only | warning-threshold }

缺省情况下,多协议VRF内的最大路由条数为。

配置全局VRF

功能简介

配置全局VRF,管理VPN路由,全局VRF默认存在。

配置限制与指导

如果设备仅转发某个私网的报文,或仅转发公网报文,则不需要配置VRF。

如果设备需要同时转发公网报文和私网报文,或同时转发多个私网报文,则必须使用VRF进行路由隔离。

需要向VRF中添加静态路由或动态路由(RIP、OSPF、ISIS、BGP)。

配置任务简介

全局VRF配置任务如下:

配置全局VRF的地址族

(可选)配置全局VRF的RD

(可选)配置全局VRF的RT

(可选)配置全局VRF的标签分配方式

(可选)配置全局VRF关联的导出策略

(可选)配置全局VRF关联的导入策略

(可选)配置全局VRF的最大路由条数

配置全局VRF的地址族

功能简介

配置VRF的IPv4/IPv6地址族,并进入相应的配置模式。

配置限制与指导

为每个创建的VRF配置相应的地址族。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入全局VRF配置模式。

vrf global-vrf

(可选)配置全局VRF的描述符

description description

缺省情况下,未配置全局VRF描述符

配置地址族。请至少选择其中一项进行配置。

配置IPv4地址族,并进入VRF IPv4地址族子模式。

address-family ipv4

配置IPv6地址族,并进入VRF IPv6地址族子模式。

address-family ipv6

缺省情况下,IPv4和IPv6地址族处于开启状态。

配置全局VRF的RD

功能简介

配置路由区分符,解决BGP路由发布过程中的路由冲突问题。

配置限制与指导

在全局VRF模式下配置RD命令。

如果配置了VRF和RD值,要想修改RD值,只能先删除该VRF,重新配置VRF后再配置RD值。

每个VRF只能配置一个RD值,不能配置多个RD值。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入全局VRF配置模式。

vrf global-vrf

配置RD。

rd rd-value

缺省情况下,没有配置RD值。

配置全局VRF的RT

功能简介

配置路由目标属性组,控制VPN路由的发布。

配置限制与指导

在全局VRF模式下或者是全局VRF地址族模式下配置路由目标属性值。

每个VRF可以配置多个导入属性值,也可以配置多个导出属性值。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入全局VRF配置模式。

vrf global-vrf

(可选)进入全局VRF地址族配置模式。

address-family { ipv4 | ipv6 }

配置路由目标属性值。

route-target { both | export | import } route-value

缺省情况下,未配置路由目标属性值。

配置全局VRF的标签分配方式

功能简介

配置全局VRF的标签分配方式。

配置限制与指导

基于每条路由标签分配方式。每条路由都对应一个标签。优点是可以根据标签值查找ILM表转发到下一跳,报文转发相对较快。缺点是要求ILM表的容量较大。

基于每个VRF的标签分配方式。每个VRF对应一个标签。优点是VRF内部的所有路由公用该标签,减少了ILM表的容量。缺点是相比第一种方法,报文转发较慢。因为转发过程需要2次查表:先根据ILM表找到该报文所在的VRF,再在该VRF的路由表中根据目的IP转发出去。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入全局VRF配置模式。

vrf global-vrf

进入全局VRF地址族配置模式。

address-family { ipv4 | ipv6 }

配置标签分配方式。

alloc-label { per-route | per-vrf }

缺省情况下,未配置标签分配方式。

配置全局VRF关联的导出策略

功能简介

配置从本地VRF导出分发给远端的VPN路由的扩展团体属性策略。

配置限制与指导

当需要采用更精确的方式对导出路由的扩展团体属性进行控制时,可以在关联的路由图中根据需要定义精确的规则。

本命令支持添加或者修改通过route-target export命令定义的扩展团体属性。

本命令关联的路由图只支持配置match ip address和set extcommunity两条规则命令。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入全局VRF配置模式。

vrf global-vrf

进入全局VRF地址族配置模式。

address-family { ipv4 | ipv6 }

配置关联的导出策略。

export map route-map-name

缺省情况下,未配置VRF关联的导出策略。

配置全局VRF关联的导入策略

功能简介

配置接收远端分发过来的VPN路由导入到本地VRF的策略。

配置限制与指导

当需要采用更精确的方式对导入到本地VRF的路由进行过滤时,可以在关联的路由图中根据需要定义精确的规则。

import map定义的规则在VRF中定义的导入扩展团体属性后面生效,即从远端接收的VPN路由只有满足了VRF下使用route-target import命令定义的扩展团体属性后,才能再进入import map定义的规则再次进行过滤。

目前本命令关联的路由图只支持配置match ip address和match extcommunity两条规则命令。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入全局VRF配置模式。

vrf global-vrf

进入全局VRF地址族配置模式。

address-family { ipv4 | ipv6 }

配置关联的导入策略。

import map route-map-name

缺省情况下,未配置VRF关联的导入策略。

配置全局VRF的最大路由条数

功能简介

限制全局VRF内的最大路由条目数。

配置步骤

进入特权模式。

enable

进入全局配置模式。

configure terminal

进入全局VRF配置模式。

vrf global-vrf

进入全局VRF地址族配置模式。

address-family { ipv4 | ipv6 }

配置全局VRF内的最大路由条数。

maximum routes limit { warning-only | warning-threshold }

缺省情况下,全局VRF内的最大路由条数为。

监视与维护

可以通过show命令行查看功能配置后的运行情况以验证配置效果。

可以通过执行clear命令来清除各类信息。

注意

在设备运行过程中执行clear命令,可能因为重要信息丢失而导致业务中断。

可以通过debug命令行列举输出的各种调试信息。

注意

输出调试信息,会占用系统资源。使用完毕后,请立即关闭调试开关。

VRF监视与维护

作用

命令

查看启用IPv4协议的VRF信息

show ip vrf [ brief | count | detail | interfaces ] [ vrf-name ]

查看全局VRF的信息

show global-vrf [ brief | count |detail | ipv4 | ipv6 ]

查看所有VRF的信息

show vrf [ brief | count | detail | ipv4 | ipv6 ] [ vrf-name ]

清除组播路由的统计信息

clear ip mroute [ vrf vid ] statistics { * | group-address [ source-address ] }

清除PIM-DM协议报文的统计信息

clear ip pim dense-mode [ vrf vid ] track

清除指定VRF中的路由

clear ip route vrf vrf-name

查看VRF的创建,地址族开启,接口加入VRF等过程调试信息

debug vrf

打印与接口相关的VRF操作调试信息

debug vrf interface

典型配置举例

本地VPN互访配置举例

组网需求

Subnet A、Subnet B、Server均为私网,享有独立的地址空间。Subnet A内运行RIP,Subnet B内运行OSPF,Server是C的直连网段。Subnet A和Subnet B之间路由隔离,但都可以访问Server。

组网图

本地VPN互访功能

image.png

配置要点

在Device C上创建VRF(Suba),与Device A直连的接口加入VRF(Suba)。Device C的VRF(Suba)与Device A之间,使用RIP互联。

在Device C上创建VRF(Subb),与Device B直连的接口加入VRF(Subb)。Device C的VRF(Subb)与Device B之间,使用OSPF互联。

在Device C上创建VRF(Server),与Server直连的接口加入VRF(Server)。

在Device C上设置VRF(Suba、Subb、Server)的RT,将Suba、Subb的路由导入Server,将Server的路由导入Suba、Subb。

在Device C上配置BGP,在IPv4 VRF(Suba)地址族下引入RIP路由,在IPv4 VRF(Subb)地址族下引入OSPF路由,在IPv4 VRF(Server)地址族下引入直连路由。

配置步骤

配置设备IP地址(略)。

在设备C上创建VRF。

# 创建VRF(Suba),将与Device A直连的接口G0/1加入VRF(Suba)。

DeviceC> enable

DeviceC# configure terminal

DeviceC(config)# ip vrf Suba

DeviceC(config-vrf)# rd 100:1

DeviceC(config-vrf)# route-target import 100:3

DeviceC(config-vrf)# route-target export 100:1

DeviceC(config-vrf)# exit

DeviceC(config)# interface gigabitethernet 0/1

DeviceC(config-GigabitEthernet 0/1)# ip vrf forwarding Suba

DeviceC(config-GigabitEthernet 0/1)# ip address 10.10.1.1 255.255.255.0

DeviceC(config-GigabitEthernet 0/1)# exit

# 创建VRF(Subb),将与Device B直连的接口G0/2加入VRF(Subb)。

DeviceC(config)# ip vrf Subb

DeviceC(config-vrf)# rd 100:2

DeviceC(config-vrf)# route-target import 100:3

DeviceC(config-vrf)# route-target export 100:2

DeviceC(config-vrf)# exit

DeviceC(config)# interface gigabitethernet 0/2

DeviceC(config-GigabitEthernet 0/2)# ip vrf forwarding Subb

DeviceC(config-GigabitEthernet 0/2)# ip address 10.10.2.1 255.255.255.0

DeviceC(config-GigabitEthernet 0/2)# exit

# 创建VRF(Server),将与Server直连的接口G0/3加入VRF(Server)。

DeviceC(config)# ip vrf Server

DeviceC(config-vrf)# rd 100:3

DeviceC(config-vrf)# route-target import 100:1

DeviceC(config-vrf)# route-target import 100:2

DeviceC(config-vrf)# route-target export 100:3

DeviceC(config-vrf)# exit

DeviceC(config)# interface gigabitethernet 0/3

DeviceC(config-GigabitEthernet 0/3)# ip vrf forwarding Server

DeviceC(config-GigabitEthernet 0/3)# ip address 10.10.3.1 255.255.255.0

DeviceC(config-GigabitEthernet 0/3)# exit

启动路由协议。

# Device A启动路由协议。

DeviceA> enable

DeviceA# configure terminal

DeviceA(config)# router rip

DeviceA(config-router)# version 2

DeviceA(config-router)# no auto-summary

DeviceA(config-router)# network 10.10.1.0 0.0.0.255

# Device B启动路由协议。

DeviceB> enable

DeviceB# configure terminal

DeviceB(config)# router ospf 1

DeviceB(config-router)# network 10.10.2.0 0.0.0.255 area 0

# Device C启动路由协议。

DeviceC(config)# router rip

DeviceC(config-router)# address-family ipv4 vrf Suba

DeviceC(config-router-af)# version 2

DeviceC(config-router-af)# no auto-summary

DeviceC(config-router-af)# network 10.10.1.0 0.0.0.255

DeviceC(config-router-af)# exit-address-family

DeviceC(config-router)# exit

DeviceC(config)# router ospf 2 vrf Subb

DeviceC(config-router)# network 10.10.2.0 0.0.0.255 area 0

在VRF下引入路由。

# 设备Device C在VRF下引入路由。

DeviceC# configure terminal

DeviceC(config)# router bgp 200

DeviceC(config-router)# address-family ipv4 vrf Suba

DeviceC(config-router-af)# redistribute rip

DeviceC(config-router-af)# exit-address-family

DeviceC(config-router)# address-family ipv4 vrf Subb

DeviceC(config-router-af)# redistribute ospf 2

DeviceC(config-router-af)# exit-address-family

DeviceC(config-router)# address-family ipv4 vrf Server

DeviceC(config-router-af)# redistribute connected

DeviceC(config-router-af)# exit-address-family

验证配置结果

# 在设备Device C上确认接口加入VRF信息。

DeviceC# show ip vrf interfaces

Interface             IP-Address  VRF      Protocol

GigabitEthernet 0/1   10.10.1.1   Suba     up

GigabitEthernet 0/2   10.10.2.1   Subb     up

GigabitEthernet 0/3   10.10.3.1   Server   up

# 在设备Device C上确认Suba和Subb路由隔离,共享Server路由。

DeviceC# show ip route vrf Suba

Routing Table: Suba

Codes:  C - connected, S - static, R - RIP, B - BGP

O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, * - candidate default

Gateway of last resort is no set

C    10.10.1.0/24 is directly connected, GigabitEthernet 0/1

C    10.10.1.1/32 is local host.

B    10.10.3.0/24 [20/0] via 0.0.0.0, 00:01:21, GigabitEthernet 0/3

DeviceC# show ip route vrf Subb

Routing Table: Subb

Codes:  C - connected, S - static, R - RIP, B - BGP

O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, * - candidate default

Gateway of last resort is no set

C    10.10.2.0/24 is directly connected, GigabitEthernet 0/2

C    10.10.2.1/32 is local host.

B    10.10.3.0/24 [20/0] via 0.0.0.0, 00:04:03, GigabitEthernet 0/3

DeviceC# show ip route vrf Server

Routing Table: Server

Codes:  C - connected, S - static, R - RIP, B - BGP

O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, * - candidate default

Gateway of last resort is no set

B    10.10.1.0/24 [20/1] via 0.0.0.0, 03:00:15, GigabitEthernet 0/1

B    10.10.2.0/24 [20/1] via 0.0.0.0, 00:00:14, GigabitEthernet 0/2

C    10.10.3.0/24 is directly connected, GigabitEthernet 0/3

C    10.10.3.1/32 is local host.

配置文件

Device A的配置文件

hostname DeviceA

!

interface GigabitEthernet 0/1

no switchport

ip address 10.10.1.2 255.255.255.0

!

router rip

version 2

network 10.10.1.0 0.0.0.255

no auto-summary

!

Device B的配置文件

hostname DeviceB

!

interface GigabitEthernet 0/2

no switchport

ip address 10.10.2.2 255.255.255.0

!

router ospf 2

network 10.10.2.0 0.0.0.255 area 0

!

Device C的配置文件

hostname DeviceC

!

ip vrf Server

rd 100:3

route-target export 100:3

route-target import 100:2

route-target import 100:1

!

ip vrf Suba

rd 100:1

route-target export 100:1

route-target import 100:3

!

ip vrf Subb

rd 100:2

route-target export 100:2

route-target import 100:3

!

interface GigabitEthernet 0/1

no switchport

ip vrf forwarding Suba

ip address 10.10.1.1 255.255.255.0

!

interface GigabitEthernet 0/2

no switchport

ip vrf forwarding Subb

ip address 10.10.2.1 255.255.255.0

!

interface GigabitEthernet 0/3

no switchport

ip vrf forwarding Server

ip address 10.10.3.1 255.255.255.0

!

router bgp 200

address-family ipv4 vrf Suba

redistribute rip

exit-address-family

!

address-family ipv4 vrf Subb

redistribute ospf 2 match internal

exit-address-family

!

address-family ipv4 vrf Server

redistribute connected

exit-address-family

!

router ospf 2 vrf Subb

network 10.10.2.0 0.0.0.255 area 0

!

router rip

address-family ipv4 vrf Suba

version 2

network 10.10.1.0 0.0.0.255

no auto-summary

exit-address-family

!

Server的配置文件

hostname Server

!

interface GigabitEthernet 0/3

no switchport

ip address 10.10.3.2 255.255.255.0

!

常见错误

先配置接口IP地址,再将接口加入VRF,此时接口IP地址将被删除。

当物理链路被多个VPN的报文共享时,将物理接口加入VRF。

未将VPN路由引入BGP。