配置单区域OSPF
目录
引言
一、搭建基础网络
1.1 配置网络拓扑图如下
1.2 IP地址表
二、测试每个网段都能单独连通
2.1 PC0 ping通Router1所有接口
2.2 PC1 ping通Router1所有接口
2.3 PC2 ping通Router2所有接口
2.4 PC3 ping通Router2所有接口
2.5 PC4 ping通Router3所有接口
2.6 PC5 ping通Router3所有接口
2.7 PC6 ping通Router4所有接口
2.8 PC7 ping通Router4所有接口
三、配置OSPF
3.1 为router1配置OSPF
3.2 为router2配置OSPF
3.3 为router3配置OSPF
3.4 为router4配置OSPF
四、以PC0为例,ping其他路由或主机
4.1 PC0 ping通 Router2
4.2 PC0 ping通 Router3
4.3 PC0 ping通 Router4
4.4 PC0 ping通 PC2和PC3
4.5 PC0 ping通 PC4和PC5
4.6 PC0 ping通 PC6和PC7
五、校验、诊断工具
六、思考体会
6.1 OSPF配置完成后,每个路由器都有相同的链路状态数据库。那么每个路由器的路由表是相同的吗?为什么?
6.2 为什么交换机不需要配置ip地址?
引言
在一个小型企业网络中有四个路由器,均运行在OSPF协议环境。
(1)搭建基础网络;
(2)配置OSPF协议,使得各网络之间可以通信;
(3)学习OSPF的配置命令及测试诊断工具。
一、搭建基础网络
1.1 配置网络拓扑图如下

1.2 IP地址表
网络地址是计算出来的,不是在设备中进行配置。
| 设备 | 接口 | IP地址 | 子网掩码 | 默认网关 | 网络地址 |
| Router1 | FastEthemet0/0 | 172.16.0.1 | 255.255.0.0 | 172.16.0.0/24 | |
| Router1 | Serial1/0 | 192.168.0.1 | 255.255.255.0 | 192.168.0.0/24 | |
| Router2 | FastEthemet0/0 | 172.17.0.1 | 255.255.0.0 | 172.17.0.0/24 | |
| Router2 | Serial1/0 | 192.168.0.2 | 255.255.255.0 | 192.168.0.0/24 | |
| Router2 | Serial1/1 | 192.168.1.1 | 255.255.255.0 | 192.168.1.0/24 | |
| Router3 | FastEthemet0/0 | 172.18.0.1 | 255.255.0.0 | 172.18.0.0/24 | |
| Router3 | Serial1/0 | 192.168.1.2 | 255.255.255.0 | 192.168.1.0/24 | |
| Router3 | Serial1/1 | 192.168.2.1 | 255.255.255.0 | 192.168.2.0/24 | |
| Router4 | FastEthemet0/0 | 10.1.1.1 | 255.0.0.0 | 10.1.1.0/24 | |
| Router4 | Serial1/0 | 192.168.2.2 | 255.255.255.0 | 192.168.2.0/24 | |
| PC0 | FastEthemet0 | 172.16.0.10 | 255.255.0.0 | 172.16.0.1 | 172.16.0.0/24 |
| PC1 | FastEthemet0 | 172.16.0.20 | 255.255.0.0 | 172.16.0.1 | 172.16.0.0/24 |
| PC2 | FastEthemet0 | 172.17.0.10 | 255.255.0.0 | 172.17.0.1 | 172.17.0.0/24 |
| PC3 | FastEthemet0 | 172.17.0.20 | 255.255.0.0 | 172.17.0.1 | 172.17.0.0/24 |
| PC4 | FastEthemet0 | 172.18.0.10 | 255.255.0.0 | 172.18.0.1 | 172.18.0.0/24 |
| PC5 | FastEthemet0 | 172.18.0.20 | 255.255.0.0 | 172.18.0.1 | 172.18.0.0/24 |
| PC6 | FastEthemet0 | 10.1.1.10 | 255.0.0.0 | 10.1.1.1 | 10.1.1.0/24 |
| PC7 | FastEthemet0 | 10.1.1.20 | 255.0.0.0 | 10.1.1.1 | 10.1.1.0/24 |
二、测试每个网段都能单独连通
2.1 PC0 ping通Router1所有接口

2.2 PC1 ping通Router1所有接口

2.3 PC2 ping通Router2所有接口

2.4 PC3 ping通Router2所有接口

2.5 PC4 ping通Router3所有接口

2.6 PC5 ping通Router3所有接口

2.7 PC6 ping通Router4所有接口

