RIP学习笔记

RIP V1&RIP V2比较

V1安全

V2网络

有类(传递路由没有掩码)ide

无类spa

广播更新设计

组播更新3d

FLSM(定长子网掩码)orm

VLSM(变长)blog

v1收到路由的路由器以ip报文里的源IP做为下一跳接口

携带tag,subnet,next-hop进程

 

支持路由聚合,CIDR,认证

UDP 520

UDP 520

RIPv1报文结构

clip_image002[4]

l  有类别路由协议(不携带子网掩码)

l  广播更新

l  基于UDP,端口号为520(UDP,不可靠传输。ipv6使用521,RIPNG)

l  FLSM

RIPv1报文结构

l  RIP每条消息包含两个部分,分别为Header和Route Entries。其中Header包含Command和Version。Route Entries最多包含25个路由条目,每一个路由条目包含Address Family Identity、路由可达的IP地址和跳数(metirc)。

l  报文格式各个字段解释以下: 

n   Command:取值1或2,当取值为1时表示该消息为请求消息;当取值为2时表示该消息为响应消息。

n  Version:当取值为1时表示该消息为RIPv1消息;当取值为2时表示该消息为RIPv2消息。

n  Address Family Identity:对于IPv4协议,该字段取值为2。当该消息是对整张路由表的请求消息时,该字段取值为0。

n  IP Address:该字段表示路由的目的地址。这一项能够是网络地址、主机地址

n  Metric:该字段是指RIP中的跳数。虽然该字段取值范围为0-2^32,可是在RIP中,该字的取值范围为1-16。

v1request报文

clip_image004[4]

v1response报文

clip_image006[4]

RIPv1特色

RIP是一个基于UDP的路由协议,而且RIPv1的数据包不能超过512字节(RIP报文头部占用4个字节,而每一个路由条目占用20八位组字节。所以,RIP消息最大为4+(25*20)=504个字节(即最大25条路由,若是启用认证为24条路由),再加上8个字节的UDP头部,因此RIP数据报的大小(不含IP包的头部)最大可达512个字节。)。RIPv1的协议报文中没有携带掩码信息,因此RIPv1在处理数据包时会根据主类网段掩码或者接口地址掩码处理数据包。所以RIPv1没法支持路由聚合,也不支持不连续子网。RIPv1的协议报文中没有验证字段,因此RIPv1也不支持验证。

为何最大可达512个字节:RIPv1开发出来主要的目的是做为ARPA net的路由协议,而在那个时候SLIP、串行链路、拨号链路、T1链路等低速链路是最为广泛的,这些链路的MTU也就是500 - 600 Byte不等,因此不能用以太网的MTU来衡量了。

RIPv2报文结构

clip_image008[4]

l  无类别路由协议(携带子网掩码)

l  组播更新,组播地址224.0.0.9

l  基于UDP,端口号为520

l  支持外部路由Tag; 支持路由聚合和CIDR;支持指定下一跳;支持认证

l  VLSM

RIPv2报文结构

l  lRIPv2的报文格式的基本结构和RIPv1相同。RIPv2使用了RIPv1中部分未用字段以提供扩展功能。

l  报文格式部分字段解释以下:

n  Route Tag:用于标记外部路由或者路由引入到RIPv2协议中的路由。

n  Subnet Mask:用来标识使用IPv4地址的网络和子网部分。

n  Next Hop:表示比通告路由器地址更好的下一跳地址。若是该字段为0.0.0.0,则说明通告路由器地址为最优下一跳地址。

n  当RIPv2配置认证时,RIPv2会对报文第一条Route Entries进行修改。具体修改以下

u  Address Family Identity字段改成0XFFFF。

u  Route Tag字段改成Authentication Type字段。

u  IP Address、Subnet Mask、Next Hop和Metric会变为口令字段。

RIPv2相较RIPv1的改进包括以下几点

l  支持外部路由标记(Route Tag),能够在路由策略中根据Tag对路由进行灵活的控制。

l  实际上不一样RIP进程间相互引入路由也可使用Tag。 

