最近在天涯上看到这样一段话来描述RIP协议(RIPv1)的路由通告过程:
  
   如果一个子网的路由通告信息需要在另一个子网内通过:
  一、首先比较两者是否为相同的主类网络;如果是,则比较信息的入接口和出接口的网络掩码是否相同,如果不同则丢弃,如果相同,则传递出去;
  二、如果隶属于不同的主类网络,则把该子网汇总为主类网络然后传递出去; 如果传来的路由信息本身就是主类网络,而出口属于这个主类网络中的一个子网,则丢弃这个主类网络。
 
      虽然就几句话很简单,不过却深藏RIP协议的精髓(个人觉得这段话也不够好理解,还是用实验来理解吧)。下面给大家贴两个图,大家可以用上面的理论来分析下所得的路由表是否如图所示:
1、VLSM划分的连续网络
       我是这样分析的:各个网络都在主类网络192.168.1.0/24之中,所以用理论“一”来分析R0、R2都能获取netmask为/30的网络,不过互相不能获取对方的Loop0路由,且RI也不能获取任何Loop0的路由,此皆印证了“比较信息的入接口和出接口的网络掩码是否相同,如果不同则丢弃”,简单理解就是收到的路由条目与接收端口所在网络的掩码不同则丢弃该路由条目不予更新;从标准的理论来理解也是如此“有类路由协议RIP更新不通告掩码,因此与接收端口的网络掩码比较后,相同则更新路由表,不同则丢弃”。
2、不连续的有类网络
        存在两个主类网络192.168.1.0/24和172.16.0.0/24,则用理论二分析:左右两边的172.16.0.0网络需要通过192.168.1.0网络传递更新,则需要进行汇总,汇总后皆为172.16.0.0/16,Router2的172.16.3.0汇总后到达Router1发现接口上已存在172.16.2.0遂将其丢弃;左边传来的更新同样被Router2丢弃。Router1汇总后的192.168.1.0/24到达Router0发现路由端口(除接收更新的端口外)不存在该主类网中的任一子网,遂更新路由表。
 
       本人最近在学习CCNA,RIP路由过程花了很多时间都没有弄明白,网络上大部分都是针对不同的网络情况进行相应的分析总结,不过那样很难记忆,而这个理论能适应不同的网络进行正确的RIP路由分析(不敢说都对,99%应该还是有的),很感谢天涯上面的那位兄弟。
        这是我在51CTO上的第一篇博文,希望写得不好的地方各位同仁多多包涵,往后有什么问题也需要大家的帮助!嘿嘿、、、、、
 
2010-11-01 10:46
发现了一个概括得比较好的RIPv1发送更新原则: