网络知识点之-动态路由

news2024/11/24 11:55:05

动态路由是指路由器能够自动地建立自己的路由表,并且能够根据实际情况的变化适时地进行调整。

  • 中文名:动态路由
  • 外文名:dynamic routing

简述

动态路由是与静态路由相对的一个概念,指路由器能够根据路由器之间的交换的特定路由信息自动地建立自己的路由表,并且能够根据链路和节点的变化适时地进行自动调整。当网络中节点或节点间的链路发生故障,或存在其它可用路由时,动态路由可以自行选择最佳的可用路由并继续转发报文。

原理

8ca631de533b4b89bb96d3d0154dfc31.png

动态路由与静态路由的特征对比

动态路由机制的运作依赖路由器的两个基本功能:路由器之间适时的路由信息交换,对路由表的维护:

1. 路由器之间适时地交换路由信息。

动态路由之所以能根据网络的情况自动计算路由、选择转发路径,是由于当网络发生变化时,路由器之间彼此交换的路由信息会告知对方网络的这种变化,通过信息扩散使所有路由器都能得知网络变化。

2. 路由器根据某种路由算法(不同的动态路由协议算法不同)把收集到的路由信息加工成路由表,供路由器在转发IP报文时查阅。

在网络发生变化时,收集到最新的路由信息后,路由算法重新计算,从而可以得到最新的路由表。

需要说明的是,路由器之间的路由信息交换在不同的路由协议中的过程和原则是不同的。交换路由信息的最终目的在于通过路由表找到一条转发IP报文的“最佳”路径。每一种路由算法都有其衡量“最佳”的一套原则,大多是在综合多个特性的基础上进行计算,这些特性有:路径所包含的路由器结点数(hop count)、网络传输费用(cost)、带宽(bandwidth)、延迟(delay)、负载(load)、可靠性(reliability)和最大传输单元MTU(maximum transmission unit)。

常见的动态路由协议有:RIP、OSPF、IS-IS、BGP、IGRP/EIGRP。每种路由协议的工作方式、选路原则等都有所不同。

常见协议

常见的动态路由协议有以下几个:

RIP

路由信息协议(RIP) 是内部网关协议IGP中最先得到广泛使用的协议。RIP是一种分布式的基于距离向量的路由选择协议,是因特网的标准协议,其最大优点就是实现简单,开销较小。

OSPF

OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。

IS-IS

IS-IS(Intermediate System-to-Intermediate System,中间系统到中间系统)路由协议最初是ISO(the International Organization for Standardization,国际标准化组织)为CLNP(Connection Less Network Protocol,无连接网络协议)设计的一种动态路由协议。

BGP

边界网关协议(BGP)是运行于 TCP 上的一种自治系统的路由协议。 BGP 是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接的协议。

特点

1、无需管理员手工维护,减轻了管理员的工作负担。

2、占用了网络带宽。

3、在路由器上运行路由协议,使路由器可以自动根据网络拓朴结构的变化调整路由条目;

4、网络规模大、拓扑复杂的网络

配置示例

设置计算机的IP

