网工路由基础——动态路由协议(RIP)

一、动态路由协议的分类

1.按工作区域分类:
        动态路由协议按用途分类可以分为内部网关协议(IGP)和外部网关协议(EGP)。一个Internet网可以被分成多个域或多个自治系统,各自治系统通过一个核心路由器连到主干网上,每个自治系统都有自己的路由技术,对不同的自治系统路由技术是不相同的。所谓内部网关协议,就是指用于自治系统内部的路由协议,而外部网关协议,就是指用于自治系统间接口上的单独的协议。
2.按寻径算法分类:
        动态路由协议按操作可以分为距离矢量路由协议、链路状态路由协议或路径矢量路由协议。其中距离矢量路由协议和链路状态路由协议属于内部网关协议,而路径矢量路由协议则属于外部网关协议。
3.按行为分类:
        动态路由协议按行为分类可以分为有类路由协议和无类路由协议。他们二者本质区别就是在发送路由更新时是否发送子网掩码,有类路由协议不会在路由更新中发送子网掩码信息,而无类路由协议在路由更新中包含子网掩码信息。

二、RIP协议

        RIP是Routing Information Protocol(路由信息协议)的简称,是一种较为简单的内部网关协议IGP(Interior Gateway Protocol)。

        RIP使用跳数(Hop Count)来衡量到达目的地址的距离,称为度量值。在RIP中,缺省情况下,路由设备到与它直接相连网络的跳数为0,通过一个路由设备可达的网络的跳数为1,其余依此类推。也就是说,度量值等于从本网络到达目的网络间的路由设备数量。为限制收敛时间,RIP规定度量值取0~15之间的整数,大于或等于16的跳数被定义为无穷大,即目的网络或主机不可达。由于这个限制,使得RIP不可能在大型网络中得到应用。

目的:RIP协议是最早的内部网关协议之一,RIP协议被设计用于使用同种技术的中小型网络。由于RIP的实现较为简单,在配置和维护管理方面也远比OSPF和IS-IS容易,因此在实际组网中仍有广泛的应用。

1、RIP协议的工作原理:

        每台运行了RIP协议的路由器都维护一个RIP数据库,该RIP数据库保存了路由设备发现的所有RIP路由。被RIP协议通告的接口会周期性的向邻居发送RIP路由表,路由通过距离矢量算法算出路由将自己没有的路由加载到路由表中。

2、RIP的防环机制:

        RIP作为距离矢量路由协议只是简单的将自己路由表周期性的通告出去,同时将受到的有效路由加载到路由表中,并通过累加的度量值来体现到达目标网络的距离,由此运行距离矢量路由协议的路由设备并不了解整个网络的拓扑结构,这些特点使得网络中容易出现路由环路。

        水平分割,毒性逆转,触发更新是距离矢量的重要的路由协议防环机制。

水平分割

        水平分割在不同网络中实现有所区别,分为按照接口和按照邻居进行水平分割。广播网、P2P和P2MP网络中是按照接口进行水平分割的,NBMA网络是按照邻居进行水平分割。

  • 广播网、P2MP和P2P网络中的水平分割

        水平分割(Split Horizon)的原理是,RIP路由设备从某个接口学到的路由不会从该接口再发回给邻居路由设备。这样不但减少了带宽消耗,还可以防止路由环路。

        1)RIP的度量值为跳数:最大跳数为15跳,RIP路由的数据包从始发开始,没经过一台设备加1,大于15是,则认为路由不可达。

        2)水平分割技术:从一个接口学到的路由不会从这个接口发回去。

        3)因为RIP基于UDP(端口号520)发送协议报文,而UDP没有确认机制,所以路由将路由发送出去以后无法确认另据是否收到RIP路由,为了保障路由的可靠更新,所以需要周期发送RIP路由(30s)。

