动态路由协议之RIP协议,最古老的距离矢量协议!
你好,这里是网络技术联盟站。
前两天给大家分享了静态路由协议和动态路由协议:
今天给大家介绍的是动态路由中的RIP协议,如果本文对您有帮助,可以收藏本文哦!
让我们直接开始!
什么是RIP?
RIP 英文全称:Routing Information Protocol
,中文术语:路由信息协议,是一种距离矢量路由协议,用跳数作为路由度量。
RIP 是小型网络中最常用的动态路由协议之一,RIP 通过每 30 秒向相邻路由器发送路由表详细信息来定期交换拓扑信息,它们以 UDP 数据包的形式发送,源端口号和目标端口号都设置为 520。由于最大数据报大小仅为 504 字节,因此单个数据包中最多可以宣告 25 条路由。这些相邻路由器依次将信息转发给其他路由器,直到它们达到网络收敛。RIP 跳数最大限制为 15 跳,超出此范围的任何内容都无法访问,因此,RIP 不适用于大型复杂网络。
网络收敛,百度百科有相关解释,不过看起来真的很拗口,一句话解释:网络收敛就是一个网络中所有设备更新其路由表信息,达到路由一致的过程。
RIP 跳数
默认情况下,路由器到其直连网络的跳数为 0,从一台路由器到另外一台路由器跳数加1,跳数的取值范围为 0 到 15的整数,大于等于 16 的跳数为无穷大,表示目的网络或主机不可达。
RIP 如何工作?
RIP 基于距离矢量路由算法,根据到目标网络的跳数计算路由成本,在计算路由成本时不使用其他路由指标,例如负载、带宽、延迟。
下面我们用一个例子来直观的感受一下RIP的选路规则:
案例1
如上图,R1现在要和R4进行通信,目前有三个链路:
- 链路1:R1 -> R2 -> R3 -> R4
- 链路2:R1 -> R5 -> R6 -> R7 -> R4
- 链路3:R1 -> R8 -> R4
这个时候我们可以很直观的看出每条链路的跳数:
- 链路1:3跳
- 链路2:4跳
- 链路3:2跳
看跳数最好最快的办法就是一条链路就是一跳,如下图:
那么答案毫无悬念:选择跳数最小的链路3:
案例2
案例1是链路的跳数都不一样,那加入跳数一样的情况,RIP如何选路的呢?
如上图,R1现在要和R4进行通信,目前有两个链路:
- 链路1:R1 -> R2 -> R3 -> R4
- 链路2:R1 -> R5 -> R6 -> R4
这个时候我们可以很直观的看出每条链路的跳数:
- 链路1:3跳
- 链路2:3跳
上面我们提到过,RIP在计算路由成本时不使用其他路由指标,例如负载、带宽、延迟。所以这里起到了负载均衡的作用,网络将同时向两条路由发送数据。
RIP版本
RIP 有三个版本:
- RIPv1:在 RFC 1058 中定义,有类路由协议,由 IP 目标网络和跳数指定
- RIPv2:在 RFC 1723 中定义,无类别路由协议,路由表被发送到多播地址,从而减少网络流量。
- RIPng:下一代 RIP,在 RFC 2080 中定义,是 RIPv2 的扩展,用于支持下一代互联网协议 IPv6。
RIP v1被称为有类路由协议,因为它在路由更新中不发送子网掩码信息。
RIP v2被称为无类路由协议,因为它在其路由更新中发送子网掩码信息。
RIP 三个版本比较
RIP 定时器
RIP 有四种定时器:
- 更新计时器
- 无效定时器
- 抑制定时器
- 刷新定时器
更新计时器(30 秒)
更新计时器就是路由更新的频率,时间为 30 秒。
无效定时器(180 秒)
如果直到 180 秒没有更新,则目标路由器认为它无效。
抑制定时器(180 秒)
路由器等待邻居路由器响应的时间,默认时间为 180 秒。
刷新定时器(240 秒)
在路由被宣布为无效后,RIP 将额外等待 60 秒,所以刷新的总时间为 180 + 60 = 240 秒。
RIP 防环机制
路由中难免会出现环路,RIP也不例外,RIP常见的主要有以下防环机制:
- 水平分割
- 毒性反转
1、水平分割
水平分割防止向始发路由器通告相同的路由。
这个乍一看是不是很难理解?
我们来举个栗子:
现在有一个小型的网络,三台路由器:R1、R2、R3,R1和R2之间的网段为172.16.1.0/24:
现在R2要将172.16.1.0/24宣告给R3:
R3收到该路由信息后更新其路由表,因为RIP的刷新定时器为30秒,所以30秒后,R3开始将自己的路由表信息广播通告给附近所有的路由器,包括R2:
这样一来,R2和R3就会不停的向对方互发172.16.1.0/24路由协议,形成了一个环路:
水平分割防止这种类型在网络中循环,R3 知道R2 早先广播了网络172.16.1.0/24,因此R3 不会将此更新发送给R2:
这样就避免了环路!
这就是水平分割。
2、毒性反转
毒性反转,网上八股文讲的太死板了,我这边直接举个栗子:
还是这个拓扑图,假如这个时候172.16.1.0/24网段发生故障,这个时候只有R2知道这个事:
假如R2上配置了毒性反转,那么此时会把172.16.1.0/24的跳数变为16,广播给其他路由器,也就是R3:
R3一看172.16.1.0/24的跳数为16,代表路由不可达,就知道172.16.1.0/24这条路行不通了,但是这还是一条路由信息,随机广播给其他路由器,这样就跟毒性一样传播了,所有的路由器都知道了172.16.1.0/24网络不可达,避免了环路。
这就是毒性反转。
RIP优缺点
优点
- 易于理解和配置,适用于小型网络
- 使用范围广,基本上所有路由器都支持
- 负载均衡实现相对比较简单
- 当网络发生变化时,会自动发送触发更新
缺点
- 最大跳数是15跳,不适合大规模的网络
- 每 30 秒广播一次更新,因此会造成流量瓶颈
- 不支持可变长度子网掩码
- 路由更新占用了大量带宽,造成资源浪费
各厂商配置
这边分享几个常见厂商的rip命令:
思科
router rip
network 172.16.1.0
华为
rip
network 172.16.1.0
H3C
rip
network 172.16.1.0
同华为
锐捷
router rip
network 172.16.1.0
同思科
总结
RIP是最简单、最古老的距离矢量路由协议之一,AD 值为 120,工作在 OSI 模型的网络层,RIP 使用端口号 520,RIP 对于小型网络非常实用。
本文瑞哥主要给大家介绍了:
- 什么是RIP?
- RIP 跳数
- RIP 如何工作?
- RIP版本
- RIP 三个版本比较
- RIP 定时器
- 更新计时器(30 秒)
- 无效定时器(180 秒)
- 抑制定时器(180 秒)
- 刷新定时器(240 秒)
- RIP 防环机制
- 1、水平分割
- 2、毒性反转
- RIP优缺点
- 优点
- 缺点
- 各厂商配置
- 思科
- 华为
- H3C
- 锐捷
朋友们,你明白了吗?
- 点赞
- 收藏
- 关注作者
评论(0)