
距离矢量协议
RIP 内部网关协议
基于距离矢量算法(贝尔曼-福特算法) 使用跳数作为度量值
配置简单 易于维护 适合小型网络
工作原理
各路由器运行相同的RIP协议 互相发送路由更新请求 更新路由表 不能及时适应拓扑变化 直接发送路由表
路由器发送Request报文 请求邻居路由器的RIP路由 周期性发送 默认30s
运行RIP的路由器收到后会根据自己的路由表生成Response回复
源路由器收到后更新自己的路由表
RIP度量
A会看见两个信息 但是根据
最优路径 到达目的网络的下一跳为B
每经过一台设备加1 到达16失效丢弃
RIP路由表老化时间 180s 当收到相同度量值的Response时会将老化时间归0
如果不同 根据最优路径进行选择更新
超过老化时间 标记不可达 不会丢弃 再等待120s删除该条目
RIPv2 v1早期版本现在不常用
无类别路由协议
支持VLSM
支持路由聚合与CIDR
支持以广播或组播(224.0.0.9)发送报文
支持明文验证和MD5密文验证
默认组播
同一网络中那些没有运行RIP的设备可以避免接受RIP广播
避免运行RIPv1的设备接受处理RIPv2的路由信息
当R1 R2运行RIP-1,R1 R2周期性发送响应消息,封装在广播帧发送,PC收到广播帧后会根据类型字段0x0800交给网络层IP模块。IP模块会发现IP报文目的地址为广播报文,于是就根据IP报文的协议字段0x11上交给UDP模块。UDP模块发现1端口号为520,但是PC应用层不存在RIP模块,丢弃。
当R1 R2运行RIP-2,还是周期发送响应消息,封装在广播帧发送,PC收到广播帧后根据类型字段0x0800交给网络层IP模块,IP模块发现IP报文目的地址采用组播224.0.0.9,而PC没运行RIP-2,所以丢弃。
RIP-1需要到传输层才能丢弃 RIP-2网络层就可以丢弃
报文格式
Command 类型 Request 1 或者 Response 2
Version 版本号 RIP-1 RIP-2
Unused 保留 还没想好干什么
Address Family Identifier 协议族 TCP/IP 2
Route Tag 外部路由标记 比如AS编号
Ip Address IP地址
Subnet Mask 掩码
Next Hop 下一跳 谁发来的谁是
Metric 度量值
一个RIP路由器刚开机时会迅速先邻居发出请求报文
RIP1报文是不能携带子网掩码信息,所以RIP1不能支持VLSM CIDR
并且RIP1不能支持认证
认证
0XFFFF 验证项标识 表示需要验证
Authentication Type 验证类型 明文验证
MD5验证
Authentication 验证口令
RIP环路
当B将10.0.0.8发给A A记录下后 在下一个
30s时A将带有10.0.0.8的路由表发给B
同时10.0.0.8故障 但是A发来的路由条目会使
B进行学习
更新时间不固定会有时间差
水平分割 rip split-horrizon 需要手动配置
路由器从某个接口学习到的路由,不会再从该接口发出去
毒性逆转 rip poison-reverse
当B发现10.0.0.8断开,自己会立刻将这条路由metric变为16,并发给其他设备,一起转发
A收到后还会回复消息确认
触发更新
在网络发生变化时,路由器不等30s周期立刻发出更新