HCIA---动态路由---RIP协议

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 目录

    前言

    一.动态路由

    二.动态路由协议分类

    IGP:内部网关协议

    EGP:外部网关协议

    三.RIP协议概述

     RIP版本分类:

    RIP三要素:

    RIP工作流程:

     Bellman--Ford 算法:

    路由环路解决办法--RIP破会机制

    RIP配置命令:

    RIP拓展配置:

    思维导图


前言

    前文我们学习了静态路由,与配置IP地址相同的是,静态路由同样需要手动添加,为了减少配置IP地址的工作量,DHCP协议应运而生,同理,为了减少而皮质路由的工作量,动态路由协议应运而生,接下来让我们跟着文章了解一下!


一.动态路由

     动态路由是一种动态决定数据包如何传输的路由技术。与静态路由不同,动态路由使用特定的路由协议来自动更新路由表,以保证数据包能够有效地传输。动态路由通过实时监测网络状况、收集路由信息并相互通信来计算最优路径,以保证数据包能够在网络中最快、最可靠地传输。动态路由可以提高网络的可靠性和效率,但需要较多的网络资源用于计算和更新路由表。常见的动态路由协议有RIP、OSPF、BGP等。

二.动态路由协议分类

根据管理范围分类:

IGP:内部网关协议

       内部网关协议(Interior Gateway Protocol,缩写IGP)是一组用于在自治系统(AS)内部路由器之间交换路由信息的协议。它们主要用于构建自治系统内部路由表,以确保数据包可以在自治系统内部正确地传输。

EGP:外部网关协议

    外部网关协议(Exterior Gateway Protocol,EGP)是一种用于在不同自治系统(AS)之间交换路由信息的协议。它是一种相对较早的路由协议,已经被更先进的协议所取代,如较新的BGP(Border Gateway Protocol)和OSPF(Open Shortest Path First)。

根据算法分类:

(1)距离矢量型路由协议,代表:RIP

(2)链路状态路由协议,代表:OSPF

本篇主要介绍RIP协议

三.RIP协议概述

RIP使用UDP数据包传送数据,端口号520

      RIP(Routing Information Protocol)是一种基于距离向量算法的路由协议,用于在互联网或局域网中实现路由选择。 RIP协议利用了距离向量算法中的路由更新、拆分、合并、宣告等机制,通过周期性地交换路由消息来维护路由信息表,以确定最佳的路由路径。 RIP协议是一种简单易实现、稳定可靠的路由协议,常用于小型网络中。

RIP 被定义为距离矢量路由协议,而距离矢量路由协议的根本特征就是自己的路由表是完全从其它路由器学来的,并且将收到的路由条目一丝不变地放进自己的路由表,以供数据转发。正因为如此,对于路由是否正确,对于目标是否可达,RIP全然不知。

“距离”的定义 :

  1.     从一路由器到直接连接的网络的距离定义为 1
  2.     从一个路由器到非直接连接的网络的距离定义为所经过的路由器数加 1。

 RIP版本分类:

  • Version 1   有类路由协议,广播更新。(由于不支持VLSM,RIPV1已经被淘汰,以RIPv2为主)
  • Version 2    无类路由协议,支持VLSM

RIPv1和RIPv2的区别:

1.RIPv1是有类路由协议,RIPv2是无类路由协议
2.RIPv1不能支持VLSM,RIPv2可以支持VLSM
3.RIPv1没有认证的功能,RIPv2可以支持认证,并且有明文和MD5两种认证
4.RIPv1没有手工汇总的功能,RIPv2可以在关闭自动汇总的前提下,进行手工汇总
5.RIPv1是广播更新(255.255.255.255 ),RIPv2是组播更新(224.0.0.9),
6.RIPv1对路由没有标记的功能,RIPv2可以对路由打标记(tag),用于过滤和做策略
7.RIPv1发送的updata最多可以携带25条路由条目,RIPv2在有认证的情况下最多只能携带24条路由
8.RIPv1发送的updata包里面没有next-hop属性,RIPv2有next-hop属性,可以用与路由更新的重定

RIP三要素:

