isis的preference命令使用不正确导致路由错误

发布时间:  2015-01-04 浏览次数:  134 下载次数:  0
问题描述

IPRAN网络配置CSG接入环成环后,网管托管,检查去往网管的路由发现存在环路。



处理过程

1. 检查环路的来源,ASG2去往网管的路由正确,为负载分担,其中一路指向ASG1。

 

ASG1上路由错误,去往网管的路由没有选择骨干域的ISIS 1000进程,而是选择了连接CSG域的ISIS进程1,指向ASG2,造成了环路。

 

 

2. 检查这台ASG上的配置,ISIS 1000进程下配置了preference 255 route-policy pref-nms,在pref-nms里对路由进行permit过滤。

 

配置这条命令的本意是,通过pref-nms过滤的路由preference修改成255,其他路由的优先级保持不变。

 

但实际结果却是把isis 1000所有的路由都变成了preference 255,都无法被优选。进程间路由选择不符合预期,错误地选择了CSG环上的网管路由。

根因

ISIS的preference配置的正确用法应该是,如果route-policy中配置了子句apply preference,则路由的优先级为:

通过匹配的路由:apply子句设定的优先级。

未通过匹配的路由:命令preference设定的优先级。

 

 

如果route-policy里面没有配置apply preference,那么无论是否通过匹配,都会被修改成进程下的preference值,即255。

解决方案

修改配置,在策略pref-nms的node节点下apply preference 255,并且修改ISIS进程下的配置为preference route-policy pref-nms。

 

这样实现的功能就是满足route-policy pref-nms的路由,preference修改成255,其他ISIS路由的优先级不改变,完整配置如下:

 

 

route-policy pref-nms permit node 1
  if-match ip-prefix ****
  apply preference 255 

 

 

isis 1000

  preference route-policy pref-nms

END