广播网、P2MP和P2P网络中的水平分割:

        如图1所示,DeviceA会向DeviceB发送到网络10.0.0.0/8的路由信息,如果没有配置水平分割,DeviceB会将从RouterA学习到的这条路由再发送回给RouterA。这样,RouterA可以学习到两条到达10.0.0.0/8网络的路由,一条是跳数为0的直连路由,一条是下一跳指向DeviceB且跳数为2的路由。

        但是在DeviceA的RIP路由表中只有直连路由才是活跃的。当DeviceA到网络10.0.0.0的路由变成不可达,并且DeviceB还没有收到路由不可达的信息时,DeviceB会继续向DeviceA发送10.0.0.0/8可达的路由信息。即,DeviceA会接收到错误的路由信息,认为可以通过DeviceB到达10.0.0.0/8网络;而DeviceB仍旧认为可以通过DeviceA到达10.0.0.0/8网络,从而形成路由环路。配置水平分割后,DeviceB将不会再把到网络10.0.0.0/8的路由发回给DeviceA,避免了路由环路的产生。

接口视图下,使能rip的水平分割功能:rip split-horizon
  • NBMA网络中的水平分割

        对于NBMA(Non Broadcast Multiple Access)网络,由于一个接口上连接多个邻居,RIP支持在NBMA网络中按邻居进行水平分割处理。NBMA网络中,路由按照单播方式发送,同一接口上收到的路由可以按邻居进行区分。从某一接口的对端邻居处学习到路由,不会再通过该接口发送回去。

        如图2所示,配置水平分割后,DeviceB会将从DeviceA学习到的10.0.0.0/8路由发送给DeviceC,但是不会再发送回给DeviceA。

毒性逆转

        毒性逆转(Poison Reverse)的原理是,RIP从某个接口学到路由后,将该路由的开销设置为16(即指明该路由不可达),并从原接口发回邻居路由设备。利用这种方式,可以清除对方路由表中的无用路由,也可以防止产生路由环路的发生。

        如图3所示,DeviceA会向DeviceB发送10.0.0.0/8路由信息,如果没有配置毒性逆转,DeviceB会将从DeviceA学习到的这条路由再发送回给DeviceA。这样,DeviceA可以学习到两条到达10.0.0.0/8网络的路由,一条是跳数为0的直连路由;一条是下一跳指向DeviceB且跳数为2的路由。

        当DeviceA到网络10.0.0.0/8的路由变成不可达,并且DeviceB还没有收到路由不可达的信息时,DeviceB会继续向DeviceA发送10.0.0.0/8可达的路由信息。即,DeviceA会接收到错误的路由信息,认为可以通过DeviceB到达10.0.0.0/8网络;而DeviceB仍旧认为可以通过DeviceA到达10.0.0.0/8网络,由此导致了路由环路。

        配置毒性逆转后,DeviceB在接收到从DeviceA发来的路由后,向DeviceA发送一个这条路由不可达的消息(即将该路由的开销设置为16跳,16跳即意味着该路由不可达),这样DeviceA就不会再从DeviceB学到这条可达路由,因此就可以避免上述环路的发生。

进入接口视图,使能rip的毒性逆转功能:rip poison-reverse
触发更新

        触发更新的原理是,路由信息发生变化时,立即向邻居设备发送触发更新报文,通知变化的路由信息。触发更新可以缩短网络收敛时间,在路由表项变化时立即向其他设备广播该信息,而不必等待定时更新。

        如图4所示,网络10.4.0.0不可达时,DeviceC最先得到这一信息。通常,更新路由信息会定时发送给相邻Device(RIP协议每隔30秒发送一次)。但如果在DeviceC等待更新周期到来的时候,DeviceB的更新报文传到了DeviceC,DeviceC就会学到DeviceB的去往网络10.4.0.0的错误路由。这样DeviceB和DeviceC上去往网络10.4.0.0的路由都指向对方从而形成路由环路。如果DeviceC发现网络故障之后,不再等待更新周期到来,就立即发送路由更新信息给DeviceB,使DeviceB的路由表及时更新,则可以避免产生上述问题。

        触发更新还存在另外一种方式:当下一跳不可用之后(如因为链路故障)需要及时通告给其他设备,此时要把该路由的cost设置为16然后发布出去,此更新也叫做路由毒杀。

进入系统视图:system-view;
创建rip进程并进入:rip
调整RIP触发更新定时器:timers rip triggered

3、RIPv1和RIPv2的区别:

