网络实验之OSPF路由协议(一)

news2024/11/25 19:32:02

一、OSPF路由协议简介

  开放式最短路径优先(Open Shortest Path First,OSPF)路由协议是用于网际协议(IP)网络的链路状态路由协议。该协议使用链路状态路由算法的内部网关协议(IGP),在单一自治系统(AS)内部工作。适用于IPv4的OSPFv2协议定义于RFC 2328,RFC 5340定义了适用于IPv6的OSPFv3。OSPF是广泛使用的一种动态路由协议,它属于链路状态路由协议,具有路由变化收敛速度快、无路由环路、支持变长子网掩码(VLSM)和汇总、层次区域划分等优点。在网络中使用OSPF协议后,大部分路由将由OSPF协议自行计算和生成,无须网络管理员人工配置,当网络拓扑发生变化时,协议可以自动计算、更正路由,极大地方便了网络管理。

二、OSPF路由协议实践

1、实验环境

  博文实验环境采用GNS3模拟器搭建OSPF网络实验环境,路由器使用c7200,iso系统版本为c7200-advipservicesk9-mz.124-20.T.bin。

2、拓扑图

  OSPF是我们企业网中最常用的动态路由协议,通过OSPF我们可以实现路由的自动更新和配置,尤其是在大企业网中可以极大的减少路由配置的工作,而且路由可以完成自动更新和收敛,非常的好用。如下拓扑图,我们使用三台路由器模拟OSPF动态路由协议的企业网。通过network宣告路由,实现路由的学习和发布。然后在R1上配置loop 1,通过重发布直连路由实现路由表的更新和发布。
在这里插入图片描述

3、网络配置

  R1路由器配置:

R1#conf t
R1(config)#ip routing
R1(config)#int f0/0 
R1(config-if)#ip add 12.12.12.1 255.255.255.0
R1(config-if)#no shut
R1(config-if)#int f0/1
R1(config-if)#ip add 13.13.13.1 255.255.255.0
R1(config-if)#no shut
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#no shut
R1(config)#router ospf 100
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 12.12.12.0 0.0.0.255 area 0
R1(config-router)#network 13.13.13.0 0.0.0.255 area 0
R1(config-router)#network 1.1.1.0 0.0.0.255 area 1
R1(config-router)#end
R1#wr mem

  R2路由器配置:

R2#conf t
R2(config)#ip routing 
R2(config)#int f0/0
R2(config-if)#no shut
R2(config-if)#ip add 12.12.12.2 255.255.255.0
R2(config-if)#int f0/1
R2(config-if)#ip add 23.23.23.2 255.255.255.0
R2(config-if)#no shut
R2(config-if)#int loop 0
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#no shut
R2(config-if)#router ospf 100
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 12.12.12.0 0.0.0.255 area 
R2(config-router)#network 23.23.23.0 0.0.0.255 area 0
R2(config-router)#network 2.2.2.0 0.0.0.255 area 2
R2(config-router)#end
R2#wr mem

  R3路由器配置:

R3#conf t
R3(config)#ip routing 
R3(config)#int f0/0
R3(config-if)#ip add 13.13.13.3 255.255.255.0
R3(config-if)#no shut
R3(config-if)#int f0/1
R3(config-if)#ip add 23.23.23.3 255.255.255.0
R3(config-if)#no shut
R3(config)#int loop 0
R3(config-if)#ip add 3.3.3. 
R3(config-if)#no shut
R3(config-if)#router ospf 100
R3(config-router)#rou
R3(config-router)#router-id 3.3.3.3
R3(config-router)#netwo
R3(config-router)#network 13.13.13.0 0.0.0.255 area 0
R3(config-router)#network 23.23.23.0 0.0.0.255 area 0
R3(config-router)#network 23.23.23.0 0.0.0.255 area 0
R3(config-router)#network 3.3.3.0 0.0.0.255 area 3
R3(config-router)#end
R3#wr mem

4、协议验证测试

  • OSPF邻居验证
      使用show ip ospf nei命令查看邻居状态,可以看到不同的链路上角色不一样,有的是BDR,有的是DR。
    #在R1上查看OSPF邻居

R1#show ip ospf nei

Neighbor ID Pri State Dead Time Address Interface
3.3.3.3 1 FULL/BDR 00:00:32 13.13.13.3 FastEthernet0/1
2.2.2.2 1 FULL/DR 00:00:33 12.12.12.2 FastEthernet0/0
#在R2上查看OSPF邻居
R2#show ip ospf nei

