计算机网络-RIP动态路由协议简介

一、概述

前面我们学习了动态路由协议按照工作机制及算法划分可以分为:距离矢量路由协议DV型和链路状态路由协议LS型。RIP就是典型的距离矢量路由协议,但是实际工作中用得已经比较少了。

  • 距离矢量路由协议DV:
  1. RIP
  • 链路状态路由协议LS:
  1. OSPF
  2. IS-IS

二、RIP(路由信息协议)

RIP(Routing Information Protocol)路由协议是一种基于距离矢量算法的动态路由选择协议。它主要用于在小型到中型网络中自动计算和更新路由表,以便网络设备能够选择最佳路径来转发数据包。RIP协议使用UDP的520端口作为传输协议,并通过定期发送和接收路由更新信息来维护网络中的路由表。每个路由器都会根据收到的路由信息计算到达目标网络的“跳数”,并以此为依据选择最佳的转发路径,最大跳数为16,超过就表示路由不可达。

2.1 RIP的版本

RIP(Routing Information Protocol)经历了两个主要版本的发展,分别为RIPV1和RIPV2:

RIPv1:

  • 发布于1980年代初期,是最早的版本。
  • 它是一个有类别(Classful)路由协议,不支持变长子网掩码(VLSM)和无类别域间路由选择(CIDR)。
  • RIP v1不包含子网掩码信息在其路由更新中,因此所有宣告的网络都被假设为A、B、C类网络的传统掩码。
  • 更新报文仅能通过广播方式发送(255.255.255.255)。
  • 不支持认证机制以保证安全性。
报文格式
报文格式

RIPv2:

  • 是对RIPv1的重大改进,增加了许多新特性以适应更大规模和更复杂的网络环境。
  • 支持VLSM和CIDR,能够处理非传统类别的子网划分。
  • 在路由更新中包含了子网掩码信息,使得精确路由成为可能。
  • 提供了路由验证功能,支持明文认证和MD5加密认证。
  • 能够通过组播地址(224.0.0.9)发送更新报文,同时也支持广播方式。
  • 支持手工路由聚合以减少路由表大小。
RIPV2报文格式
RIPV2报文格式

总的来说就是V1版本只能基于A、B、C类进行路由通告而不能根据网段掩码进行通告,以及一些安全功能和路由聚合。

2.2 RIP的工作原理

RIP协议的工作原理主要基于以下几个步骤:

  • 路由表维护:每个运行RIP协议的路由器都会维护一个路由表,其中包含了到达各个目的网络的最佳路径信息。
  • 路由更新:路由器会定期(通常是每30秒)向相邻的路由器发送路由更新报文,其中包含了本路由器所知道的路由信息。这些报文包含了目的网络、下一跳地址以及到达目的网络的跳数。
  • 计算最佳路径:当路由器收到相邻路由器的路由更新报文时,它会根据报文中的信息计算到达目的网络的最佳路径。这通常是通过比较不同路径的跳数来实现的,选择跳数最少的路径作为最佳路径。
  • 路由表更新:如果路由器根据收到的路由更新报文计算出了更好的路径,它会更新自己的路由表,并将新的路由信息发送给相邻的路由器。

示例 概括:每个运行RIP的路由器更新路由是进行全量泛洪更新,因此会占用大量带宽;每30S进行更新请求,超过180S无应答标记为路由不可达;每经过一个三层设备距离(跳数)增加1,大于15时路由不可达;RIPV1通过广播进行泛洪,RIPV2通过组播224.0.0.9进行泛洪,减少了广播流量对资源占用的影响。

实验示例
实验示例
报文抓包
报文抓包
每30S更新
每30S更新

2.3 RIP的防环机制

  • 水平分割(Split Horizon):路由器不会将从某个接口学习到的路由信息再通过同一接口广播出去。
  • 毒性逆转(Poison Reverse):当路由器撤销某条路由时,会将其标记为无限大(16跳)并继续广播出去,这样其他路由器就不会选择这条失效的路由。
  • 触发更新(Triggered Updates):一旦检测到路由发生变化,立刻发送更新信息,而不是等待下一轮定时更新,以快速收敛网络。
  • 最大跳数限制:由于RIP的最大跳数限制为15跳,这也在一定程度上防止了环路的出现,因为任何超过15跳的路由被认为是无穷大,不再被考虑。

2.4 配置示例

