Skip to main content

 路由器网 > 路由器问答 >

解决多点双向路由重发布产生的问题

2012-06-06 22:55 浏览:

先看看在哪些场合会用到路由双向重分布:

场景一公司里有2个技术主管,分别管理总部和分部,水平差不多,主管A认为我这边分部路由器性能比较差,用RIP协议已经足够使用了。而总部的主管认为OSPF比较好,非要用OSPF。由于意见上的分歧导致分部使用了RIP而总部使用了OSPF,这里就需要用到路由双向重分布来解决一个公司使用了2种不同的路由协议的问题

场景二对于规模比较大的公司,收购了另外一家公司,由于原来公司使用的是OSPF协议,而被收购的公司使用的是EIGRP协议,为了防止重新部署网络而导致网络网络中断,这就导致了整合2个公司之间的网络就需要用到路由的双向重分布。

场景三这就比较偏一点了,可能由于业务上的原因,公司在一些UNIX或者linux上跑了RIP的协议,为了对接公司其它的网络而进行路由重发布(这就不是很常见了)

路由重发布有4种:

单点双向重发布

单点单向重发布

多点单向重发布

多点多向重发布

此篇博文针对多点双向重发布产生的一些问题进行分析和解决方案:

首先搭建整个所需要的环境(配置接口地址,启用路由这些民工级别的配置为了不浪费版面就不贴出来了,)在R1上对RIP和OSPF进行双向重分布:

R1(config)#router rip

R1(config-router)#redistribute ospf 1 metric 1 #注意在RIP和EIGRP这些距离矢量型的路由协议中重发布其它路由协议时一定要加上metric,不加的话默认是无穷大,重分布到RIP中要注意不能大于15,因为RIP最大跳数是16

R1(config)#router ospf 1 
R1(config-router)#redistribute rip subnets

在R3上也是如此

R3(config)#router rip

R3(config-router)#redistribute ospf 1 metric 1

R3(config)#router ospf 1

R3(config-router)#redistribute rip subnets

进行重发布后查看下每个路由器的路由表,R1的路由表:

L3JSBR){{9YS%E]4J6OH$A8

R2的路由表

PGU4E2QY034EL}ZJ5))WC)I

R3的路由表

5~~`K~909W4`I9{(UPG{J[0

R4的路由表

Y9H{6U2~3UYATWJE1$SARQA

通过对比发现以下几个问题:

问题1:在R1上,对于23.0.0.0/24网段应该是RIP内部的路由,这里却以OSPF的外部路由形式学习到了。在R3上也有问题1存在,2.2.2.0/24和12.0.0.0/24本也应该是通过RIP学习到的

问题2:在R4上,去往2.2.2.0/24网段的应该是有2个吓一跳出口的,通过R1和R3进行负载均衡的这里只学习到下一跳是124.0.0.1,通过R1走的一条路由

在这里,分析下这2个问题出现的原因:

我们知道RIP的管理距离是120,OSPF的管理距离是110,所以相对来说,RIP的管理距离要比OSPF的要高,路由器会优先选择管理距离比较低的那一个。而这里出现路由条目混乱的原因正式由于这个管理距离产生的。

我们分析下路由通告的走向:首先,在配置路由重发布之前,R1通过RIP学习到了2.2.2.0/24,12.0.0.0/24,23.0.0.0/24这三条路由,在R3上同样通过RIP学到了这3条路由,然后配置了路由重分布,事情就变得有点不一样了。先分析下R3上的问题。

我先是在R1上双向重发布了RIP和OSPF的路由。这样一来,R1就将上述3条路由通过OSPF type2,也就是在路由表上看到的OE2从F0/0通告了出去,然后R3和R4接收到了这条路由信息(OSPF中应该说是同步了数据库。这里为了形象点就这么说吧。),然后R3就开始犯傻了,因为上述3条路由它既从RIP中学习到,又从OSPF中学习到,然后一对比管理距离,发现OSPF比RIP的要小,于是就选择了通过OSPF学到的那一条,抛弃了RIP。

R1上也是同样的道理,再分析下R4上的负载均衡的问题,罪魁祸首其实还是和R1,R2同样的。

先看下2.2.2.0/24这条路由,在OSPF中,由于我是先在R1上做的双向重发布。于是这条路由是在R1上通过OSPF中通告了出去,R4自然也学习到了这条路由。而在R3上也学习到这条路由后,通过对比管理距离,将RIP中学习到的2.2.2.0/24给抛弃了,于是R3上把这条路由通告出去是已R1上学习到的通告出去的,这条路由的下一跳是R1,所以R4只收到了下一跳是R1的路由。