动态路由协议之RIP协议,最古老的距离矢量协议!

举报
wljslmz 发表于 2022/09/13 16:35:00 2022/09/13
【摘要】 你好,这里是网络技术联盟站。前两天给大家分享了静态路由协议和动态路由协议:静态路由动态路由今天给大家介绍的是动态路由中的RIP协议,如果本文对您有帮助,可以收藏本文哦!让我们直接开始! 什么是RIP? RIP 跳数 RIP 如何工作? 案例1 案例2 RIP版本 RIP 三个版本比较 RIP 定时器 更新计时器(30 秒) 无效定时器(180 秒) 抑制定时器(180 秒) 刷新定时器(24...

你好,这里是网络技术联盟站。

前两天给大家分享了静态路由协议和动态路由协议:

今天给大家介绍的是动态路由中的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
  • 锐捷

朋友们,你明白了吗?

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。