2.8 PC7 ping通Router4所有接口

三、配置OSPF
3.1 为router1配置OSPF

查看router1的路由表

3.2 为router2配置OSPF

查看router2的路由表

3.3 为router3配置OSPF

查看router3的路由表

3.4 为router4配置OSPF

查看router4的路由表

四、以PC0为例,ping其他路由或主机
4.1 PC0 ping通 Router2

4.2 PC0 ping通 Router3

4.3 PC0 ping通 Router4

4.4 PC0 ping通 PC2和PC3

4.5 PC0 ping通 PC4和PC5

4.6 PC0 ping通 PC6和PC7

五、校验、诊断工具






六、思考体会
6.1 OSPF配置完成后,每个路由器都有相同的链路状态数据库。那么每个路由器的路由表是相同的吗?为什么?
在一个 OSPF 网络中,每个路由器都维护着自己的路由表,该路由表记录了该路由器到各个目的地的最优路径。在一个 OSPF 网络中,每个路由器都会从其他路由器收集链路状态信息,建立一个链路状态数据库 (LSDB)。当一个路由器收集到其他路由器的 LSDB 之后,会通过 Dijkstra 算法计算出自己到达网络中其他子网的最优路径,并根据此更新自己的路由表。
因此,虽然每个路由器都有相同的链路状态数据库,但是每个路由器的路由表可能并不完全相同。这是因为每个路由器到达目的地的最优路径可能与其他路由器不同,而不同的路径可能导致不同的路由表。
另外,如果路由器使用相同的优先级和本地参考带宽,那么在 OSPF 中,多个路由器的路由表可能会是相同的,因为它们会选择相同的路径作为最优路径。但是,在实际的网络中,不同的路由器可能有不同的配置,因此它们的路由表也可能不同。
6.2 为什么交换机不需要配置ip地址?
交换机的主要功能是在局域网内转发数据帧,它根据目标 MAC 地址来决定将数据帧发送到哪个接口。交换机通过学习源 MAC 地址和端口的对应关系,建立了一个 MAC 地址表(也称为转发表或 CAM 表),用于快速转发数据帧。
由于交换机的工作是基于 MAC 地址而不是 IP 地址,因此它不需要进行 IP 配置。交换机只需关注数据帧的转发,不涉及网络层的路由功能。它仅负责查找目标 MAC 地址并将数据帧转发到正确的接口,而不关心数据帧中的 IP 地址。
相比之下,路由器则是一种网络层设备,负责在不同网络之间进行数据包的路由。路由器需要配置 IP 地址,并根据 IP 地址进行路由决策。它能够识别不同网络的 IP 子网,并根据目标 IP 地址将数据包转发到适当的接口。计算机需要配置 IP 地址以与网络通信,并与其他设备进行交互。计算机通过 IP 地址与其他主机进行通信,而交换机则负责将数据帧转发到正确的目标主机。
因此,交换机不需要配置 IP 地址,而是通过 MAC 地址表来实现数据帧的转发。
相关文章:
配置单区域OSPF
目录 引言 一、搭建基础网络 1.1 配置网络拓扑图如下 1.2 IP地址表 二、测试每个网段都能单独连通 2.1 PC0 ping通Router1所有接口 2.2 PC1 ping通Router1所有接口 2.3 PC2 ping通Router2所有接口 2.4 PC3 ping通Router2所有接口 2.5 PC4 ping通Router3所有接口 2.…...
SQL中的游标是什么?
在 SQL 中,游标(Cursor)是一种用于遍历结果集的数据库对象。它允许开发者在 SQL 查询的结果集中逐行或逐批处理数据。 具体来说,SQL 中的游标通常用于以下目的: 遍历结果集:当一个 SQL 查询返回多行结果时…...
7. LangChain4j如何使用统一api调用?
前言 当我们对接LangChain4j的时候,面对复杂的各种各样的大模型的api的对接,让很多开发者感到力不从心。在每个大模型的api都不一样的时候?该如何快捷的切换模型的使用呢? 这时,One-API应运而生,它以其简洁…...
RPM、YUM 安装 xtrabackup 8 (mysql 热备系列一)包含rpm安装 mysql 8 配置主从
RPM安装 percona-xtrabackup-80-8.0.35-30.1.el7.x86_64.rpm 官网: https://www.percona.com/ 下载地址: https://www.percona.com/downloads wget https://downloads.percona.com/downloads/percona-distribution-mysql-ps/percona-distribution-mysq…...
maven项目打成可运行的jar及pom中的依赖一同打包
maven项目打jar及pom中的依赖一同打包 最近开发中有个需求,不部署新的服务,只jar包执行 那maven项目中,代码如何以jar的方式运行、如何把代码打成jar、pom中的依赖如何与代码一同打到jar包中? 1、代码如何以jar的方式运行&…...
Gettler‘s Screep World 笔记 Ⅰ
夏促时候刚刚入坑,写个笔记叭~ 环境配置 参考 HoPGoldy 大佬的简书,先配置下开发环境 萌新去看大佬的详细教程,我这里比较简单,有前端基础的可以直接抄 VSCode 跳过 node 我配的是v18.18.2 换源 npm config set registry h…...
联合体(union)的定义以及如何与结构体(struct)不同
联合体(Union)是一种特殊的数据类型,它允许在相同的内存位置存储不同的数据类型。但是,在任何给定的时间点,联合体只能存储其中的一个值;这意味着联合体的大小是其最大成员的大小,因为它必须足够…...
【Spark官方文档部分翻译】RDD编程指南(RDD Programming Guide)
写在前面 内容如何选择 本翻译只翻译本人认为精华的部分,本人认为的Spark的一些核心理念,编程思想。一些特别基础的操作包括但不限于搭建环境就不在此赘述了。 配套版本 本系列基于Spark 3.3.1,Scala 2.12.10,进行翻译总结 原…...
前端八股文 $set
为什么会有$set vue2中对数组中新增的属性是监听不到的 如图 vue 插件中有但是 视图中没有刷新 解决方法 解决就是 $set() 就是在数组中新增属性的时候可以重新渲染视图 具体的写法 写法 就是 第一个 是在那个对象上新增 第二个参数 是新增的属性 第三个参数是 新增的属性…...
Connecting weaviate with langflow across docker containers
题意:在Docker容器之间连接Weaviate与Langflow 问题背景: I am trying to build a local RAG application using Langflow. For my vectore store, I want to use a local Weaviate instance, hosted in a separate docker container on the same netwo…...
【linux vim使用说明】
基本概念 提示:本文是网络资源整理 模式: vim 有多种模式,每种模式都有不同的功能。 普通模式 (Normal Mode): 默认模式,用于导航和执行命令。插入模式 (Insert Mode): 用于文本输入。可以通过按 i 进入。可视模式 (Visual Mode): 用于选择…...
cocos2d-x安装和项目
首先多方查找资料发现教程很简洁,发现对自己的操作方面没多大帮助,后来干脆去官网,好像也很简洁。基于这样一个原因,加上我首次碰cocos2d-x,决定记录一下整个流程,解决实际操作上的疑惑。 涉及的方面&…...
因果推断 | 双重机器学习(DML)算法原理和实例应用
文章目录 1 引言2 DML算法原理2.1 问题阐述2.2 DML算法 3 DML代码实现3.1 策略变量为0/1变量3.2 策略变量为连续变量 4 总结5 相关阅读 1 引言 小伙伴们,好久不见呀。 距离上次更新已经过去了一个半月,上次发文章时还信誓旦旦地表达自己后续目标是3周更…...
Flutter 开源库学习
网上看了好多歌词实现逻辑相关资料,封装比较的好的 就 flutter_lyric,核心类是LyricsReader,而且如果实现逐字逐句歌词编辑功能还需要自己实现很多细节 ,网友原话是 :歌词的功能真的是不少,写起来也是挺难的…...
自主巡航,目标射击
中国机器人及人工智能大赛 参赛经验: 自主巡航赛道 【机器人和人工智能——自主巡航赛项】动手实践篇-CSDN博客 主要逻辑代码 #!/usr/bin/env python #coding: utf-8import rospy from geometry_msgs.msg import Point import threading import actionlib impor…...
MySQL中EXPLAIN关键字详解
昨天领导突然问到,MySQL中explain获取到的type字段中index和ref的区别是什么。 这两种状态都是在使用索引后产生的,但具体区别却了解不多,只知道ref相比于index效率更高。 因此,本文较为详细地记录了MySQL性能中返回字段的含义、状…...
如何理解ref toRef和toRefs
是什么 ref 生成值类型的响应式数据可用于模板和reactive通过.value修改值 ref也可以像vue2中的ref那样使用 toRef 针对一个响应式对象(reactive)的prop创建一个ref两者保持引用关系 toRefs 将响应式对象(reactive封装)转换…...
【linux】kernel-trace
文章目录 linux kernel trace配置trace内核配置trace接口使用通用配置Events配置Function配置Function graph配置Stack trace设置 跟踪器tracer功能描述 使用示例1.irqsoff2.preemptoff3.preemptirqsoff linux kernel trace 配置 源码路径: kernel/trace trace内…...
【Golang 面试基础题】每日 5 题(一)
✍个人博客:Pandaconda-CSDN博客 📣专栏地址:http://t.csdnimg.cn/UWz06 📚专栏简介:在这个专栏中,我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞👍收藏…...
ETCD介绍以及Go语言中使用ETCD详解
ETCD介绍以及Go语言中使用ETCD详解 什么是etcd ETCD是一个分布式、可靠的key-value存储的分布式系统,用于存储分布式系统中的关键数据;当然,它不仅仅用于存储,还提供配置共享及服务发现;基于Go语言实现 。 etcd的特点 完全复制:集群中的每个节点都可以使用完整的存档高…...
华为eNSP Cloud网卡异常排查指南:从WinPcap兼容性到虚拟网卡同步
1. 华为eNSP Cloud网卡异常排查指南 最近在帮朋友调试华为eNSP Cloud时遇到了网卡异常的问题,折腾了大半天才解决。这个问题其实挺常见的,特别是对于刚接触eNSP Cloud的新手来说。今天我就把完整的排查流程和解决方法分享给大家,希望能帮到遇…...
别再硬编码边界了!OpenFOAM中巧用多孔介质源项模拟复杂固体的新思路
突破传统边界:OpenFOAM中多孔介质源项模拟固体的工程实践 在计算流体动力学(CFD)模拟中,复杂几何形状的固体边界处理一直是工程师面临的棘手问题。传统方法如动网格技术计算成本高昂,浸入边界法实现复杂,而…...
从一次失败的模型交付说起:我是如何用random_state拯救项目复现的
从一次失败的模型交付说起:我是如何用random_state拯救项目复现的 那是一个周五的下午,团队群里的消息突然炸开了锅。"你确定这是同一个模型?测试集AUC从0.92跌到0.68了!"看着同事发来的对比截图,我的后背瞬…...
告别手动调样式!用QGIS表达式实现地图自动美化(附城市人口可视化案例)
用QGIS表达式实现地图智能美化的高阶技巧 你是否曾在深夜对着QGIS的样式面板反复点击,只为给上百个城市点设置不同大小?或是为了突出显示某些特定道路而不得不创建多个图层?这些重复性工作不仅消耗时间,更消磨创造力。本文将带你突…...
内容可寻址存储器(CAM)原理与创新设计解析
1. 内容可寻址存储器基础解析在传统计算机架构中,我们通常使用随机存取存储器(RAM)通过地址来访问数据。但有一种特殊的存储结构打破了这种范式——内容可寻址存储器(Content-Addressable Memory, CAM)。它的独特之处在…...
Universal Data Tool 新功能解析:骨骼姿态标注与数据格式转换实战
1. 项目概述:一个数据标注工具的进化最近在整理一个计算机视觉项目的数据集时,我又一次打开了Universal Data Tool(UDT)。这个工具我用了快两年了,从它早期版本支持基础的图像分类和物体检测框标注开始,就一…...
高速PCB设计:信号完整性与电磁场思维实战解析
1. 高速PCB设计的核心挑战与设计思维转变十年前我刚接触高速PCB设计时,曾天真地认为只要把线连通就能工作。直到某次设计的DDR3内存模块在800MHz频率下频繁出错,才真正理解到:当信号上升时间进入亚纳秒级,PCB上的每毫米走线都成为…...
HealthGPT高级功能:语音交互与聊天记录导出的实用技巧
HealthGPT高级功能:语音交互与聊天记录导出的实用技巧 【免费下载链接】HealthGPT Query your Apple Health data with natural language 💬 🩺 项目地址: https://gitcode.com/gh_mirrors/he/HealthGPT HealthGPT是一款能让你用自然语…...
基于Node.js的Gemini CLI蓝图:构建高效AI命令行工具
1. 项目概述:一个让Gemini API在命令行中“活”起来的蓝图 如果你和我一样,日常工作中大量时间都泡在终端里,那么你肯定理解那种感觉:为了调用一个AI模型,不得不频繁地在浏览器、API文档和命令行之间来回切换ÿ…...
硅应变计与Σ-Δ ADC协同设计及温度补偿技术
1. 硅应变计与Σ-Δ ADC的协同优势解析硅基应变计在现代传感器领域占据重要地位,其核心原理基于压阻效应——当硅材料发生机械形变时,晶格结构变化导致载流子迁移率改变,从而引起电阻值变化。与传统金属箔应变计相比,硅应变计的灵…...
