有2个路由器连接如下:

Network1 ----- (172.16.1.1/24) Router 1 (172.16.3.1/30) ------ (172.16.3.2/30) Router 2 ------ (172.16.2.1/24) Network 2


我尝试使用RIP协议添加用于动态路由的地址,对于路由器1添加172.16.1.0和172.16.3.0对于路由器2 172.16.3.0和172.16.2.0,但在两种情况下默认情况下它们均被分配为172.16.0.0,并且不起作用。有什么建议吗?

#1 楼


在这两种情况下,它们默认都分配为172.16.0.0,并且不起作用


我修改了ascii art lite以减少滚动。听起来您是说无法从N2到达N1 ...

Broken RIPv1 topology
=====================

N1 ---- (172.16.1.1/24) R1 (172.16.3.1/30) ----- (172.16.3.2/30) R2 ----- (172.16.2.1/24) N2


经典的路由协议概述

RIPv1是经典的路由协议...这样,它不会在通告时将网络掩码与路由关联。有类的路由协议会​​执行一些非直觉的事情...


它们仅将掩码匹配的接口发布路由(这是您的问题)
它们会在摘要中自动汇总网络边界(请参见下面的奖励材料)

接口网络掩码

要使拓扑正常工作,除非使用无类路由,否则掩码必须在所有RIPv1接口上匹配协议(例如RIPv2,EIGRP,OSPF或ISIS)。如果需要使用RIPv1,则重新配置拓扑,以使所有接口都具有匹配的掩码,如下所示...

br />
由于这也容易使人绊倒,因此我提供了一个RIPv1自动汇总动态的示例。

当我在下面提到主要网络边界时,我所谈论的是Class A,Class B和Class C IPv4网络的经典定义...


Class A(8位网络掩码):1.0.0.0/8-127.0.0.0/8
B类(16位网络掩码):128.0.0.0/16-191.255.0.0/16
C类(24位网络掩码):192.168.0.0/24-223.255.255.0/24

继续进行RIPv1自动汇总示例...为了简单起见,我将使用匹配的/ 24接口网络掩码。

Functional RIPv1 topology
=========================

N1 ---- (172.16.1.1/24) R1 (172.16.3.1/24) ----- (172.16.3.2/24) R2 ----- (172.16.2.1/24) N2


R1和R2通过1.0.0.0/8主网络的子网连接,因此1.1.1.0/24和1.1.2.0/24在R1和R2之间发布;但是,R2和R3之间的链接不在1.0.0.0/8中,因此R2执行1.0.0.0/8子网和172.16.0.0/16子网的自动汇总。

汇总了一个主要网络,它们被汇总的路由隐藏了...这发生在R2,当1.1.1.0/24和1.1.2.0/24汇总为1.0.0.0/8时。思科路由器无法在RIP版本1下禁用自动汇总(但它们可以用于RIPv2)。

评论


如果我将两个掩码都从/ 30更改为/ 24,是否意味着172.16.0.0应该是两个路由器上的RIP地址?

–随机42
13年6月2日在20:09

您应该在路由器rip下使用网络172.16.0.0,此配置将起作用

–迈克·彭宁顿
2013年6月2日20:17

有用;谢谢!

–随机42
2013年6月2日20:40

希望我能多次投票赞成。这是一个奇妙的书面答案。辛苦了有什么东西可以用来制作那些ASCII图(除了有很多时间和/或有很多空格)?

–约翰·詹森(John Jensen)
2013年6月5日7:10

谢谢约翰,我喜欢Java编辑器(尽管我不得不承认我只是用辛苦的方式做了)

–迈克·彭宁顿
2013年6月5日7:12

#2 楼

这不是自动摘要的情况。自动汇总仅适用于主要网络边界。因此,您需要拥有172.16.x.x和172.17.x.x或类似的东西才能汇总网络。

您将看到RIP在路由过程中仅支持分类网络。因此,即使您输入172.16.3.0,它也会将其转换为172.16.0.0。

您可以在RIP版本2中使用无类路由。在路由过程配置下,它看起来是有类的,但是它将通告路由正确。

请使用sh ip protocols检查您正在运行的版本。

如果它不起作用,那么我怀疑您正在运行版本1。