【必看】技术&案例 | V**路由转发表原理与大型MPLS案例分析

2019-07-23 10:15:38 浏览数 (1)

  • 编辑 | 排版 | 制图 | 测试 | ©瑞哥
  • 此文用时3小时08分钟,原创不易,坚持更不易,希望我的每一份劳动成果都可以得到大家的一个【在看】

一、VRF介绍

V**路由转发表(V** Routingand Forwarding table ),简称VRF,VRF主要是为了解决本地路由冲突问题。PE和CE之间的连接都需要关联一个VRF。可以把每个VRF想象成一台“虚拟路由器”,各个VRF间路由是完全隔离的。

VRF包括:

  1. 一张独立的路由表;
  2. 一组归属于这个VRF的接口集合;
  3. 一组只用于本VRF的路由协议。

既然,VRF间是独立转发的,如何实现VRF之间的路由联通?有两种常见方法:通过静态路由或策略路由实现VRF路由的跨越。

静态路由VRF跨越配置思路:

配置模板1:

代码语言:javascript复制
ip route [vrf vrf_name] network mask[interface-type interface-number] [ip-address]

配置示例1:

代码语言:javascript复制
ip route vrf V**1 10.0.0.0255.0.0.0 GigabitEthernet 3/1/0 12.0.0.1

配置解释1:

在VRF V**1里添加一个去往10.0.0.0/8网段的静态路由,去往这个网段的数据包从GI3/1/0接口转发,下一跳是12.0.0.1。

出接口(例子中的GI3/1/0接口)用于指示将要跳转的VRF,即该出接口属于什么VRF,就指明了目的网段要跳转到该VRF。

接口没有加入任何VRF,那么该接口属于全局VRF,即全局路由表

VRF跳转是以出接口为跳转标识的,所以一定要配置出接口形式的静态路由。同时,必须配置下一跳IP地址,否则ARP无法解析,无法转发数据。

配置模板2:

代码语言:javascript复制
ip route [vrf vrf_name] network mask  ip-address global

配置示例2:

代码语言:javascript复制
ip route vrf V**1 10.0.0.0255.0.0.0 12.0.0.1 global

配置解释2:

Global表示全局路由表

在VRF V**1里添加一个去往10.0.0.0/8网段的静态路由,去往这个网段的数据包从全局路由表转发,下一跳是12.0.0.1。

配置模板1与配置模板2差别:

Ø 配置模板1可以实现任意VRF之间、任意VRF与全局路由表之间的VRF跨越

Ø 配置模板2只能实现任意VRF与全局路由表之间的VRF跨越,不能实现VRF与VRF之间的跨越。

策略路由VRF跨越配置思路:

1)定义 ACL感兴趣流

代码语言:javascript复制
ip access-listextended 100 
 10 permit ip 10.0.0.0 0.255.255.255 any

2)定义策略路由

代码语言:javascript复制
route-map internetpermit 10 
 match ip address 100
 set vrf V**1

set vrf:配置策略路由是 IP 报文选路使用的 VRF 实例,优先级比普通路由高,该命令不能和 set ip [default] nexthop、set [default ]interface 同时配置。从接口上收到的匹配 match规则的 IP 报文将使用该命令指定的 VRF实例的路由表进行选路,而不管该 VRF 是否和收到该 IP报文的接口所属的 VRF一致。

3)接口应用策略路由

代码语言:javascript复制
interfaceGigabitEthernet 3/1/0
 ip policy route-map internet

二、大型案例

2.1 实际组网需求

政务网中,MPLS-V**应用已经非常普遍。众所周知,MPLS承载网公网和V**私网之间是无法互通的,因为跨越了VRF,VRF将公网和私网严格区分开来。

在政务网中,存在这样的需求:有部分非V**业务需要承载在公网上。即,某些业务不划入V**网络,通过公网实现互通。一般情况下,V**业务和非V**业务是没有互访需求的,所以,两者通过同一张公网承载没有问题。

但在某些政务网中,存在特殊需求,非V**业务需要上INTERNET,而INTERNET出口本身属于某个MPLS-V**的VRF实例。如何实现非V**业务与V**业务的互联互通就成为一个问题。

需求

Ø 省城域网局厅接入属于非V**业务,需要和其他非V**业务互访

Ø 省城域网局厅接入需要访问INTERNET

