RIP协议
RIP协议
- RIP协议
- 一、什么是RIP协议
- 二、特性
- 三、工作原理
- 四、版本
- 五、报文格式
- 六、攻击手段
- 七、案例
RIP协议
一、什么是RIP协议
RIP(Routing Information Protocol,路由信息协议)是一种内部网关协议(IGP),主要用于小型局域网或园区网中实现路由器之间的路由信息交换,帮助网络设备动态学习和维护路由表,确保数据包能高效转发到目标网络。
二、特性
- 简单易配置:协议逻辑简单,路由器厂商(如 Cisco、华为)均提供成熟的默认配置,适合小型网络快速部署。
- 兼容性强:几乎所有主流路由器都支持 RIP,不同品牌设备间可无缝互通。
- 低资源消耗:对路由器的 CPU、内存需求较低,适合性能有限的入门级设备。
- 跳数限制导致网络规模小:最大跳数为 15,无法支持超过 15 个路由器的大型网络(如跨地域企业网)。
- 收敛速度慢:依赖周期性更新,拓扑变化后需等待多个周期才能让全网路由一致,可能导致短期数据包丢失。
- 易产生路由环路:距离向量算法的固有缺陷,需通过 “水平分割”“毒性反转” 等机制缓解(但无法完全避免)。
- 带宽浪费:RIP v1 的广播更新会占用全网带宽,即使是不需要路由信息的设备也会接收报文。
三、工作原理
RIP 基于距离向量算法(Distance-Vector Algorithm),核心逻辑是 “向邻居宣告自己知道的路由,同时从邻居那里学习新路由”,具体流程如下:
- 路由度量(Metric):RIP 用 “跳数(Hop Count)” 衡量路由距离 —— 直连网络的跳数为 0,通过 1 个路由器到达的网络跳数为 1,以此类推,最大跳数限制为15(跳数 16 被视为 “不可达”)。
- 邻居发现与更新:
- 路由器启动后,会先将直连网络的路由信息写入自身路由表。
- 每隔30 秒,路由器会向所有邻居(直连的其他路由器)发送完整的路由表副本(“路由更新报文”)。
- 收到邻居的更新后,路由器会对比自身路由表:若邻居提供的路由 “跳数更短”,则更新本地路由;若跳数相同,保留原路由;若跳数更长,则忽略该更新。
- 收敛过程:当网络拓扑变化(如链路中断)时,路由器会通过 “触发更新” 快速告知邻居,而非等待 30 秒周期,最终让整个网络的路由表趋于一致(此过程称为 “收敛”)。
四、版本
目前主流的 RIP 版本为 v1 和 v2,两者核心功能一致,但存在关键差异:
特性 | RIP v1 | RIP v2 |
---|---|---|
子网掩码支持 | 不支持(默认使用主类网络掩码) | 支持(携带子网掩码,支持 VLSM) |
路由认证 | 无 | 支持明文 / MD5 认证,提升安全性 |
更新方式 | 广播(255.255.255.255) | 组播(224.0.0.9),减少带宽消耗 |
路由标记 | 无 | 支持标记路由,便于路由策略控制 |
RIP 通过 4 个定时器控制路由更新和失效逻辑:
- 更新定时器:默认 30 秒,触发路由器发送路由更新报文。
- 无效定时器:默认 180 秒,若超过此时间未收到某路由的更新,标记该路由为 “不可达”。
- 刷新定时器:默认 240 秒,若无效定时器到期后仍无更新,删除该路由条目。
- 抑制定时器:默认 180 秒,避免路由频繁震荡(某路由失效后,短期内不接受同跳数的新更新)。
五、报文格式
RIP是基于UDP,端口520的应用层协议
六、攻击手段
七、案例
- RIP的度量值与带宽的问题
- 环路的产生