电子政务 网络管理 网络技术

路由策略

来源:网络部撰稿人:网络部发布时间:2015-11-12 字体:[] [][关闭][打印]

  一、路由策略简介

  路由策略(Routing Policy)是为了改变网络流量所经过的途径而修改路由信息的技术,主要通过改变路由属性(包括可达性)来实现。

  二、路由策略的应用

  路由策略的应用灵活广泛,主要有下面几种方式:

  控制路由的发布

  路由协议在发布路由信息时,通过路由策略对路由信息进行过滤,只发布满足条件的路由信息。

  控制路由的接收

  路由协议在接收路由信息时,通过路由策略对路由信息进行过滤,只接收满足条件的路由信息,可以控制路由表项的数量,提高网络的安全性。

  管理引入的路由

  路由协议在引入其它路由协议发现的路由时,通过路由策略只引入满足条件的路由信息,并控制所引入的路由信息的某些属性,以使其满足本协议的要求。

  设置路由的属性

  对通过路由策略的路由设置相应的属性。

  三、路由策略的实现

  路由策略的实现步骤如下:

  (1) 首先要定义将要实施路由策略的路由信息的特征,即定义一组匹配规则。可以以路由信息中的不同属性作为匹配依据进行设置,如目的地址、发布路由信息的路由器地址等。

  (2) 然后再将匹配规则应用于路由的发布、接收和引入等过程的路由策略中。可以灵活使用过滤器来定义各种匹配规则,过滤器的相关内容见下面介绍。

  四、过滤器

  过滤器可以看作是路由策略过滤路由的工具,单独配置的过滤器没有任何过滤效果,只有在路由协议的相关命令中应用这些过滤器,才能够达到预期的过滤效果。

  路由协议可以引用访问控制列表、地址前缀列表、AS 路径访问列表、团体属性列表、扩展团体属性列表和Route-policy 几种过滤器。下面对各种过滤器逐一进行介绍。

  1. 访问控制列表

  访问控制列表包括针对 IPv4 报文的ACL 和针对IPv6 报文的ACL。用户在定义ACL时可以指定IP(v6)地址和前缀范围,用于匹配路由信息的目的网段地址或下一跳地址。

  2. 地址前缀列表

  地址前缀列表包括 IPv4 地址前缀列表和IPv6 地址前缀列表。

  地址前缀列表的作用类似于 ACL,但比它更为灵活,且更易于用户理解。地址前缀列表在应用于路由信息的过滤时,其匹配对象为路由信息的目的地址信息域;另外,用户可以指定gateway 选项,指明只接收某些路由器发布的路由信息。

  一个地址前缀列表由前缀列表名标识。每个前缀列表可以包含多个表项,每个表项可以独立指定一个网络前缀形式的匹配范围,并用一个索引号来标识,索引号指明了进行匹配检查的顺序。

  在匹配的过程中,路由器按升序依次检查由索引号标识的各个表项,只要有某一表项满足条件,就意味着通过该地址前缀列表的过滤(不再进入下一个表项的测试)。

  3. AS 路径访问列表(as-path-acl)

  as-path-acl 仅用于BGP。BGP 的路由信息中,包含有自治系统路径域。as-path-acl就是针对自治系统路径域指定匹配条件。

  4. 团体属性列表(community-list)

  community-list 仅用于BGP。BGP 的路由信息包中,包含一个community 属性域,用来标识一个团体。community-list 就是针对团体属性域指定匹配条件。

  5. 扩展团体属性列表(extcommunity-list)

  extcommunity-list 仅用于BGP。BGP 扩展团体属性有两种,一种是用于VPN 的Route-Target(路由目标)扩展团体,另一种则是Source of Origin(源节点)扩展团体。扩展团体属性列表就是针对这两种属性指定匹配条件。

  6. 路由策略

  路由策略是一种比较复杂的过滤器,它不仅可以匹配路由信息的某些属性,还可以在条件满足时改变路由信息的属性。路由策略可以使用前面几种过滤器定义自己的匹配规则。

  一个路由策略可以由多个节点(node)构成,不同节点之间是“或”的关系。系统按节点序号依次检查各个节点,如果通过了其中一节点,就意味着通过该路由策略,不再对其他节点进行匹配测试。

  每个节点可以由一组if-match、apply 和continue 子句组成。

  ① if-match 子句定义匹配规则,匹配对象是路由信息的一些属性。同一节点中的不同if-match 子句是“与”的关系,只有满足节点内所有if-match 子句指定的匹配条件,才能通过该节点的匹配测试。

  ② apply 子句指定动作,也就是在通过节点的匹配后,对路由信息的一些属性进行设置。

  ③ continue 子句用来配置下一个执行节点。当路由成功匹配当前路由策略节点时,可以指定路由继续匹配同一路由策略内的下一个节点,这样可以组合路由策略各个节点的if-match 子句和apply 子句,增强路由策略的灵活性。

  if-match、apply 和continue 子句可以根据应用进行设置,都是可选的。

  ① 如果只过滤路由,不设置路由的属性,则不需要使用 apply 子句。

  ② 如果某个 permit 节点没有配置任何if-match 子句,则该节点匹配所有的路由。

  ③ 通常在多个 deny 节点后设置一个不含if-match 子句和apply 子句的permit节点,用于允许其它的路由通过。