# 接口地址配置
正常配置即可# rip 进程号,与ospf进程号类似
rip 1undo summary          # 关闭路由汇总功能version 2             # 指定使用RIPV2版本network 12.0.0.0      # 宣告路由network 1.0.0.0       # 宣告路由# 查看RIP路由
[AR4]display ip routing-table protocol rip
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : RIPDestinations : 5        Routes : 5        RIP routing table status : <Active>Destinations : 5        Routes : 5Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface1.1.1.1/32  RIP     100  3           D   34.1.1.3        GigabitEthernet
0/0/22.2.2.2/32  RIP     100  2           D   34.1.1.3        GigabitEthernet
0/0/23.3.3.3/32  RIP     100  1           D   34.1.1.3        GigabitEthernet
0/0/212.1.1.0/24  RIP     100  2           D   34.1.1.3        GigabitEthernet
0/0/223.1.1.0/24  RIP     100  1           D   34.1.1.3        GigabitEthernet
0/0/2RIP routing table status : <Inactive>Destinations : 0        Routes : 0

总结:RIP路由协议使用跳数进行度量,简单说就是从哪个接口出去,经过了多少跳三层路由设备,超过16则不可达。每30S进行路由更新,而且路由更新是全量更新,占用资源较大。通过上面几种防环机制进行控制。由于它的一些限制,因此实际上现实情况已经很少使用了,仅作了解即可。

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/293591.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++11:基于C++98的语法更新

一、简介 在2003年C标准委员会曾经提交了一份技术勘误表(简称TC1)&#xff0c;使得C03这个名字已经取代了 C98称为C11之前的最新C标准名称。不过由于C03(TC1)主要是对C98标准中的漏洞 进行修复&#xff0c;语言的核心部分则没有改动&#xff0c;因此人们习惯性的把两个标准合并…

【机器学习】数据探索---python主要的探索函数

在上一篇博客【机器学习】数据探索(Data Exploration)—数据质量和数据特征分析中&#xff0c;我们深入探讨了数据预处理的重要性&#xff0c;并介绍了诸如插值、数据归一化和主成分分析等关键技术。这些方法有助于我们清理数据中的噪声、消除异常值&#xff0c;以及降低数据的…

设计模式-概述篇

1. 掌握设计模式的层次 第1层&#xff1a;刚开始学编程不久&#xff0c;听说过什么是设计模式第2层&#xff1a;有很长时间的编程经验&#xff0c;自己写了很多代码&#xff0c;其中用到了设计模式&#xff0c;但是自己却不知道第3层&#xff1a;学习过了设计模式&#xff0c;…

MATLAB 自定义生成圆柱点云(49)

MATLAB 自定义生成圆柱点云(49) 一、算法介绍二、具体实现1.代码2.效果一、算法介绍 按照一些提前指定的圆柱参数,自定义生成圆柱点云,可添加噪声,用于后续的实验测试 二、具体实现 1.代码 代码如下(示例): % 指定圆柱的参数 radius = 5; % 圆柱半径 height = 20…

springcloud基本使用三(搭建nacos)

window下安装nacos: 下载页面:Releases alibaba/nacos GitHuban easy-to-use dynamic service discovery, configuration and service management platform for building cloud native applications. - Releases alibaba/nacoshttps://github.com/alibaba/nacos/releases…

医药行业CRM解决方案:如何选择适合的医药CRM系统?

医药市场的竞争也同样激烈&#xff0c;抓住市场、抢占客户拼的是产品、速度&#xff0c;更是精细化的客户管理。如何抓住客户&#xff0c;并留住客户&#xff0c;是医药公司要考虑的问题。人工机械地记录数据信息很容易就被市场淘汰&#xff0c;所以医药公司也需要用数字化工具…

大语言模型中常用的旋转位置编码RoPE详解:为什么它比绝对或相对位置编码更好?

自 2017 年发表“ Attention Is All You Need ”论文以来&#xff0c;Transformer 架构一直是自然语言处理 (NLP) 领域的基石。它的设计多年来基本没有变化&#xff0c;随着旋转位置编码 (RoPE) 的引入&#xff0c;2022年标志着该领域的重大发展。 旋转位置嵌入是最先进的 NLP…

一文get,最容易碰上的接口自动化测试问题汇总

本篇文章分享几个接口自动化用例编写过程遇到的问题总结&#xff0c;希望能对初次探索接口自动化测试的小伙伴们解决问题上提供一小部分思路。 sql语句内容出现错误 空格&#xff1a;由于有些字段判断是变量&#xff0c;需要将sql拼接起来&#xff0c;但是在拼接字符串时没有…

Python接口自动化测试-篇1(postman+requests+pytest+allure)