l  报文中携带掩码信息,支持路由聚合和CIDR。

l  支持指定下一跳,在广播网上能够选择到最优下一跳地址。

l  支持以组播方式发送更新报文,只有运行RIPv2的设备才能收到协议报文,减小资源消耗。

l  支持对协议报文进行验证,加强安全性。

在多于两台设备组建的广播网络环境中,Next Hop字段会发生变化,从而使路径最优。

MD5认证明际上是把路由表项和共享密钥进行与运算,而后路由器将运行运算结果和路由条目发送给对端邻居。

v2request报文

clip_image010[4]

v2response报文

clip_image012[4]

RIP主要使用三个定时器

l  更新定时器:它定时触发更新报文的发送,更新周期默认为30。(实际25.5-30之间)

l  老化定时器:RIP设备若是在老化时间内没有收到邻居发来的路由更新报文,则认为该路由不可达。老化定时器超时后,该路由条目设置为16。180

l  垃圾收集定时器:若是在垃圾收集时间内(默认为更新定时器的4倍,即120),不可达路由没有收到来自同一邻居的更新,则该路由将被从路由表中完全删除。

三个定时器之间的关系

l  RIP 的更新信息发布是由更新定时器控制的,默认为每30 秒发送一次。 

l  每一条路由表项对应两个定时器:老化定时器和垃圾收集定时器。当学到一条路由并添加到路由表中时,老化定时器启动。若是老化定时器超时,设备仍没有收邻居发来的更新报文,则把该路由的度量值置为16(表示路由不可达),并启动垃圾收集定时器。若是垃圾收集定时器超时,设备仍然没有收到更新报文,则在路由表中删除该条目。

注意事项

l  若是在没有触发更新的前提下,一个路由表项最多须要300秒才能被删除(老化时间180+垃圾收集时间120)。

l  若是存在触发更新,那么一个路由条目最多须要120秒才能被删除(即为老化时间)。

clip_image014[4]

水平分割

水平分割指的是RIP从某个接口学到的路由,不会从该接口再发回给邻居设备。

特殊状况:在帧中继和X.25等NBMA网络中,水平分割功能缺省为禁止状态

做用:RIP采用水平分割不但减小了带宽消耗,还能够防止路由环路。

clip_image016[4]

毒性逆转

毒性逆转指的是RIP从某个接口学到路由后,将该路由的开销设置为16(即指明该路由不可达),并从原接口发回邻居设备。

若是同时配置了毒性逆转和水平分割,则只使用毒性逆转功能

做用:利用毒性逆转,能够清除对方路由表中的无用路由。

现实状况:缺省状况下不使能毒性逆转。通常状况下,在华为设备中均使能水平分割(除NBMA网络外)而禁用毒性逆转。

水平分割和毒性逆转的差异:水平分割和毒性逆转都是为了防止RIP中的路由环路而设计的,可是水平分割是不将收到路由条目再按“原路返回”来避免环路,而毒性逆转遵循“坏消息比没消息好”的原则,即将路由条目按“原路返回”,可是该路由条目被标记为不可达(度量值为16)。

clip_image018[4]

触发更新

触发更新是指路由信息发生变化时,当即向邻居设备发送触发更新报文,通知变化的路由信息。

触发更新不会触发接收路由器重置本身的更新定时器

l触发更新缩短了收敛时间,触发更新能够缩短网络收敛时间,在路由表项变化时当即向其余设备广播该信息,而没必要等待定时更新。若是没有触发更新,缺省状况下,失效的路由条目会在路由表停留最多300秒(老化定时器+垃圾收集定时器)

下一跳地址不可达,不会触发触发更新

clip_image020[4]

路由聚合

l  RIPv2支持路由聚合(仅RIPv2支持路由聚合),由于RIPv2报文携带掩码位,因此支持子网划分。在RIPv2中进行路由聚合可提升大型网络的可扩展性和效率,缩减路由表。

l  基于RIPv2进程的有类聚合即实现自动聚合。

l  基于接口的聚合即实现手动聚合。