(1)仅和相邻路由器交换信息。
(2)交换的信息是当前本路由器所知道的全部信息,即自己的路由表。RIP交换的是本路由器上完整的路由表。
(3)按固定的时间间隔交换路由信息,例如,每隔 30 秒

RIP参数解析
RIP默认优先级100
RIP工作半径15 跳
开销值算法本地路由表中的开销值+1
RIP是否支持等开销负载均衡支持

RIP工作流程:

RIP协议在整个工作流程中主要使用四个定时器:

    (1)更新定时器(Update timer):
              当此定时器超时时,立即发送更新报文。(30s)

    (2)老化定时器(Age timer):
              RIP设备如果在老化时间内没有收到邻居发来的路由更新报文,则认为该路由不可达。(180s)

    (3)垃圾收集定时器(Garbage-collect timer):
               如果在垃圾收集时间内不可达路由没有收到来自同一邻居的更新,则该路由将被从RIP路由表中彻底删除。(240s)

    (4)抑制定时器(Suppress timer):
               默认时长为180s,当RIP设备收到对端的路由更新,其cost为16,对应路由进入抑制状态,并启动抑制定时器。为了防止路由震荡,在抑制定时器超时之前,即使再收到对端路由cost小于16的更新,也不接受。当抑制定时器超时后,就重新允许接受对端发送的路由更新报文。
 

 Bellman--Ford 算法:

 根据拓补图和路由表建立流程图分析:

(1)AR2发送2.0网段的信息给R1,如果R1本身并不存在该网段的路由信息,则将直接刷新到本           地的路由表中 。

(2)AR2 发送2.0网段的信息给R1,如果,R1本身存在该网段的路由信息,且下一跳就是AR2

         则将AR2发来的信息刷新到路由表中。

(3)AR2发送2.0网段的信息给AR1,如果,R1本身存在该网段的路由信息,但是下一跳不是 

          AR2,则比较开销值,如果,本地路由的开销值大于AR2发来的开销值,则将AR2发来的信            息刷新到路由表中。              

 (4)AR2发送2.0网段的信息给AR1,如果,R1本身存在该网段的路由信息,但是下一跳不是

           AR2,则比较开销值,如果本地路由的开销值小于AR2发来的开销值,则不刷新路由条目       

路由环路解决办法--RIP破会机制

(1)触发更新:当拓扑结构发生变化时,直接将变化信息传递出去,而不去等待周期更新

(2)水平分割:限制路由器不能按照接收信息的方向去将接收到的信息再发回去。

                     注:从哪个接口学到的信息,不再从哪个接口发出去。

(3)毒性反转:路由毒化用于在发往其它路由器的路由更新中将路由标记为不可达。标记“不可                                达”的方法是将度量设置为最大值。对于 RIP,毒化路由的度量为 16。

                     注:从哪个接口学到的信息,还可以从这个接口发出去,但是带毒。

(4)最大跳计数:RIP允许跳数最大可以达到15,任何需要经过16跳才能到达的网络都被认为                                    是不可达的。解决了环路时跳数会增加到无限大的问题。

路由中毒和毒性逆转应该是两个独立的过程、

路由中毒就是当siwtch上的某个子网失效时,它会把这个子网的metric设置为16公告给其它switch,意味着这个子网不可达.
毒性逆转是switch从某个接口收到一条某个子网的路由信息之后,它会把这条路由信息从这个接口再公告出去,并且metric设置为16。为什么要配置毒性逆转呢?举个例子:

networks1--------R1-----------R2----------R3

没有毒性逆转的情况下:
Step1.R1公告networks1的路由信息给R2,metric为1
Step2.R2公告networks1的路由信息给R1和R3,metric为2
Step3.当networks1出现故障之后,R1应该公告metric为16的路由信息给R2,但是在R2收到R1的更新报文之前,它仍然发送原来的报文。此时R1收到之后就会误以为通过R2可以到达networks1,更新自己的路由表到达networks1的下一跳是R2,metric为3,并发送更新信息给R2.此时路由环路产生
Step4.R2收到R1的更新报文之后,又会更新自己的路由表然后通知R1和R3,以此循环至metric变为16路由才会被删除。

