lord999 发表于 2013-7-13 09:59:21

关于RIP的两个局限性的解释

RIP算是很老的协议了,但是在现在还在用在windows server 里就还有rip的配置。
RIP有两个基本局限性,一个是“不支持不连续子网”,一个是“不支持vlsm和cidr”。

第一个““不支持不连续子网”, 这句话实际上因该算是rip v1的一个现象。
直接上图

看图说话,不连续子网是因为RIP不支持cidr或vlsm的一个现象而非一个定义来理解。
图上1.1.1.0/25和1.1.1.128/25的两个网段被10.0.0.0 /24和12.0.0.0/24 阻隔了。由于不支持cidr或vlsm
所以在R1上会默认一条负载均衡(边界主类汇总的结果)。 发数据包的时候会一下左,一下右。

至于不支持vlsm和cidr,要灵活理解。比如


这种情况下,所有的地址都是变长掩码的,那么根据书里说的不支持变长掩码,这时候都应该是主类汇总才对,路由表里应该有负载均衡的条目出现。
不过根据实际路由表发现不是这样,实际情况是路由表“灰常”正确的表示了路由。 甚至还告诉你是“/29”的掩码。 神奇!

原因:
看看debug


发现和书里说的一样是不带掩码的。 那R2的掩码哪里来的? 其实RIPv1 认为收到的子网信息是和自己网络位是相同的, 那就是说
如果R3,R4 发来的更新路由条目,R2会把他们的地址和自己的掩码做个计算,算出网络号。所以我们看到的就是“/29”的vlsm了。

那怎么证明不支持vlsm啊?
再来试试看
这么连起来(不能上传截图了,到了上限!!晕)

   (1.1.1.65/29)R4(1.1.1.130/30) -------(1.1.1.129/30) R2(1.1.1.133/30)---------(1.1.1.134/30) R3(1.1.1.17/29)


这样启动RIP看看R2的路由表(记得清空一下路由表)

   1.0.0.0/30 is subnetted, 2 subnets
C       1.1.1.128 is directly connected, FastEthernet0/0
C       1.1.1.132 is directly connected, FastEthernet1/0

R2没法学到R4和R3环口的路由了。1.1.1.65/29 和1.1.1.17/29不见了。

原因,debug看看R3

*Mar1 01:34:48.935: RIP: sending v1 ** to 255.255.255.255 via FastEthernet0/0 (1.1.1.134) - suppressing null **

意思是R3抑制了空更新。 原因:在发出更新的时候,R3环口的掩码和出口的掩码不一致(/29和/30),RIP 不会发送
不一致的主类网络路由更新!

所以R2 只能 “收到” 两条直连而已。

这就是R1不支持不连续子网和不支持vlsm的意思啦。 有问题讨论下。


victor_huang 发表于 2013-7-13 11:32:53

RIPv1
发原则:
1、同类发明细,异类发汇总。
    【路由边界:将要发出的路由和出接口进行比较:是否是同一个主类,是同一个主类(A类看一个段,B类看两个段,C类看三个段)则明细,不是则汇总)】
2、发出的路由和接口在同一主类网络,如果跟出接口的子网掩码相同就可发出去,不同就不能发出去。
3、如果是32位主机路由,不受上面第二条约束,直接发出
收原则:
1、如果收到的路由与入接口在同一主类网络,就以入接口的子网掩码去匹配,如果匹配时发现主机位有1,则将其做主机路由放入路由表。
2、收到的路由与入接口不在同一主类网络,且自己路由表中并无此路由子网就以此路由主类掩码去匹配。

3、收到的路由与入接口不在同一主类网络,但路由表中有此路由子网,就不接受。

tea 发表于 2013-7-13 13:35:13




页: [1]
查看完整版本: 关于RIP的两个局限性的解释