[root#PCA root]# ifconfig eth0 10.65.1.1 netmask 255.255.0.0[root#PCB root]# ifconfig eth0 10.66.1.1 netmask 255.255.0.0

a7411973fe754f9ca6eebd2d6ccff2b2.jpeg

[root#PCC root]# ifconfig eth0 10.69.1.1 netmask 255.255.0.0

[root#PCD root]# ifconfig eth0 10.70.1.1 netmask 255.255.0.0

[root#PCA root]# route add default gw 10.65.1.2

[root#PCB root]# route add default gw 10.66.1.2

[root#PCC root]# route add default gw 10.69.1.2

[root#PCD root]# route add default gw 10.70.1.2

设置路由器的IP地址

RouterA(config)int f0/0

RouterA(config-if)#ip address 10.65.1.2 255.255.0.0

RouterA(config-if)#no shutdown

RouterA(config-if)#int f0/1

RouterA(config-if)#ip address 10.66.1.2 255.255.0.0

RouterA(config-if)#no shutdown

RouterA(config-if)#int s0/1

RouterA(config-if)#ip address 10.68.1.2 255.255.0.0

RouterA(config-if)#no shutdown

RouterA(config-if)#clock rate 64000

RouterA(config-if)#exit

RouterA(config)#ip routing

RouterA(config)#router rip

RouterA(config-router)#network all

RouterA(config-router)#end

RouterA#

RouterCconfig)int s0/0

RouterC(config-if)#ip address 10.68.1.1 255.255.0.0

RouterC(config-if)#no shutdown

RouterC(config-if)#int s0/1

RouterC(config-if)#ip address 10.78.1.1 255.255.0.0

RouterC(config-if)#no shutdown

RouterC(config-if)#clock rate 64000

RouterC(config-if)#exit

RouterC(config)#ip routing

RouterC(config)#router rip

RouterC(config-router)#network all

RouterC(config-router)#end

RouterC#

RouterB(config)int f0/0

RouterB(config-if)#ip address 10.69.1.2 255.255.0.0

RouterB(config-if)#no shutdown

RouterB(config-if)#int f0/1

RouterB(config-if)#ip address 10.70.1.2 255.255.0.0

RouterB(config-if)#no shutdown

RouterB(config-if)#int s0/0

RouterB(config-if)#ip address 10.78.1.2 255.255.0.0

RouterB(config-if)#no shutdown

RouterB(config-if)#exit

RouterB(config)#ip routing

RouterB(config)#router rip

RouterB(config-router)#network all

RouterB(config-router)#end

RouterB#

RouterA#sh ip route

RouterC#sh ip route

RouterB#sh ip route

看到动态路由表了吗?如果能看到,注意目的网络和下一跳地址,如果看不到,

请检查路由的接口是否激活,network 设置是否包含指定网络。如果路由表正确的,

请从计算机PCA 测试到各点的连通性。

测试网络联通性

[root@PCA root]#ping 10.65.1.2 (通)

[root@PCA root]#ping 10.66.1.1 (通)

[root@PCA root]#ping 10.66.1.2 (通)

[root@PCA root]#ping 10.68.1.1 (通)

[root@PCA root]#ping 10.68.1.2 (通)

[root@PCA root]#ping 10.78.1.1 (通)

[root@PCA root]#ping 10.78.1.2 (通)

[root@PCA root]#ping 10.69.1.1 (通)

[root@PCA root]#ping 10.69.1.2 (通)

[root@PCA root]#ping 10.70.1.1 (通)

[root@PCA root]#ping 10.70.1.2 (通)

断开某个路由路由器连线,或执行no ip routing,或在某个接口执行shutdow,

再通过 sh ip ro 命令查看路由表。

设置路由器 routerA s0/0 ip:10.67.1.2, routerB s0/1 ip:10.67.1.1,再

连接这两个点,通过sh ip ro 命令查看路由表,注意下一跳IP地址和跳数的变化。

你也可以再加一个路由器,设置好后,通过查看路由表,检查工作情况。

以上便是本期全部内容,希望看过的小伙伴们点个赞加关注,谢谢!🙏🙏🙏

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

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

相关文章

usb摄像头驱动-core层USB集线器(Hub)驱动

usb摄像头驱动-core层USB集线器(Hub)驱动 文章目录 usb摄像头驱动-core层USB集线器(Hub)驱动usb_hub_inithub_probehub_eventport_eventhub_port_connect_changehub_port_connectusb_new_deviceannounce_device 在USB摄像头驱动中…

20.04Ubuntu换源:提升软件下载速度和更新效率

在使用Ubuntu操作系统时,一个常见的优化措施是更改软件源,以提高软件下载速度和更新效率。软件源是指存储软件包的服务器,通过更换软件源,你可以选择更靠近你所在地区的服务器,从而加快软件下载速度,并减少…

Android Compose Bloom 项目实战 (五) : 使用Navigation实现页面跳转

1. 前言 上几篇文章 我们分别实现了 Compose Bloom项目的各个页面,包括欢迎页、登录页和主页,但是各个页面都是单独独立的,并没有关联页面跳转,而本篇文章的任务就是实现各个页面见的跳转。 2. Navigation 要实现页面跳转&#…

Jetpack Compose动画实现原理详解

一、简介 Jetpack Compose是Google推出的用于构建原生界面的新Android 工具包,它可简化并加快 Android上的界面开发。Jetpack Compose是一个声明式的UI框架,随着该框架的推出,标志着Android 开始全面拥抱声明式UI开发。Jetpack Compose存在很…

【数据结构】红黑树封装map和set

文章目录 1.前置知识2.结构的改写与封装2.1 map和set的结构框架2.2 RBTreeNode结构的改写2.3 RBTree结构改写(仿函数的引入) 3. 迭代器3.1 RBTree的迭代器3.2 map和set的迭代器封装 4. 插入的改写和operatorp[]的重载4.1 insert的改写4.2 map::operator[…

【2023 · CANN训练营第一季】进阶班 应用开发深入讲解→DVPP

1 数据预处理概述 1.1 典型使用场景 受网络结构和训练方式等因素的影响,绝大多数神经网络模型对输入数据都有格式上的限制。在计算视觉领域,这个限制大多体现在图像的尺寸、色域、归一化参数等。如果源图或视频的尺寸、格式等与网络模型的要求不—致时…

pytest-编写插件

pytest 0 、文档1、钩子函数分类1.4 测试运行钩子 2、本地编写插件:conftest.py3、外部插件:setuptools4、实战 0 、文档 官方文档 中文文档 1、钩子函数分类 pytest中的钩子函数按功能一共分为6类:引导钩子,初始化钩子、用例收…

rtl仿真器-incisive安装和测试

需要的文件 安装文件 incisive : http://pan.baidu.com/s/1dFC9KZn 提取码 k3cb path: license: IScape: 安装的图形界面 IScape下载链接: https://pan.baidu.com/s/1FvpOto5fAIRjQARcbMbjZQ 密码: k1cb 目录结构 需要四个目录 安装目录:INCISIVE151 path 存放解密工具 l…

强化学习路线规划之深度强化学习

学到如今,我实在明白了一个至关重要的东西,那就是目标很重要,有了清晰的目标我们就知道该做什么,不至于迷茫,否则每天都在寻找道路。所以我一直在规划这样一条道路,让想学习的人可以抛下不知道该怎么做的顾…

在Notion AI 中轻松打造您的AI私人助理,提供卓越的工作体验(二)

大家好,我是瓜叔。 notion AI在工作和生活场景中的应用 我们先来看"总结"功能。 这边有一篇文章叫做学习编码的好处。导入到nation https://www.likecs.com/show-203992587.html 导入方法详见上一篇文章:在Notion AI 中轻松打造您的AI私人助理…

VMware快照:简化虚拟化环境管理与数据保护

引言: 在虚拟化环境中,数据保护和灵活性是至关重要的。VMware快照作为一项强大的功能,为虚拟机管理者提供了便利和安全性。本文将介绍VMware快照的使用,以及它为用户带来的几个关键优势。 VMware快照是一项重要的功能&#xff0c…

Threejs进阶之十五:在Thereejs 使用自定义shader

目录 最终效果什么是 ShaderShaderMaterial类常用属性uniforms属性vertexShader属性fragmentShader属性 代码实现新建ShaderView.vue文件并引入Threejs定义初始化函数创建initMesh函数实例化ShaderMaterial类实例化TextureLoader()定义uniforms 全局变量定义vertexShader顶点着…

ad18学习笔记二:绘图工具栏、活动栏

在画原理图库的时候会经常用到顶上的绘图工具栏(官方文档里叫做活动栏): 版本不同,上面的命令是不同的 ad如何自定义绘图工具栏? 网上介绍工具栏和设置的文章还挺多的,但是没有看到ad18是怎么增减绘图工具…

LeetCode高频算法刷题记录7

文章目录 1. 下一个排列【中等】1.1 题目描述1.2 解题思路1.3 代码实现 2. 两数相加【中等】2.1 题目描述2.2 解题思路2.3 代码实现 3. 括号生成【中等】3.1 题目描述3.2 解题思路3.3 代码实现 4. 滑动窗口最大值【困难】4.1 题目描述4.2 解题思路4.3 代码实现 5. 最小覆盖子串…

c++boost库学习-07-Message Queue

一、前言 boost中的消息队列(Message Queue)是进程间通信的一种机制,实际上是其内部也是采用共享内存的方式来达到进程间通信的目的。这也就意味这Message Queue有其局限性:只有处在同一台计算机中的不同进程才能使用消息队列进行…

在原有机械硬盘的基础上集装固态硬盘并装操作系统

1、加装固态硬盘 我的电脑出场自带的是机械硬盘(即右边那个白色长方形,上面有类似于锡纸一样的东西),左边的这个光滑的正方形里面是内存条,可以拆开这个光滑的盖进行安装,而我们的固态硬盘装在左下角这个长…

性能测试——性能统计工具

性能统计工具 一、io监控命令1、io监控命令iostat2、io指标监控命令df 二、cpu监控命令1、cpu指标监控命令uptime2、cpu指标监控命令 cat /proc/cpuinfo3、cpu 指标监控命令 mpstat4、cpu指标监控命令 sar 三、mem指标监控命令1、mem指标监控命令 cat /proc/meminfo2、mem指标监…

KVM虚拟化(二)

文章目录 4.7 kvm虚拟机克隆4.7.1 完整克隆4.7.2 链接克隆 4.8 kvm虚拟机的桥接网络4.8.1 创建桥接网卡4.8.2 新虚拟机使用桥接模式4.8.3 将已有虚拟机网络修改为桥接模式 4.9 热添加技术4.9.1 kvm热添加硬盘4.9.2 kvm虚拟机在线热添加网卡4.9.3 kvm虚拟机在线热添加内存4.9.4 …

自动化测试技术解析:Appium、Sikuli与MonkeyTalk

目录 前言: 一、Appium自动化测试框架 它的优点是: 二、Sikuli自动化测试工具 它的优点是: 三、MonkeyTalk自动化测试工具 它的优点是: 四、代码样例 总结: 前言: 随着移动应用的普及,…

手把手教你通过PaddleHub快速实现输入中/英文本生成图像(Stable Diffusion)

近来,基于Diffusion的文图生成模型比较火,用户输入一句话,模型就可以生成一副对应的图像,还是很有意思的。本文记录了通过PaddleHub快速实现上述任务的过程,以供参考。 1、安装PaddlePaddle PaddleHub底层依赖于百度…