Python接口自动化测试是一种使用Python编程语言来编写脚本以自动执行针对应用程序接口&#xff08;APIs&#xff09;的测试过程。这种测试方法专注于检查系统的不同组件或服务之间的交互&#xff0c;确保它们按照预期规范进行通信&#xff0c;而不涉及用户界面&#xff08;UI&a…

CVE-2021-38001:TianfuCup RCE bug Type confusion in LoadIC::ComputeHandler

文章目录 前言环境搭建漏洞分析漏洞利用总结参考 前言 该漏洞在似乎在 bugs.chromium 上没有公开&#xff1f;笔者并没有找到相关漏洞描述&#xff0c;所以这里更多参考了别人的分析。 本文需要一定的 ICs 相关知识&#xff0c;请读者自行先查阅学习&#xff0c;比较简单&…

国内ip怎么来回切换:操作指南与注意事项

在数字化时代&#xff0c;互联网已经成为我们日常生活、学习和工作中不可或缺的一部分。然而&#xff0c;随着网络应用的不断深化&#xff0c;用户对于网络环境的稳定性和安全性要求也越来越高。其中&#xff0c;IP地址作为网络中的关键标识&#xff0c;其切换与管理显得尤为重…

Navicat 干货 | 通过检查约束确保 PostgreSQL 的数据完整性

数据完整性对于任何数据库系统来说都是很重要的一方面&#xff0c;它确保存储的数据保持准确、一致且有意义的。在 PostgreSQL 中&#xff0c;维护数据完整性的一个强大工具是使用检查约束。这些约束允许你定义数据必须遵守的规则&#xff0c;以防止无效数据的插入或修改。本文…

matlab 复制点云

目录 一、概述1、算法概述2、主要函数3、参考文献二、代码实现三、结果展示四、参考链接本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫。 一、概述 1、算法概述

Leetcode 617. 合并二叉树

心路历程&#xff1a; 看到两颗二叉树的问题&#xff0c;第一反应想到了同频遍历&#xff0c;然后每一步创建新的结点&#xff0c;虽然也写出来了但是代码比较长&#xff0c;而且空间复杂度比较高&#xff0c;好处是没有修改原始的两个二叉树的结果。 后来看了网上的解答&…

工业以太网交换机 vs. 常规以太网交换机:全面详细比较

概述 以太网交换机是现代计算机网络中的关键设备&#xff0c;用于连接各种设备&#xff0c;实现数据传输和通信。工业以太网交换机和常规以太网交换机之间存在一些重要区别&#xff0c;涉及到应用环境、设计、性能和功能。让我们深入探讨这些方面&#xff0c;帮助您更好地理解…

kind+tidb

官网介绍&#xff1a;在 Kubernetes 上快速上手 TiDB | PingCAP 文档中心 下面是具体细节&#xff1a; 一、安装 1.安装kind&#xff0c;一定要使用最新版本&#xff01;&#xff01;&#xff01; kind官网&#xff1a;kind – Quick Start curl -Lo ./kind https://kind.s…

国产数据库中统计信息自动更新机制

数据库中统计信息描述的数据库中表和索引的大小数以及数据分布状况&#xff0c;统计信息的准确性对优化器选择执行计划时具有重要的参考意义。本文简要整理了下传统数据库和国产数据库中统计信息的自动更新机制&#xff0c;以加深了解。 1、数据库统计信息介绍 优化器是数据库…

代码随想录训练营day27

第七章 回溯算法part03 1.LeetCode. 1.1题目链接&#xff1a;39. 组合总和 文章讲解&#xff1a;代码随想录 视频讲解&#xff1a;B站卡哥视频 1.2思路&#xff1a;题目中的无限制重复被选取&#xff0c;吓得我赶紧想想 出现0 可咋办&#xff0c;然后看到下面提示&#xff…

boost::asio::ip::tcp/udp::socket::release 函数为什么限制 Windows 8.1 才可以调用?

如本文题目所示&#xff0c;这是因为只有在 Windows 8.1&#xff08;Windows Server 2012 RC&#xff09;及以上 Windows 操作版本才提供了运行时&#xff0c;修改/删除完成端口关联的ABI接口。 boost::asio 在 release 函数底层实现之中是调用了 FileReplaceCompletionInform…

【Linux】权限理解

权限理解 1. shell命令以及运行原理2. Linux权限的概念3. Linux权限管理3.1 文件访问者的分类&#xff08;人&#xff09;3.2 文件类型和访问权限&#xff08;事物属性&#xff09;3.2.1 文件类型3.2.2 基本权限 3.3 文件权限值的表示方法3.4 文件访问权限的相关设置方法3.4.1 …