4、RIP的配置(使能水平分割防环)

 R1的配置:

interface GigabitEthernet0/0/0ip address 10.0.12.1 255.255.255.0 
#
interface LoopBack0ip address 192.168.1.1 255.255.255.0 
#
rip 1undo summaryversion 2network 192.168.1.0network 10.0.0.0
#

 R2的配置:

interface GigabitEthernet0/0/0ip address 10.0.12.2 255.255.255.0 
#
interface GigabitEthernet0/0/1ip address 10.0.23.2 255.255.255.0 
#
rip 1undo summaryversion 2network 10.0.0.0
#

 R3的配置:

interface GigabitEthernet0/0/0ip address 10.0.23.3 255.255.255.0 
#
interface LoopBack0ip address 192.168.2.1 255.255.255.0 
#
rip 1undo summaryversion 2network 10.0.0.0network 192.168.2.0
#

配置结果验证:

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

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

相关文章

基于语义感知的对象草图绘制

摘要 抽象是素描的核心,因为线条画的简单和最小化特性。抽象涉及识别对象或场景的基本视觉属性,这需要语义理解和对高级概念的先验知识。因此,抽象表现对艺术家来说是具有挑战性的,对机器来说更是如此。我们提出了CLIPasso&#…

软考--试题六--访问者模式(Visitor)

访问者模式(Visitor) 意图 表示一个作用于某对象结构中的各元素的操作。它允许在不改变各元素的类的前提下定义作用于这些元素的新操作 结构 适用性 1、一个对象的结构包含很多类对象,他们有不同的接口,而用户想对这些对象实施一些依赖于其具体类的操…

STL <string>--------String的OJ题目

