深入理解网络协议:OSPF、VLAN、NAT与ACL详解
OSPF工作过程与基础配置
一、OSPF的工作过程
OSPF(开放最短路径优先)是一个广泛使用的路由协议,它的工作过程可以总结为以下几个步骤:
-
启动与邻居发现
OSPF在配置完成后,会通过本地组播地址224.0.0.5发送HELLO包。HELLO包中携带本地路由器的RID(Router ID)以及已知邻居的RID。当接收到对端的HELLO包中存在本端的RID时,即可认为邻居关系建立,并生成邻居表。 -
邻居关系建立
邻居关系建立后,OSPF会检查条件是否匹配。若匹配失败,则邻居关系保持不变,仅通过HELLO包进行保活。若匹配成功,则建立邻接关系。 -
主从选举
OSPF使用不携带数据库目录的DB(Database Description,DD)包进行主从选举。RID较大的路由器优先成为主路由器,并共享数据库目录。 -
LSA信息同步
基于本地的LSDB(Link State Database),通过LSR(Link State Request)包请求LSU(Link State Update)包并通过LSACK(Link State Acknowledgment)包确认,从而完成LSDB的同步。 -
SPF算法计算
同步完成后,OSPF启用SPF(Shortest Path First)算法,基于LSDB生成有向图,计算出最短路径树,最终生成本地路由表。 -
收敛与更新
收敛完成后,OSPF每30分钟周期更新邻接关系。每30分钟,邻接关系之间会进行DD包的对比,若一致则继续保活,若不一致则重新收敛。
二、OSPF基础配置示例
以下是OSPF的基本配置命令示例:
ospf 1 router-id 1.1.1.1 创建OSPF进程,进程号为1,RID为1.1.1.1
area 0 进入区域0
network 1.1.1.1 0.0.0.0 指定网络
network 12.1.1.0 0.0.0.255 指定反掩码
可以通过以下命令查看邻居和数据库表:
display ospf peer brief 查看邻居表
display ospf lsdb 查看LSDB
三、OSPF扩展配置
-
邻接关系的建立条件
- 点到点网络:网络中仅支持两个节点直接建立邻接关系。
- 多路访问(MA)网络:支持多个节点,但需要进行DR(Designated Router)和BDR(Backup Designated Router)选举。
选举规则包括接口优先级和RID的比较。DR/BDR选举为非抢占式,需要重启所有参与选举的OSPF进程。
-
手工认证与汇总
- 手工认证配置示例:
ospf authentication-mode md5 1 cipher 666666 配置MD5认证
- 区域汇总配置示例:
abr-summary 1.1.0.0 255.255.252.0 区域汇总
- 手工认证配置示例:
-
缺省路由与被动接口
- 强制下发缺省路由:
default-route-advertise always 强制下发缺省路由
- 配置被动接口示例:
silent-interface g 0/0/1 设置接口为被动
- 强制下发缺省路由:
VLAN与NAT基础知识
一、VLAN的概念与配置
VLAN(虚拟局域网)是一种通过逻辑分隔物理网络的技术,它能够将一个大的广播域划分为多个小的逻辑广播域,显著减少广播流量,提高网络性能与安全性。VLAN允许网络管理员在相同的物理基础设施上建立不同的虚拟网络,方便管理和分隔不同业务的流量。
VLAN ID(VID):用于识别不同的VLAN,由12位二进制组成,范围为0-4095。在实际应用中,通常使用1-4095的范围,其中0和4095有特殊意义(0表示保留,4095表示全局的广播)。
配置VLAN的基本命令如下:
vlan batch 2 to 6 批量创建VLAN
配置端口划分到VLAN的示例:
port link-type access 定义为访问链路
port default vlan 2 将接口划入VLAN 2
VLAN的应用场景:
- 网络隔离:不同部门或业务单位可使用不同的VLAN,减少干扰与安全风险。
- 广播控制:减少广播流量,提高网络性能。
- 灵活性:可根据需要快速调整VLAN配置,适应网络变化。
二、NAT的基本概念
NAT(网络地址转换)是用于将私有网络IP地址转换为公有IP地址(或反向转换)的一种技术,常用于连接互联网的内部网络。NAT有助于保护网络内部结构的隐私,同时也延长了IPv4地址的使用寿命。
NAT类型:
- 静态NAT:一一对应的地址映射,内部IP与外部IP一一对应,适用于需要外部可直接访问的内部服务器。
- 动态NAT:不论外部地址如何变化,内部私有IP地址会动态映射到外部的可用IP地址池,适合需要动态访问的场景。
- NAPT(端口地址转换):允许多个私网IP共享同一个公网IP,使用端口号区分各个会话,是最常见形式的NAT,广泛用于家庭路由器和小型企业网络中。
静态NAT的配置示例:
nat static global 12.1.1.1 inside 192.168.1.2 静态NAT映射
动态NAT的配置示例:
nat outbound 2000 配置动态NAT
三、ACL(访问控制列表)概述
ACL是用于在路由器或交换机上控制流量的一种机制,可用于允许或拒绝特定类型的流量。ACL可根据源IP地址、目的IP地址、传输层协议(TCP/UDP)和端口号等条件进行配置。
ACL类型:
- 标准ACL:仅依据源IP进行流量控制,常用于过滤访问。
- 扩展ACL:依据更多条件(如目的IP、协议类型和端口号)进行更细致的控制。
配置示例:
acl 2000 创建标准ACL
rule permit source any 允许所有流量
扩展ACL的配置示例:
rule deny tcp source 192.168.4.1 0.0.0.0 destination 192.168.2.2 0.0.0.0 destination-port eq 23 拒绝特定TCP流量
ACL的应用场景:
- 提高网络安全性,通过过滤不必要或恶意的流量。
- 实现流量监控与审计,收集与分析网络使用情况。
相关文章:
深入理解网络协议:OSPF、VLAN、NAT与ACL详解
OSPF工作过程与基础配置 一、OSPF的工作过程 OSPF(开放最短路径优先)是一个广泛使用的路由协议,它的工作过程可以总结为以下几个步骤: 启动与邻居发现 OSPF在配置完成后,会通过本地组播地址224.0.0.5发送HELLO包。HE…...

