多个路由器间相互重分发路由-应用技巧

王朝数码·作者佚名  2010-05-19
宽屏版  字体: |||超大  

如果需要在多个路由器间重分发两种路由协议,会出现一些潜在的问题。比如说,在重分发路由器上,它们同时会学习到某个子网的两种路由协议,如果该路由器使用AD来确定哪条是最佳路由,往往会造成某些次优路径。具体可以看看下面的实例:

路由器配置:

1)R1的配置

router ospf 1

router-id 1.1.1.1

redistribute rip subnets

network 10.1.15.1 0.0.0.0 area 0

!

router rip

redistribute ospf 1

network 10.0.0.0

default-metric 1

2)R3的配置:

router ospf 1

router-id 3.3.3.3

redistribute rip subnets

network 10.1.34.3 0.0.0.0 area 0

!

router rip

redistribute ospf 1

network 10.0.0.0

default-metric 1

在上图中,R3通过来自R2的RIP更新会学习到子网10.1.2.0/24,与此同时,R1会将学习到的RIP路由重分发到OSPF域中,这样R3会通过OSPF再学习到一条到10.1.2.0/24的路由。如果R3选择管理距离最小的路由,那么由于OSPF的AD(110)比RIP的AD(120)小,所以它会选择OSPF的重分发路由,显然这不是我们所希望的结果。实际上,这种情况会在R1和R3的每一RIP子网上都可能出现。要解决类似的问题,路由器必须知晓每条路由具体来自什么路由协议域。

一种简单并有效地解决方案是用高AD来标记重分发的路由,从而可以让路由器作出正确的选择。就上面的问题而言,在router ospf进程下增加一条distance ospf external 180命令就可以了。注意,EIGRP本身就支持这样的方案,它对外部路由使用的AD为170,而内部路由使用的值是90。虽然这种方案看上去不错,但也可能有问题,比如说,如果R4注入了一些有效的OSPF外部路由(不是重分发路由),此时按这种方案的配置,因为OSPF外部路由的AD值大,所以路由器会选择经由RIP域的次优路由。这个问题提醒我们,不能对所有外部路由的AD值都增大。幸运的是,distance路由子命令可以针对来自特定路由器的路由进行AD值调整,其格式如下:

distance {distance-value ip-address {wildcard-mask} [ip-standard-list] [ip-extended-list]}

该命令可以设置AD值,广播该路由的路由器IP地址,以及匹配路由的ACL。还是看上面的例子,通过使用完整格式的distance命令,可以对路由器增加如下配置:

1)R1的配置:

router ospf 1

distance 179 3.3.3.3 0.0.0.0 only-rip-routes

!

ip access-list standard only-rip-routes

permit 10.1.12.0

permit 10.1.3.0

permit 10.1.2.0

permit 10.1.23.0

2)R3的配置:

router ospf 1

distance 179 1.1.1.1 0.0.0.0 only-rip-routes

!

ip access-list standard only-rip-routes

permit 10.1.12.0

permit 10.1.3.0

permit 10.1.2.0

permit 10.1.23.0

第一页    上一页    第1页/共2页    下一页    最后页
第01页 第02页 
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有