If-match子句用来定义路由策略的匹配条件,匹配对象是路由策略过滤器和路由信息的一些属性。
在一个路由策略节点中,如果不配置if-match子句,则表示路由信息在该节点匹配成功。如果配置一条或多条if-match子句,则各个if-match子句之间是“与”的关系,即路由信息必须同时满足所有if-match子句,才算该节点匹配成功。
但命令if-match as-path-filter、if-match community-filter、if-match extcommunity-filter、if-match interface和if-matchroute-type除外,这五个命令的各自if-match子句间是“或”的关系,与其它命令的if-match子句间仍是“与”的关系。
例如在一个节点中配置多条if-match as-path-filter子句,则if-match as-path-filter子句间是“或”的关系,与其它命令的if-match子句间仍是“与”的关系。
说明:
if-match子句匹配未配置的过滤器时,默认该if-match子句匹配成功。
对于同一个路由策略节点,命令if-match acl和命令if-matchip-prefix不能同时配置,后配置的命令会覆盖先配置的命令。
修改包括多条if-match子句相互配合的路由策略时,建议配置路由策略生效时间,否则不完整的策略会造成路由振荡。