Neighbor ID Pri State Dead Time Address Interface
3.3.3.3 1 FULL/BDR 00:00:33 23.23.23.3 FastEthernet0/1
1.1.1.1 1 FULL/BDR 00:00:37 12.12.12.1 FastEthernet0/0
#在R3上查看OSPF邻居
R3#show ip ospf nei

Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 1 FULL/DR 00:00:34 23.23.23.2 FastEthernet0/1
1.1.1.1 1 FULL/DR 00:00:36 13.13.13.1 FastEthernet0/0

  • OSPF路由验证
      完成OSPF动态路由协议的基础配置后,我们验证各路由器的路由器,是否包含R1、R2、R3个网段的路由。

R1#ping 2.2.2.2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds:
!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 20/29/32 ms
R1#ping 3.3.3.3

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 3.3.3.3, timeout is 2 seconds:
!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 32/39/56 ms
在这里插入图片描述

  • 重发布路由验证
      在R1上配置默认路由,然后重发布到OSPF中,然后在R2和R3上

R1(config)#int loop 1
R1(config-if)#ip add 11.11.11.11 255.255.255.0
R1(config)#router ospf 100
R1(config-router)#redistribute connected subnets
在这里插入图片描述

三、实验总结

  此博文只是OSPF的基础实验,OSPF的area 0区域建议使用全互联的方式,会根据router-id大小选举DR和BDR。

1、OSPF的基本特性

  • OSPF属于IGP,是Link-State协议,基于IP Pro 89。OSPF报文封装进ip包。
  • 采用SPF算法(Dijkstra算法)计算最佳路径。
  • 快速响应网络变化。
  • 以较低频率(每隔30分钟)发送定期更新,被称为链路状态刷新。
  • 网络变化时是触发更新。
  • 支持等价的负载均衡。

2、OSPF维护的3张表

  • Neighbor Table:
     确保直接邻居之间能够双向通信。
  • Topology Table:
     LSDB(Link-State DataBase),同一区域的所有路由器LSDB相同。
  • Routing Table:
     对LSDB应用SPF算法,选择到达目标地址的最佳路由放入路由表。

3、OSPF的区域划分

  OSPF采用层次设计,用Area来分隔路由器。区域中的路由器保存该区域中所有链路和路由器的详细信息;但只保存其他区域路由器和链路的摘要信息。

4、设置Route-ID的优先顺序

  • 手工指定Route-ID x.x.x.x(可任意,但区域内不能重复)
  • 自动选择最大的Loopback IP作route-id
  • 自动选择最大的物理接口IP(接口必须是激活状态)

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

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

相关文章

NIO笔记

一. NIO 基础 non-blocking io 非阻塞 IO 1. 三大组件 1.1 Channel & Buffer channel 有一点类似于 stream,它就是读写数据的双向通道,可以从 channel 将数据读入 buffer,也可以将 buffer 的数据写入 channel,而之前的 st…

SAP ABAP 代码修改自动比较对象版本一致

第一步,找到SE38/SE37代码修改的出口 SMOD中查找 第二步,实施增强 CMOD中添加增强并激活,如下图 第三步,添加代码 如上图两个双击添加并修改代码 ZXSEUU08中与 ZXSEUU01代码一致,如下 *&----------------------…

【年度总结】我的2022年-职业生涯大转折

【年度总结】我的2022年-职业生涯大转折2022总结大厂的苦与乐找工作的焦虑再起启航2023展望持续刷题持续学习捡起博客在漩涡中疯狂挣扎的一年 2022总结 大厂的苦与乐 上半年主要在搞中台,需要对接的其他团队比较多,每天都在对接需求、优化需求。同时还…

Python NumPy 创建数组(ndarray)

前言NumPy(Numerical Python的缩写)是一个开源的Python科学计算库。使用NumPy,就可以很自然地使用数组和矩阵。NumPy包含很多实用的数学函数,涵盖线性代数运算、傅里叶变换和随机数生成等功能。本文主要介绍使用Python NumPy 创建…

鉴源论坛 · 观辙丨基于机器学习的汽车CAN总线异常检测方法

作者 | 张渊策 上海控安可信软件创新研究院研发工程师 来源 | 鉴源实验室 目前机器学习是研究车辆网络入侵检测技术的热门方向,通过引入机器学习算法来识别车载总线上的网络报文,可实现对车辆已知/未知威胁的入侵检测。这种基于机器学习的异常检测技术普…

chrono_duration(一)

文章目录chrono简介std::chrono::durationduratio基本介绍基本概念使用引入std::ratio 参数深入特化的duratio改造之前的代码静态成员函数 count原型例子构造函数支持加减乘除运算编译细节支持比较运算符查询范围类型转换例子引入修改seconds的范围浮点类型系统特化的duratio自…

os模块的使用方法详解

