HCIE双点双向引入的分析

场景介绍:AR1、AR2、AR3、AR5运行OSPF协议,区域ID为0,AR1、AR2、AR4之间运行IS-IS协议,使用Level-2区域。
AR5将自己的Loopback0接口做为外部路由引入到OSPF区域中

步骤一:在AR1上做双向引入后的结果:

观察AR2的路由表如下:

AR2的路由表
AR2访问5.5.5.5的路径

根据上图得知,AR2上访问5.5.5.5是通过IS-IS协议,访问路径为AR2->AR4->AR1->AR3->AR5。这个时候是次优路径,并且可以正常访问。

步骤二:在AR2上也同样做双向引入

观察AR3的路由表:

根据AR3的路由表得知,AR3可以学习到两条5.5.5.5的路由,并且分别从AR5和AR2学习到的。其中一条AR5引入到OSPF中学习,AR2的是通过IS-IS区域引入OSPF产生。并且AR3上存在两条5.5.5.5的路由,发生了路由回灌的现象,AR2将从IS-IS学习到的5.5.5.5的路由又通告回了OSPF区域中,因此AR3上存在两条5.5.5.5的路由。

如果此时AR5发生故障,则会产生临时环路。
AR2和AR3的路由表:

此时访问5.5.5.5,则发生环路。如AR2访问5.5.5.5路径为AR4->AR1->AR3->AR2-AR4->AR1->AR3如此反复下去。

环路的解决方式(扩展性最好的方式):

通过Tag方式解决:
AR1,OSPF引入IS-IS的时候打上TAG=100
AR1,IS-IS引入OSPF的时候打上TAG=200
AR2,OSPF引入IS-IS的时候打上TAG=300
AR2,IS-IS引入OSPF的时候打上TAG=400

操作步骤:
在AR1上,将OSPF引入到IS-IS的时候,deny掉TAG=400,打上TAG=100
在AR1上,将IS-IS引入到OSPF的时候,deny掉TAG=300,打上TAG=200
在AR2上,将OSPF引入到IS-IS的时候,deny掉TAG=200,打上TAG=300
在AR2上,将IS-IS引入到OSPF的时候,deny掉TAG=100,打上TAG=400
并且需要修改AR1和AR2上的OSPF外部路由的开销是,修改比IS-IS协议优先级更优,比如修改为10,这里解决次优路径的问题。
在AR1上针对TAG=400的路由做OSPF外部优先级的修改,也就是AR2从IS-IS引入到OSPF的路由
在AR2上针对TAG=200的路由做OSPF外部优先级的修改,也就是AR1从IS-IS引入到OSPF的路由

配置脚本如下:

AR1:
route-policy ospf_isis deny node 10       
  if-match tag 400
 #
 route-policy ospf_isis permit node 20 
  apply tag 100 
 #
 route-policy isis_ospf deny node 10 
  if-match tag 300
 #
 route-policy isis_ospf permit node 20 
  apply tag 200 
 #
route-policy ospf_pref permit node 10 
 if-match tag 400
 apply preference 150 
#
ospf 1 router-id 1.1.1.1 
 import-route isis 1 route-policy isis_ospf
  preference ase route-policy ospf_pref 10 
#
isis 1                                    
 import-route ospf 1 route-policy ospf_isis 
AR2:
#
route-policy ospf_isis deny node 10       
 if-match tag 200
#
route-policy ospf_isis permit node 20 
 apply tag 300 
#
route-policy isis_ospf deny node 10 
 if-match tag 100
#
route-policy isis_ospf permit node 20 
 apply tag 400 
#
route-policy ospf_pref permit node 10 
 if-match tag 200
 apply preference 150 
#
ospf 1 router-id 2.2.2.2 
 import-route isis 1 route-policy isis_ospf
 preference ase route-policy ospf_pref 10 
#
isis 1                                    
 import-route ospf 1 route-policy ospf_isis 

配置完毕后,可以解决环路和次优路径的问题

AR1和AR2的最终路由表:

AR1路由表
AR2路由表

总结:该拓扑中,如果不做任何控制的情况下直接进行双点双向引入,会产生路由环路、次由路径、路由回灌的情况发生。通过标记TAG和修改OSPF优先级的方式可以解决该问题。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据