如果开启毒性逆转的话,在Step2的时候,R2公告给R1的networks1的路由信息metric值为16。此时networks1出现故障,R1和R2之间就不会形成路由环路了,networks1的路由可以很快的被删除。 

RIP配置命令:

#启动RIP进程
[r1]rip 1 # 1 为进程号,用来区分一台设备上多个RIP进程
#选择RIP版本
[r1-rip-1]version 1
#按照主类宣告直连网段
[r1-rip-1]network 1.0.0.0
#查看RIP路由表
[r1]display rip 1 route

RIP拓展配置:

#RIP V2的手工认证
[r2-GigabitEthernet0/0/0]rip authentication-mode md5 usual plain 123456
#RIP V2手工汇总
[r1-GigabitEthernet0/0/0]rip summary-address 192.168.0.0 255.255.254.0
#沉默接口--使得该激活接口,只接收不发送RIP数据
[r1-rip-1]silent-interface GigabitEtnernet 0/0/2
#加快收敛--减少计时器的时间
[r1-rip-1]timers rip 30 180 120  #修改计时器时三个计时器的倍数不能改变
#缺省路由
[r3-rip-1]default-route originate


思维导图

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

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

相关文章

【LeetCode】870 . 优势洗牌

870 . 优势洗牌 方法:贪心 思路 这道题的思想类似于 “田忌赛马” ,把 nums1 当成是田忌的马,nums2 当成是齐威王的马。 讨论田忌的下等马(nums1 的最小值): 如果它能比过齐威王的下等马(nums…

探讨uniapp的navigator 页面跳转问题

navigator 页面跳转。该组件类似HTML中的<a>组件&#xff0c;但只能跳转本地页面。目标页面必须在pages.json中注册。 "tabBar": {"color": "#7A7E83","selectedColor": "#3cc51f","borderStyle": "bl…

分布式学习最佳实践:从分布式系统的特征开始

正文   在延伸feature&#xff08;分布式系统需要考虑的特性&#xff09;的时候&#xff0c;我逐渐明白&#xff0c;这是因为要满足这些feature&#xff0c;才设计了很多协议与算法&#xff0c;也提出了一些理论。比如说&#xff0c;这是因为要解决去中心化副本的一致性问题&…

第三节:在WORD为应用主窗口下关闭EXCEL的操作(1)

【分享成果&#xff0c;随喜正能量】夏日里的遗憾&#xff0c;一定都会被秋风温柔化解。吃素不难&#xff0c;难于不肯捨贪口腹之心。若不贪口腹&#xff0c;有何吃素之不便乎。虽吃华素&#xff0c;不吃素日&#xff0c;亦须少吃。以一切物类&#xff0c;皆是贪生怕死&#xf…

【Linux】以太网协议——数据链路层

链路层解决的问题 IP拥有将数据跨网络从一台主机送到另一台主机的能力&#xff0c;但IP并不能保证每次都能够将数据可靠的送到对端主机&#xff0c;因此IP需要上层TCP为其提供可靠性保证&#xff0c;比如数据丢包后TCP可以让IP重新发送数据&#xff0c;最终在TCP提供的可靠性机…

【LeetCode】102. 二叉树的层序遍历、107. 二叉树的层序遍历 II

作者&#xff1a;小卢 专栏&#xff1a;《Leetcode》 喜欢的话&#xff1a;世间因为少年的挺身而出&#xff0c;而更加瑰丽。 ——《人民日报》 102. 二叉树的层序遍历 102. 二叉树的层序遍历 给你二叉树的根节点 root &#xff0c;返回其节…

记录一下Java实体转json字段顺序问题

特殊需求&#xff0c;和C交互他们那边要求字段顺序要和他们定义的一致(批框架) 如下&#xff1a; Data public class UserDto {private String name;private Integer age;private String addr; }未转换前打印&#xff1a; 转换后打印&#xff1a; 可以看到转换为json顺序打印…

SpringMVC 的基本概念(一)

1.1 关于三层架构和 MVC 1.1.1 三层架构 我们的开发架构一般都是基于两种形式&#xff0c;一种是 C/S 架构&#xff0c;也就是客户端 / 服务器&#xff0c;另一种是 B/S 架构&#xff0c;也就 是浏览器服务器。在 JavaEE 开发中&#xff0c;几乎全都是基于 B/S 架构…

Windows 环境下 Python3 离线安装 cryptography 失败

发布Flask Web项目时&#xff0c;报错缺少Cryptography&#xff0c;于是尝试重新安装该库&#xff0c;但本机没有网络&#xff0c;只支持手动离线安装&#xff0c;尝试了pip、setup.py两种方式安装&#xff0c;结果都报错。。最后使用将安装包拷贝至本机(在其他电脑上安装的sit…

计算机网络 网络层 IPv4地址

A类地址第一位固定0 B类10 其下同理

python编辑器安装与配置,python用哪个编辑器好用

大家好&#xff0c;给大家分享一下python编辑器pycharm安装教程&#xff0c;很多人还不知道这一点。下面详细解释一下。现在让我们来看看&#xff01; 哪些python的编程软件值得推荐&#xff1f; 编写python源代码的软件.首推的Pycharm。 PyCharm用于bai一般IDE具备的功能&…

C++笔记之if(指针)的含义

C笔记之if(指针)的含义 code review! 文章目录 C笔记之if(指针)的含义例1例2 例1 例2

Maven工程的安装配置及搭建(集成eclipse完成案例,保姆级教学)

目录 一.下载及安装及环境配置 1.下载及安装 2.环境变量的配置 3.检测是否安装成功 4.配置Maven 1.更换本地仓库 2. 配置镜像 二.集成eclipse完成案例 1.eclipse前期配置Maven 2.创建Maven工程 一.下载及安装及环境配置 1.下载及安装 下载地址&#xff1a;Maven – Down…

JUL 日志 - 最简单易用的Java日志框架

在正式的生产环境下是不能使用 System.out 进行日志记录的 因为 System.out 不能提供时间、线程、执行过程 等信息&#xff0c;如果要手动打印输出则会非常麻烦 而日志就帮我们把这些事给干了 接下来我们学一个最简单的日志框架 JUL JUL全称Java util Logging是java原生的日志框…

数据结构:堆的实现(C实现)

个人主页 &#xff1a; 个人主页 个人专栏 &#xff1a; 《数据结构》 《C语言》 文章目录 一、堆二、实现思路1. 结构的定义2. 堆的构建 (HeapInit)3. 堆的销毁 (HeapDestroy)4. 堆的插入 (HeapPush)5. 堆的删除 (HeapPop)6. 取堆顶的数据 (HeapTop)7. 堆的数据个数 (HeapSize…

Dynamic Web TWAIN Crack,文档扫描SDK

Dynamic Web TWAIN Crack,文档扫描SDK Dynamic Web TWAIN用于快速部署 Web 应用程序的文档扫描 SDK&#xff0c;文档扫描SDK&#xff0c;&#xff0c;超过 5300 家公司信任 Dynamic Web TWAIN &#xff0c;因其稳健性和安全性而受到超过 5300 家公司的信赖&#xff0c;Dynamic …

Unity游戏源码分享-模拟城市搭建City Adventure

Unity游戏源码分享-模拟城市搭建City Adventure 插件如下&#xff1a; 下载地址&#xff1a; https://download.csdn.net/download/Highning0007/88191931

Webstorm + Egg.js 进行断点调试

Webstorm Egg.js 进行断点调试 1、在工具栏找到编辑配置&#xff0c;创建已运行Node.js 应用程序的调试配置 2、debug调试配置 3、调试 4、查看断点是否起效

Jenkins 修改默认管理员帐号

1、新增一个新的超级管理员用户&#xff0c;并验证能正常登录 2、进入 Jenkins 用户管理目录&#xff1a; /data/software/jenkins/users 3、修改超级管理文件夹的名称为其他名称&#xff0c;如&#xff1a;mv admin_*** ifadm_*** 4、重启Jenkins容器

PHP实现保质期计算器

1.php实现保质期计算&#xff0c; 保质期日期可选&#xff0c;天 、月、年 2. laravel示例 /*** 保质期计算器* return void*/public function expirationDateCal(){$produce_date $this->request(produce_date); // 生产日期$warranty_date $this->reques…