【网络干货】路由策略技术详解

一、基本原理

路由策略使用不同的匹配条件和匹配模式选择路由和改变路由属性。在特定的场景中,路由策略的6 种过滤器也能单独使用,实现路由过滤。若设备支持BGP to IGP 功能,还能在 IGP 引入 BGP 路由时,使用BGP 私有属性作为匹配条件。

 

【网络干货】路由策略技术详解

 

如图,一个路由策略中包含 N(N>=1)个节点(Node)。路由进入路由策略后,按节点序号从小到大依次检查各个节点是否匹配。匹配条件由 If-match 子句定义,涉及路由信息的属性和路由策略的 6 种过滤器。当路由与该节点的所有If-match 子句都匹配成功后,进入匹配模式选择,不再匹配其他节点。

 

匹配模式分 permit 和 deny 两种:

·permit:路由将被允许通过,并且执行该节点的Apply 子句对路由信息的一些属性进行设置。

·deny:路由将被拒绝通过。

 

当路由与该节点的任意一个 If-match 子句匹配失败后,进入下一节点。如果和所有节点都匹配失败,路由信息将被拒绝通过。

 

二、过滤器

路由策略中 If-match 子句中匹配的 6 种过滤器包括访问控制列表ACL(Access Control List)、地址前缀列表、 AS 路径过滤器、团体属性过滤器、扩展团体属性过滤器和RD 属性过滤器。这 6 种过滤器具有各自的匹配条件和permit 和 deny 匹配模式,因此这6 种过滤器在以下的特定情况中可以单独使用,实现路由过滤。

 

1、ACL

ACL 是将报文中的入接口、源或目的地址、协议类型、源或目的端口号作为匹配条件的过滤器,在各路由协议发布、接收路由时单独使用。在Route-Policy 的 If-match 子句中只支持基本ACL。

 

2、地址前缀列表(IP Prefix List

地址前缀列表将源地址、目的地址和下一跳的地址前缀作为匹配条件的过滤器,可在各路由协议发布和接收路由时单独使用。

每个地址前缀列表可以包含多个索引(index),每个索引对应一个节点。路由按索引号从小到大依次检查各个节点是否匹配,任意一个节点匹配成功,将不再检查其他节点。若所有节点都匹配失败,路由信息将被过滤。

根据匹配的前缀不同,前缀过滤列表可以进行精确匹配,也可以进行在一定掩码长度范围内匹配。

 

说明:

当IP地址为0.0.0.0时表示通配地址,表示掩码长度范围内的所有路由都被Permit或Deny。

 

3、AS路径过滤器(AS_PathFilter

AS 路径过滤器是将 BGP 中的 AS_Path 属性作为匹配条件的过滤器,在BGP 发布、接收路由时单独使用。

AS_Path 属性记录了 BGP 路由所经过的所有 AS 编号。

 

4、团体属性过滤器(Community Filter)

团体属性过滤器是将 BGP 中的团体属性作为匹配条件的过滤器,在 BGP 发布、接收路由时单独使用。

BGP 的团体属性是用来标识一组具有共同性质的路由。

 

5、扩展团体属性过滤器(Extcommunity Filter)

 

扩展团体属性过滤器是将 BGP 中的扩展团体属性作为匹配条件的过滤器,可在 v*n 配置中利用v*n Target 区分路由时单独使用。目前,扩展团体属性过滤器仅应用于对 v*n 中的 v*n Target 属性的匹配。v*n Target 属性在BGP/MPLS IP v*n 网络中控制 v*n 路由信息在各 Site 之间的发布和接收。

 

6、RD 属性过滤器(Route Distinguisher Filter

 

RD 团体属性过滤器是将 v*n 中的 RD 属性作为匹配条件的过滤器,可在v*n 配置中利用 RD 属性区分路由时单独使用。

v*n 实例通过路由标识符 RD 实现地址空间独立,区分使用相同地址空间的前缀。

 

三、BGP to IGP功能

 

BGP to IGP 功能使 IGP 能够识别 BGP 路由的 Community、 Extcommunity、 AS-Path 等私有属性。

 

在 IGP引入 BGP 路由时,可以应用路由策略。只有当设备支持BGP to IGP 功能时,路由策略中才可以使用BGP 私有属性作为匹配条件。如果设备不支持 BGPto IGP 功能,那么 IGP 就不能够识别BGP路由的