「Route Policy」- Route Policy(路由、过滤、设置属性)

  CREATED BY JENKINSBOT

解决方案

Route-Policy 也是个策略工具,用于过滤路由信息。与 Filter Policy 不同,Route Polocy 能为过滤后(允许通过)的路由信息设置路由属性。

Route-Policy 主要用于路由条目过滤,辅以设置路由属性

语法格式

格式概览:

配置示例:

route-policy    test    permit      node     10
	if-match x1
	if-match x2
	apply y1
    
route-policy    test    permit      node     20
	if-match x3 x4
	apply y2

......

route-policy    test    permit      node     N
	if-match xn
	apply yn

permit / deny

指定 Route-Policy Node 的匹配模式为允许或拒绝,决定路由条目是否通过

permit:指定 Route-Policy 节点的匹配模式为允许。如果路由与节点所有的 if-match 子句匹配成功,则执行此节点 apply 子句;否则,进行下一节点。

deny:指定 Route-Policy 节点的匹配模式为拒绝。如果路由与节点所有的 if-match 子句匹配成功,则该路由将被拒绝通过;否则进行下一节点。

node

指定 Route-Policy 的节点号。整数形式,取值范围是 0~65535;

Route-Policy 由单个或多个 Node(节点)构成,按照编号从小到大的顺序排列。Node 间的关系为“或”,Route Policy 根据 Node 编号,大小从小到大顺序执行,当某个 Node 匹配时,将不会继续向下匹配。

if-match / apply

每个 Node 由条件语句(匹配条件,if-match)执行语句(执行动作,apply)组成。每个 Node 可包含多个 if-match,在 Node 内的多个 if-match 间的关系为“与”,即匹配所有条件语句才会执行本节点内的动作。

if-match 子句:定义该节点的匹配条件。通常是对 ACL、IP Prefix 的引用;

apply 子句:定义针对被匹配路由执行的操作。Permit 时,才使用 apply 子句,否则 apply 是无意义的。apply 用来为路由策略指定动作,用来设置匹配成功的路由的属性。在 Node 中,如果没有配置apply子句,则该节点仅起过滤路由的作用。如果配置一个或多个apply子句,则通过节点匹配的路由将执行所有apply子句。

匹配顺序

虽然 Route Policy 默认拒绝通过(但是这仅限于在路由过滤时生效。如果在 [OSPF] preference 中修改属性,则 Route Policy 仅用于匹配和执行规则,而不会触发路由过滤)

配置命令

// 创建路由策略并进入Route-Policy视图。
[Huawei] route-policy route-policy-name { permit | deny } node node

// (可选)配置if-match子句
[Huawei-route-policy] if-match ?
  acl		匹配基本ACL
  cost		匹配路由信息的cost
  interface	匹配路由信息的出接口
  ip-prefix	匹配前缀列表
  ……
  
// (可选)配置apply子句
[Huawei-route-policy] apply ?
  cost				设置路由的cost
  cost-type {type-1 | type-2}		设置OSPF的开销类型
  ip-address next-hop		设置IPv4路由信息的下一跳地址
  preference			设置路由协议的优先级
  tag				设置路由信息的标记域
  ……