os模块os模块负责程序与操作系统的交互,提供了访问操作系统底层的接口;即os模块提供了非常丰富的方法用来处理文件和目录。使用的时候需要导入该模块:import os常用方法如下:方法名作用os.remove(‘path/filename’)删除文件os.re…

Unidbg模拟执行某段子so实操教程(一) 先把框架搭起来

一、目标 最近又开始研究Unidbg了,费了好大劲,没有跑起来。今天就先找个软柿子捏捏看。 今天的目标是 之前研究的 某段子App签名计算方法(一) 某段子App版本 5.5.10 二、步骤 先搭起框架来 在 /unidbg/unidbg-android/src/test/java/ 下面新建一个 …

K8S 三种探针ReadinessProbe、LivenessProbe和StartupProbe 之探索

一、事件背景因为k8s中采用大量的异步机制,以及多种对象关系设计上的解耦,当应用实例数增加/删除、或者应用版本发生变化触发滚动升级时,系统并不能保证应用相关的service、ingress配置总是及时能完成刷新。在一些情况下,往往只是…

Python爬虫之Scrapy框架系列(4)——项目实战【某瓣Top250电影更多信息的获取】

前言: 上篇文章使用Scrapy框架简单爬取并下载了某瓣Top250首页的排名前25个电影的电影名。 太寒酸了,这篇文章咱就来仔细搞一搞,搞到更加详细的信息!!! 目录:1.分析2.使用scrapy shell提取电影详…

进程信号--Linux

文章目录信号?kill -l 指令查看所有信号信号的工作流程信号产生1.通过终端按键产生信号2.通过系统调用接口产生信号3.通过软件产生信号4.硬件异常产生信号信号接收信号处理总结信号? 进程间的通信我们了解到有管道通信,有共享内存的通信。这…

flowable编译

git clone -b flowable-release-6.7.2 https://github.com/flowable/flowable-engine.git下载之后File-Open,打开工程,modules是核心代码模块 找到flowable-root.xml按下altf12 ,启动Terminal终端输入命令:mvn clean package -Ds…

《Buildozer打包实战指南》第三节 安装Buildozer打包所需的依赖文件

目录 3.1 安装依赖软件包 3.2 安装Cython 3.3 设置环境变量 3.4 安装p4a、Android SDK、NDK以及其他编译文件 Buidozer这个打包库下载安装完毕之后,我们还需要下载一些打包安卓apk所需要的依赖文件。 3.1 安装依赖软件包 首先输入以下命令更新Ubuntu上的软件包…

使众人行:如何带领一群人把事做成?

你好,我是雷蓓蓓,一名程序员出身的项目经理,曾任网易杭研项目管理部总监。 我所带领的网易杭研项目管理部,从2011年成立以来,就一直在互联网项目管理领域深耕,为网易云音乐、网易严选、云计算、智慧企业等…

智慧社区管理系统改造方案

伴随着城市发展的持续加速,许多在建智慧社区和老旧小区智能化改造都在有规划的展开着。如今许多老旧小区在展开设备升级,许多小区智能安防设备、物业管理服务系统软件、社区综合服务平台及其监控器设备等都会展开智能化改造。但是,很多人对老…

17.优于select的epoll

优于select的epoll epoll 理解及应用 select复用方法其实由来已久,因此,利用该技术后,无论如何优化程序性能也无法同时接入上百个客户端(当然,硬件性能不同,差别也很大)。这种select方式并不适…

IIC驱动中景园0.96寸OLED

驱动硬件介绍 1、驱动电压3.3到5,但是正点的也是这个芯片说用3.3 5会烧坏掉。 2、RST 上的低电平,将导致OLED 复位,在每次初始化之前,都应该复位一下 OLED 模块。而我们使用四线,里面就没有复位了 3、裸屏有多种接口方式(驱动芯片为SSD1306) 6800、8080 两种并行接口方…

Redis应用2(Redison)

不推荐使用application的配置方式,因为会替代spring内部的对于redis的配置方式 注意:如果redis数据库没有密码,不要使用 config.useSingleServer().setPassword("") 的形式,直接跳过setPassword()就可以,配置类写法如下: Configuration public class RedisConfig…

MySQL进阶——索引

一、索引及其分类 1.索引的概念 索引是一种特殊的文件,包含着对数据表中所有记录的引用指针通俗点说,索引就好比是一本书的目录,能加快数据库的查询速度例如需要遍历 200 条数据,在没有索引的情况下,数据库会遍历全部…

Spring之事务编程概述

目录 一:基本概念 搭建测试环境 基于xml声明式事务控制 二:事务相关配置 ​编辑 基于注解声明式事务控制 三:Spring事务角色 四:事务传播行为 五:案例:转账业务追加日志 一:基本概念 事…