idea 配置tomcat 服务
选择tomcat的安装路径 选到bin的文件夹的上一层就行...

.net core 接口,动态接收各类型请求的参数
[HttpPost] public async Task<IActionResult> testpost([FromForm] object info) { //Postman工具测试结果: //FromBody,Postman的body只有rawjson时才进的来 //参数为空时,Body(form-data、x-www-form-urlencoded)解析到的数据也有所…...

关注!这些型号SSD有Windows蓝屏问题需要修复
近期,在闪迪官方有一个SSD FW升级提醒,主要是为了解决Windows 11 24H2系统蓝屏的问题: Fix问题:这些SSD的主机内存缓冲区(Host Memory Buffer,简称HMB)功能可能会导致系统出现蓝屏死机ÿ…...
go语言gin框架平滑关闭——思悟项目技术2
目录 前言 直接关闭的缺陷 平滑关闭的使用场景 例子 思悟项目: golang qq邮件发送验证码——思悟项目技术1 前言 平滑关闭(graceful shutdown)是指在停止服务时,能够让现有的连接、任务或者操作优雅地完成,而不是…...

K8S flannel网络模式对比
K8S flannel网络模式对比 VXLAN 模式Host-GW 模式如何查看 Flannel 的网络模式?如何修改 Flannel 的网络模式?如何修改flannel vxlan端口?Flannel 是一个 Kubernetes 中常用的网络插件,用于在集群中的节点之间提供网络连接。Flannel 提供了多种后端实现方式,vxlan 和 host…...
Vue前端框架:Vue前端项目文件目录
文章目录 package.json 文件node_modulessrc(Source Code 的缩写)文件夹主要子文件夹及内容 publicdist package.json 文件 所在文件夹(通常是项目根目录) 虽然 package.json 本身不是一个文件夹,但它所在的文件夹&a…...
git回滚到指定的提交
如果你想回滚到特定的提交(例如 aa0ca72c),并且丢弃之后的所有更改,可以使用 git reset 命令。请注意,git reset 会改变你的提交历史,所以在多人协作项目中应谨慎使用。如果已经推送到远程仓库,…...

手机怎么玩森林之子?远程玩森林之子教程
你喜欢《森林之子》这款开放世界恐怖生存模拟游戏吗?玩家会被派到一座孤岛上,寻找一位失踪的亿万富翁,并深陷被食人生物占领的地方。你需要制作工具和武器、建造房屋,倾尽全力生存下去,无论独自一人还是与朋友一起。如…...

深度学习之网络与计算
1 网络操作与计算 1.1 前向传播与反向传播? 神经网络的计算主要有两种:前向传播(foward propagation, FP)作用于每一层的输入,通过逐层计算得到输出结果;反向传播(backward propagation, BP&a…...
《JVM第1课》Java 跨平台原理
无痛快速学习JVM,欢迎订阅本免费专栏 JVM Java的特性就是程序员一次编写,到处运行,意思是我们只需要写一份代码,就可以在不同的操作系统(windows、Linux、Mac OS等)中运行。但是不同的操作系统能看懂的指令…...

计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-30
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-30 目录 文章目录 计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-30目录1. Step Guided Reasoning: Improving Mathematical Reasoning using Guidance Generation and Step Reasoning摘要研究背…...
加强版 第五节图像处理与视频分析
基本概念 图像轮廓 主要针对二值图像,轮廓是一系列点 vector<vector<Point>xxx用于存储多个点 vector<Vec4i>xxx包含四个整数,分别代表下一个轮廓的索引,上一个轮廓的索引,一个子轮廓的索引和父轮廓的索引 相…...

Orleans8.2入门测试
微软官方文档:快速入门:使用 ASP.NET Core 生成第一个 Orleans 应用 - .NET | Microsoft Learn 项目及引入的nuget库: 1、接口项目;2、接口实现项目;3、silo项目;4、客户端项目 其中Microsoft.Orleans.St…...

【Linux 25】网络套接字 socket 概念
文章目录 🌈 一、IP 地址概念⭐ 1. IP 地址的作用⭐ 2. 源 IP 地址和目的 IP 地址 🌈 二、端口号概念⭐ 1. 源端口号和目的端口号⭐ 2. 端口号范围划分⭐ 3. 端口号 VS 进程 ID⭐ 4. 套接字 socket 的概念 🌈 三、传输层的典型代表协议⭐ 1. …...
python openai 通过Function Call 创建自动化任务
目录 一、什么是Function Call(函数掉用) 1. 功能概述 2. 工作原理 二、如何实现函数调用 1、定义自己的get_weather 函数 2、给助手添加函数调用 3、写好instrction,指导assistant去掉用你定义的方法。 4、最后也是最重要的,捕获 Assistant 的 Function Call 三、…...
设计模式之责任链的通用实践思考
责任链模式通常一般用在方法的拦截、监控、统计方面,比较典型的就是Spring的AOP拦截。 但写一些小的基础能力框架的时候,用AOP比较中,所以一般都是自己针对特定的功能写一些定制的责任链工具类,不太喜欢总是做一些定制化的东西&am…...
前端用canvas绘图并支持下载
1.根据数据绘制饼图 /** 绘制环形图 */ const drawPieCharts () > {const {canWithdrawalPriceFront,noWithdrawalPriceFront,haveWithdrawalPriceFront,} this.state;const myCanvas this.cavasRef.current;// ts-ignoreconst ctx myCanvas.getContext(2d);if (ctx) {…...
【Mac】Homebrew
1、Homebrew 简介 官网地址:https://brew.sh Homebrew 是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。 Homebrew 主要有四个部分组成: brew、homebrew-core 、homebrew-bottles、homebrew-cask。 源说明br…...

Python笔记之线程库threading
Python笔记之线程库threading 参考博文 Python多线程笔记——简单函数版和类实现版 code review! Python 的 threading 库用于在程序中创建和管理线程。线程允许程序并发执行多个任务。以下是 threading 库的详解和一些简洁示例。 基本概念 线程:在一个进程中&a…...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...
【网络】每天掌握一个Linux命令 - iftop
在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具
作者:来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗?了解下一期 Elasticsearch Engineer 培训的时间吧! Elasticsearch 拥有众多新功能,助你为自己…...

Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)
骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术,它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton):由层级结构的骨头组成,类似于人体骨骼蒙皮 (Mesh Skinning):将模型网格顶点绑定到骨骼上,使骨骼移动…...