本篇文章将已实验的基础来详细讲解MPLS VPN中VRF表的分离技术与静态穿越VRF表

如果你不理解以下四点,那就请继续看下去吧

  1. 控制层面与数据层面的区别
  2. MPLS VPN 中VRF表的作用
  3. 静态路由如何穿越不同的VRF表
  4. 如何打破AS-Path的防环原则

实验拓扑如下

需求:

  • 分部间的通信要绕行总部
  • 尽可能减少VRF表的数量(VRF表分离)
  • 去往互联网采用静态的VRF穿越
  • 主备结构,分流互备

分析:

如何将VRF表分离:

       在R3这个PE上做两个VRF表,即spoke作为接收其他分部路由的VRF表(入向添加的是分部的出向),hub作为发出给其他分部的VRF表(分部的入向要添加这个hub的出向)

分离后的好处:

  • 适合分支不断扩展,便于做策略
  • 可以把安全策略中心与总部结合起来
  • 压缩成本
  • 便于管理,人员调配

实施:

由于此篇文章重点讲述VRF表分离与静态VRF的穿越,前三步将省略,如果想要了解的话,请看这篇文章,这是一个具体项目的配置方案

  1. 配置IP地址
  2. 配置路由(ISP底层用OSPF,配置BGP)
  3. 运营商内部铺设MPLS VPN隧道
  4. 配置VRF表
  5. 配置静态穿越VRF表
  6. 策略

从第四步开始的详细配置

  • 连接总部的边界ISP R3 上的两个VRF表,spoke作为接收分部的路由,hub作为发送给分部的路由

 

  • 连接分部的边界ISP R8 R9的VRF表

新的问题:

由于AS号的昂贵,此实验中模拟了真是环境的操作,即总部与分部的AS号相同,那么此时就会出现一个新的问题,环路问题即分部的路由进入到总部后,就会因为AS-Path的存在则不能进去

解决:

打破这种默认存在的防环原则

  1. 连接分部的边界运营商上,在VPNV4的instance中允许给/扔给邻居一个出环(存在分部的AS号)的路由
  2. 上面的操作在每个连接分部的边界运营商上都要做
  3. 连接总部的运营商上,允许发出环的路由,且允许收到出环的路由

a.在spoke的VRF表中,对总部进行允许发出/扔给 出环的路由(substitute-as)

b.在hub的VRF表中,对总部进行允许接收/收到 出环的路由(allow-as-loop)

 

一定要分清楚数据层面与控制层面

  • Ping(流量走向):控制层面是spoke进,hub出,但是,数据层面的话,查看PE(连接总部的PE)的hub路由表,分部的私网路由是CE给的,所以数据层面的流量会从hub子接口进,spoke子接口出
  • 打破防环原则时:研究对象是站在PE的角度 对EBGP的CE邻居而言 允许出去或进来的;说明:此时的选择对应的是路由表,即控制层面,则spoke是import分部的VRF的,所以是PE将分部的流量导入给到CE的,那就是允许出去 ,即spoke就对邻居就配置substitue-as;那么在hub中就是允许CE的路由进来,即hub对邻居配置allow-as-loop

图解说明:

  • 红色是控制层面,可见经过R6这个路由反射器反射路由并从spoke进入,hub出去
  • 黑色是数据层面,可见经过MPLS 隧道从hub进入,spoke出去

详细配置:

R3上,注意允许出环的次数不要用默认的1 要改大些,要不就没有打破原先的防环原则

R8 R9上 允许发出去可能出环的路由

测试:

PC1pingPC2 即分部间的通信,可以明显的看出绕行了总部,且数据层面的流量从hub进,spoke出

 

接下来做互联网的部分,两种做法,此实验环境采用的是第二种方案

  1. 连接互联网的VRF表,在spoke中接收一下
  2. 手工配置静态缺省,穿越VRF白哦

 

静态穿越VRF表:

目的:为了使VRF来到全局/全局来到VRF/VRF来到VRF(即打破隔离

实施:

  • 写在全局路由表中 穿到VPN 即下一跳为VPN  下一跳前面写vpn-instance
  • 写在VPN 中 穿到全局路由表,public为全局下一跳的声明   目的地前面写vpn-instance  下一跳后面写public
  • 写在VPN中 穿到VPN中   目的地前面写vpn-instance   下一跳前面写vpn-instance

总结:

静态可以在一个路由器的不同VRF相互穿越,BGP可以做到远端两个VRF相互穿(接收即可),但是其他动态路由协议是不能做到不同VRF相互穿越

配置:R3 R4配置相同,并对互联网邻居做bgp的静态引入

检查,R3的全局路由表有0.0.0.0的下一跳为连接互联网的接口;int这个VRF表中有10网段的路由

R3 R4要对R1 R2下发默认,这个下发的是spoke的邻居,因为此时研究对象是控制层面,即想要达到的是将路由导入

接下来就是制作策略,使R3成为分部间通信的流量承载点,那么将R1选择R3进来(spoke接口)的LP增大,那么流量就会从R3进入,还要控制出去时也走R3,则将R2出去的MED增大,影响R4对我自己的选路,这样一来,R3就成为承载所有分部流量的路由器,为了使R4成为互联网路由器,在互联网路由器上制作策略,即将R4邻居传递来的路由的PV增大

 

 



 

以上就是所有的配置,下面是此实验的技术总结(思维导图的形式),算是给看到这里的你一个彩蛋吧~