对“RIPv1有类路由的问题”的改正

   在以前的blog中有篇关于“RIPv1有类路由的问题”,今天在和同学讨论的时候发现自己以前写的是片面的,并且在网上找到了正确的有关有类路由协议的文章,文章如下:
以下文章转载: 思科 F5 企鹅


接收更新时,接收接口做如下检查:
如果更新是和本接口在同一主类网络下,则用本接口的MASK作为掩码,正因为如此,RIP需要是一致的掩码,否则就套错了(如果收到的是/32的主机路由更新,则接受它).
如果更新和本接口不在同一主类下,则检查路由表是否存在这个主类下的子网:
   存在,则忽略该更新.
   不存在则用主类的掩码(这里需要注意下:正常情况下更新如果不是和接收接口一个主类,则发送过来的更新就应该是个汇总的主类路由,而若两个路由器之间用的是无编号接口并包含子网信息的话,接收路由器将使用/32的主机掩码匹配这个更新).

发送更新,发送接口做如下检查:
更新是否和自己是同一主类,是的话,检查该路由的掩码是否和发送接口的掩码一致:
   一致则发送出去
  不一致,如果更新是/32的主机路由则发送更新,否则丢弃更新.
更新如果和发送接口不在同一主类,则自动汇总为主类网络发送出去.

Rtr A 在发送更新包的时候,因为 172.16.1.33/28 与发送接口 172.16.3.1/24 同在一个主网络下,但 是子网掩码不同,所以接口 172.16.3.1/24 不会向外通告 172.16.1.33/28 这一条路由。

Rtr A 在发送更新包的时候,因为 173.16.1.33/28 与发送接口 172.16.3.1/24 不在同一个主网络下, 所以接口 172.16.3.1/24 会通告一条 173.16.0.0/16 的路由。

Rtr A 在发送更新包的时候,因为 173.16.1.33/28 与发送接口 172.16.3.1/24 不在同一个主网络下, 所以接口 172.16.3.1/24 会通告一条 173.16.0.0/16 的路由,但 Rtr B 路由器在收到更新包的时候,检 查自己的路由表有一条 173.16.1.1/28 的路由,所以 Rtr B 不会接收 173.16.0.0/16 这一条路由。

从 上面可以看出,不连续子网下,R1先131.108.5.0/24汇总成131.108.0.0/16发送出去,接收的路由器因为接收接口和该路由条目不 是一个主类,所以查看路由器是否存在该更新的子网,由于存在,所以忽略更新,因而导致了不连续子网在RIP下无法正常更新.
解决的方法:
把路由器配置第二个 IP 地址,使其成为一个连继的子网。
在两边使用默认路
原文[url]http://www.norvel.com.cn/blog/user1/cn20004/archives/2006/94.html[/url]
 
更多CISCO-CASE
[url]http://www.cisco.com/en/US/tech/tk364/technologies_tech_note09186a0080093fd8.shtml#nd[/url]

Why Don't RIPv1 and IGRP Support Variable-Length Subnet Mask?

[url]http://www.cisco.com/en/US/tech/tk364/technologies_tech_note09186a0080093f1e.shtml[/url]
Don't RIPv1 and IGRP Support Variable-Length Subnet Mask?

你可能感兴趣的:(规则,更新,休闲,rip)