l  若是被聚合路由携带了Tag,那么路由聚合发生以后,Tag信息将被清除。

l  rip summary-address ip-address mask [ avoid-feedback ] 增长avoid-feedback是为了聚合后从接口发送给对端后,接口不在收相同的聚合路由(防止路由环路),其余友商可能会在聚合后生产一条null0的黑洞路由有相同效果。

工做过程分析

l  初始状态:路由器开启RIP进程,宣告相应接口,则设备就会从相关接口发送和接收RIP报文。进程初始启动发送request(能够单播、组播、广播,v1默认单播,v2默认组播),后面都是response报文(能够单播,组播,广播,v1默认广播,v2默认组播,能够手动设置为单播)

l  构建路由表:路由器依据收到的RIP报文构建本身的路由表项。

l  维护路由表:路由器每一个30发送更新报文以维护本身的路由表项。

l  老化路由表项:路由器为将本身构建的路由表项启动180的定时器。180秒内,若是路由器收到更新报文,则重置本身的更新定时器和老化定时器。

l  垃圾收集表项:若是180秒事后,路由器没有收到相应路由表项的更新,则启动时长为120的垃圾收集定时器,同时将该路由表象的度量置位16

l  删除路由表项:若是120以后,路由器仍然没有收到相应路由表象的更新,则路由器将该表相删除。

clip_image022[4]

 

RIP v1发送规则

注意发送时没有子网掩码。

将要发送前缀路由和出接口网段匹配:

1.      若是不在同一主网,此为主网边界,将前缀自动汇总为有类网络号,发送前缀到出接口;

2.      若是在同一主网,检查要发送的前缀是否为32位掩码:

a)     若是是,发送32为前缀到出接口;

b)     若是不是,检查前缀和出口掩码是否相同:

                 i.          若是不一样,抑制发送或者汇总为主网络号;

               ii.          若是相同,没有边界,发送正确前缀到出口。

RIP v1接受规则

收到一个前缀后

3.      若是发现是主网络号,直接放入路由表,掩码是8/16/24;

4.      若是不是主网络号,检查是否与接口在同一主网:

a)     若是不在,生成有类路由,掩码按有类路由计算,放入路由表;

b)     若是在同一主网,用接口掩码去掩,而后检查该前缀是不是网段地址仍是主机地址:

                 i.          若是是网段地址,生成路由,掩码等于本身的接口掩码,放入路由表;

               ii.          若是掩出来发现不是网段地址,就默认是主机,生产32位主机路由,放入路由表。

 

clip_image024[4]

R1发送路由解析:

5.      10.2.2.2:同一主网且掩码为32位

6.      10.3.3.0:同一主网,相同掩码,发送24位前缀

7.      10.0.0.0:同一主网,不一样掩码,汇总为主网络号

8.      192.168.1.0:不一样主网,自动汇总为有类网络号

9.      172.16.0.0:不通主网,自动汇总为有类网络

R2接受路由解析:

10.   10.2.2.2/32:前缀不是主网络号---是同一主网---掩出后不是网段地址---默认主机路由

11.   10.3.3.0/24:前缀不是主网络号---是同一主网---等于接口掩码

12.   10.0.0.0/8:主网络号匹配

13.   192.168.1.0/24:主网络号匹配

14.   172.16.0.0/16:主网络号匹配

silent-interface :RIP开启后只接受不发送,OSPF是收发都禁止。

silent-interface+指定peer实现单播更新,

若是只配置指定peer,那么v1既发单播又发广播,v2既发单播又发组播

排错:

15.   检查接口是否在RIP中使能

16.   检查对方发送版本号和本地接口接收的版本号是否匹配

17.   检查在RIP中是否配置了策略,过滤掉收到的RIP路由:

18.   RIP使用的端口520是否被禁用

19.   检查接口是否配置了undo rip input/output或者rip metricin设置度量值多大

20.   检查接口是否配置了抑制接口

21.   检查路由度量值是否大于16

22.   检查链路两端的接口认证方式是否匹配:若是报文认证失败,则需正确配置

clip_image026[4]

相关文章
相关标签/搜索