ospf下发缺省路由引发故障

发布时间:  2012-07-26 浏览次数:  80 下载次数:  0
问题描述
某地市城域网部分客户投诉某晚某时间段不能上网,客户类型几乎包括了所有类型的上网用户。那天晚上正好该地市一台核心层路由器更换单板,并且根据用户投诉电话的时间也与升级更换时间段吻合。该地市核心使用2台路由器,当只有一台路由器升级的时候流量应该可以全部从另外一台路由器出地市,不应该出现大量用户不能上网的现象。升级完毕后一切恢复正常。
告警信息

处理过程
将两台核心路由器的ospf下发缺省路由方式改为非强制下发模式。如此一来,当上行链路失效,故障路由器会使用另一台核心路由器学习到的ospf缺省路由,并不再下发缺省路由,当两条链路均失效,也不下发缺省路由,上述路由环路及非最优路径的问题均得到解决。
根因
当地核心层使用两台路由器互联,汇聚层路由器通过双上连链路分别与两台核心路由器建立ospf邻接关系。当天只更换了一块单板,该单板通过GE链路分别与省干路由器以及当地另外一台地市核心路由器相连接,而与汇聚层路由器连接的单板并未更换。汇聚层路由器通过从核心路由器学习到的ospf下发缺省路由指导流量。后经检查核心路由器配置,发现其下发缺省路由是使用的强制下发方式,通过对协议行为的分析,当路由器的连接省干以及另外一台核心路由器的链路同时中断,路由器就失去了通过其他协议学习到的缺省路由,包括从省干以及另一台核心路由器通过BGP下发的缺省路由,但由于是强制发布,该路由器依然向汇聚层路由器下发一条指向自己的缺省路由,而同时该路由器又通过汇聚层路由器学习到一条缺省路由(汇聚层路由器通过另外一台核心路由器学习到)。由于汇聚层路由器会使用基于流的方式负载均衡,部分流量会流向更换单板的核心路由器,而该路由器又会把流量重新发送回汇聚层设备,由此形成路由环路,导致部分用户不能上网的问题。由此分析,如果某台核心路由器连接省干的链路故障,而核心的互联没有问题,就不会出现用户不能上网的问题,但部分流量会经过多一跳,最终所有流量还是通过一台无故障的上行链路到省干,这显然也不是一种最佳的流量模型。
建议与总结

END