Ø 除省城域网局厅接入以外的非V**业务,不能访问INTERNET

拓扑描述

Ø 该拓扑是某政务网实际拓扑

Ø 黄色底纹部分是公网部分,同时承载V**和非V**业务

Ø INTERNET出口部分,两台RSR7716连接RSR7708的接口属于VRF internet

2.2 实际组网拓扑

2.3 模拟组网需求

Ø PC1属于非V**业务,需要和其他非V**业务互访

Ø PC1需要访问INTERNET

Ø 除PC1以外的非V**业务,不能访问INTERNET

2.4 模拟组网拓扑

2.5 配置要点

数据传输是双向的,我们需要同时考虑PC1到INTERNET、INTERNET到PC1双向的路由联通性

PC1到INTERNET方向:

Ø 需求是:PC1需要访问INTERNET,但除PC1以外的非V**业务不能访问INTERNET。因此需要在PE1的GI3/1/0入口方向实施跨VRF的策略路由。只允许PC1网段跨VRF转发,其他网段屏蔽。

Ø 同时需要在PE1上全局路由表引入默认路由,使得公网非V**业务路由器能学到去往INTERNET的默认路由。

INTERNET到PC1方向:

Ø PE1上需要回指路由,我们使用跨VRF的静态路由,回指PC1网段。

Ø PE1上需要将该静态路由重发布到VRF 的OSPF中,使得出口路由能学到该非V**路由

2.6 配置步骤

跨VRF路由一般应用在MPLS-V**网络的PE设备上,但其本质是VRF间的跳转,和MPLS无关。因此本案例中不涉及MPLS-V**配置。

PE1配置:

1、基本路由连通性配置:

代码语言:javascript复制
ip vrf V**1   
interface GigabitEthernet 3/1/0
   ip policy route-map internet
   ip address 12.0.0.2255.255.255.0
interfaceGigabitEthernet 3/1/1
   ip vrf forwarding V**1
   ip address 23.0.0.2 255.255.255.0
interfaceLoopback 0
   ip address 2.2.2.2 255.255.255.255
routerospf 1
   network 2.2.2.2 0.0.0.0 area 0
   network 12.0.0.2 0.0.0.0 area 0
   default-information originate always
routerospf 10 vrf V**1
   redistribute static subnets
   network 23.0.0.2 0.0.0.0 area 0

2、PC1到INTERNET方向路由策略(使用策略路由):

代码语言:javascript复制
route-mapinternet permit 10

   match ip address 100
   set vrf V**1cess-list extended 100
   10 permit ip 10.0.0.0
ip ac0.255.255.255 any
interfaceGigabitEthernet 3/1/0
   ip policy route-map internet

3、INTERNET到PC1方向路由策略(使用静态路由):

代码语言:javascript复制
iproute vrf V**1 10.0.0.0 255.0.0.0 GigabitEthernet 3/1/0 12.0.0.1

PE2配置:

代码语言:javascript复制
interfaceGigabitEthernet 0/0
   ip ref
   ip address 12.0.0.1 255.255.255.0
interfaceGigabitEthernet 0/1
   ip ref
   ip address 10.0.0.254 255.255.255.0
interfaceLoopback 0
   ip ref
   ip address 1.1.1.1 255.255.255.255
routerospf 1
   network 1.1.1.1 0.0.0.0 area 0
   network 10.0.0.0 0.0.0.255 area 0
   network 12.0.0.1 0.0.0.0 area 0

INTERNET出口路由器配置:

代码语言:javascript复制
interfaceGigabitEthernet 0/0
   ip ref
   ip address 23.0.0.3 255.255.255.0
interfaceLoopback 0
   ip ref
   ip address 3.3.3.3 255.255.255.255
routerospf 1
   redistribute static subnets
   network 23.0.0.3 0.0.0.0 area 0
   default-information originate
iproute 0.0.0.0 0.0.0.0 Loopback 0

2.7 验证配置

PC1可以PING通INTERNET出口路由器3.3.3.3

PC1#ping 3.3.3.3

Sending5, 100-byte ICMP Echoes to 3.3.3.3, timeout is 2 seconds:

< press Ctrl C to break >

!!!!!

Successrate is 100 percent (5/5), round-trip min/avg/max = 1/12/20 ms

0 人点赞