1.RIPv1
RIPv1使用本地广播地址255.255.255.255发布路由信息,默认路由更新周期为30s,持有时间为180s。即RIP路由器每30s向所有邻居发送一次路由更新报文,如果在180s之内没有从某个邻居接收到路由更新报文,则认为该邻居已经不在了。
RIP以跳步计数为度量路由费用,15跳为最大跳数,16跳是不可到达网络,经过16跳的任何分组将被路由器丢弃。
对于同一目标,RIP路由表项中默认支持4条同跳数通路,最多为6条,该机制提供了链路冗余功能,以应对可能出现的连接失效。
2.RIPv2
相比于RIPv1,RIPv2作了如下改进:1.RIPv2使用组播而不是广播来传播路由更新报文,并且采用触发更新机制,即出现路由变化时立即向邻居发送更新报文,而不必等待更新周期的到达。2.RIPv2是一个无类别的协议,可以使用可变长子网掩码(VLSM),也支持无类别域间路由(CIDR)。3.RIPv2支持认证,使用经过散列的口令字来限制路由更新信息的传播。
其他方面的特性与RIPv1相同。
3.RIP报文格式
RIPv2报文封装在UDP数据报中发送,占用端口号520,报文格式如所示。
表 1 RIPv2报文格式
命令 | 版本 | 0 | |
地址族标识符 | 路由标记 | ||
网络地址 | |||
子网掩码 | |||
下一跳路由器地址 | |||
距离(1~16) |
报文包含4个字节的报头,然后是若干个路由记录。RIP报文最多可携带25个路由记录,每个路由记录20个字节,各字段的解释如下:
- 命令:用于区分请求和响应报文。
- 版本:可以是RIPv1或RIPv2,两种版本格式相同。
- 地址族标识符:对于IP协议,该字段为2.
- 路由标记:用于区别内部或外部路由,用16位AS编号来区分从其他自治系统学习到的路由。
- 网络地址:表示目标IP地址。
- 子网掩码:对于RIPv2,该字段是对应网络地址的子网掩码;对于RIPv1,该字段是0,因为默认使用A、B、C类地址掩码。
- 下一跳路由器地址:表示下一跳的地址。
- 距离:表示到达目标的跳步数。