1.题目截图(把字符串转换成整数----atoi) 1.1题目解析(在代码里) class Solution { public:int myAtoi(string str) {// 100% 97.45% int len str.size();if(len 0)return 0;int i 0, flag 1, isSignal 0, res 0;while(…

小红书孕妇宝妈暴力拉新玩法,每日两小时,单日收益500+

哎呀,你好呀,亲爱的小伙伴们!我今天心血来潮,想和你们分享一个超级棒的方法,这个方法我亲自试过,超级有效!就是在小红书上针对孕妇和宝妈们进行引流的方法。听起来是不是很有趣呀?&a…

PyCharm运行程序遇到‘[WinError 1455] 页面文件太小’的问题

最近在云环境的PyCharm运行程序,第一次遇到了WinError 1455的问题,感谢大神们给出的解决方法,特此记录一下。 错误提示是‘页面文件小’导致的问题,那么将页面调大即可。 电脑默认情况下没给D盘分配虚拟内存, 如果Python装在D盘…

【工具】macOS、window11访问limux共享目录/共享磁盘,samba服务安装使用

一、samba服务安装 Samba是一个免费的开源软件实现,使得非Windows操作系统能够与Windows系统进行文件和打印服务共享。它实现了SMB/CIFS协议,并且能够在Linux、Unix、BSD等多种系统上运行。 安装 samba: sudo yum install samba配置 samba…

裁员大盘点:2023年50家知名企业到底“减少”了多少员工?

面对裁员传闻,各家都有各家的说法。 什么“人员盘点”、“广进计划、”“优化”、“毕业”、“正常人员调整”、“瘦身”、“寒冬”…… 那么,国内知名企业在过去一年到底增加or减少了多少人? 博主翻查了一些知名上市企业2023年的财报&#…

【SRC实战】findsomething未授权修改密码

挖个洞先 https://mp.weixin.qq.com/s/i6R7OZ-5h9V5o3Kfho7QWA “ 以下漏洞均为实验靶场,如有雷同,纯属巧合 ” 01 — 漏洞证明 1、网站只有账号密码登录功能,没有注册,忘记密码 2、利用findsomething发现修改密码接口 find…

2024 年第四届长三角高校数学建模竞赛赛题B题超详细解题思路+问题一二代码分享

2024年第四届长三角数学建模竞赛B题详细解题思路 赛道B:人工智能范式的物理化学家 长三角分享资料(问题一代码论文思路)链接(18点更新): 链接:https://pan.baidu.com/s/1lteKvIWNZ4v-Gd7oOcg…

visual studio 2017重命名解决方案或项目名称

1.解决方案->右键->重命名->新的名字 2.项目->右键->重命名->新的名字 3.修改程序集和命名空间名称 项目->右键->属性->修改程序集名称和命名空间名称 4.搜索换名 Ctrl-F->输入旧名称->搜索->将所有旧名称改为新名称(注意是整…

弘君资本股市分析|巴菲特“神秘持仓”曝光!盘后大涨

巴菲特“神秘持仓”揭晓。 当地时间5月15日周三,巴菲特旗下伯克希尔哈撒韦提交的13F美股持仓文件显现,一季度伯克希尔持有2592万股安达稳妥(Insurer Chubb),持仓市值超67亿美元(约合人民币485亿元&#xf…

一套智慧水务平台大概多少钱?

在当今日益发展的水务行业中,如何实现高效、智能的管理,成为了摆在水务企业和相关部门面前的一大挑战。而智慧水务平台作为新时代的解决方案,以其强大的功能和卓越的性能,赢得了广泛的关注。那么,一套智慧水务平台大概…

Metasploit基本命令

1. 开启控制台 命令: msfconsole2. 搜索模块 命令: search ms17-010 # 模块名这里以搜索 ms17-010 为例, auxiliary 开头的为测试模块,也就是 POC,看看存不存在漏洞, exploit 开头的为攻击模块 3. 调…

一款开源简历设计生成器,内置两款设计器,多种免费模板选择,还可以自定义模板、主题等等,支持导出PDF、JSON数据。

🚀 项目简介 91化简是一个开源免费的简历设计制作以及提供模板下载的网站,当前项目为前端项目,完全开源免费。 网站内置有两款设计器,可以方便快捷的制作出精美的简历,除此之外,网站还提供有完整的后台管…

JL-杰理芯片-认识TA的SDK的第四天

无蓝牙连接关机时间 关机时间:3分钟 60 * 5 300 低功耗 进入低功耗前,要关闭打印 内存D2、D4、D8 芯片(主控)的内存不能超过一定的数值,超过后就不能烧录 jl_isd.bin这个文件不能超过内存大小 而杰理的内存是…

UI组件解析!5种类型让你迅速掌握!

无论是网页开发项目还是移动应用程序开发,整个项目过程的每一步都需要综合考虑。UI组件是设计师在项目设计过程中经常使用的工具之一。下面将为您详细分析UI组件,产品小白也可以快速启动。 1. 什么是UI组件? UI组件,即用户界面组…

6-10 阶乘计算升级版

void Print_Factorial ( const int N ) {if(N<0){printf("Invalid input");return;} int nN;int a[10000]{};a[0]1; //0和1的阶乘都是1&#xff0c;同时又是用该个位去&#xff0c;所以初始化为1&#xff1b;int i,j;int len0;//当前数组所占的最大下标in…

webpack优化构建速度示例-resolve.extensions:

当项目不仅仅包含.js或.json文件&#xff0c;还包含其他类型文件(如.ts、.vue、.css)作为模块时&#xff0c;配置resolve.extensions可以不必要的文件搜索提高性能。 src/index.ts import { someFuction } from ./modulesomeFuction()src/module.tsimport {otherSomeFuction} f…

2024CCPC郑州邀请赛暨河南省赛(A,B,C,D,F,G,H,J,K,L,M)

2024 National Invitational of CCPC (Zhengzhou), 2024 CCPC Henan Provincial Collegiate Programming Contest 2024 年中国大学生程序设计竞赛全国邀请赛&#xff08;郑州&#xff09;暨第六届 CCPC 河南省大学生程序设计竞赛 比赛链接 这场的题说实话难度其实都不大&…

股指期货基差对哪类策略影响最大?

股指期货的基差对市场中性策略的业绩影响最大。市场中性策略是一种旨在通过同时持有多头和空头仓位来对冲市场风险的策略&#xff0c;从而在各种市场环境下都能获得稳定的收益。在这类策略中&#xff0c;投资者通常会买入一篮子股票&#xff08;多头仓位&#xff09;&#xff0…