HCIA基础回顾

news2024/11/16 15:49:29

OSI参考模型

OSI(Open System Interconnect)参考模型,即为开放式系统互连参考模型。 

c0364d5ba8114091a31c09375a190141.png

应用层:人机交互,提供网络服务。

表示层:将逻辑语言转换为二进制语言,定义数据格式。

会话层:建立、维护、拆除会话通道。

传输层:端口对端口的连接。

网络层:提供路由,根据IP地址寻址。

数据链路层:局域网封装,进行MAC地址寻址、差错校验。

物理层:传输比特流。

TCP/IP参考模型

TCP/IP(Transmission Control Protocol/Internet Protocol)是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议。

OSI与TCP/IP参考模型的区别:

  • 层数不同。
  • OSI模型数据封装必须有完整的封装,TCP/IP支持跨层封装。
  • OSI一般用于理论,供参考学习,TCP/IP一般用于工业生产。
  • OSI支持多种网络层协议,TCP/IP仅仅支持IP协议栈(IPV4 IPV6)。

封装与解封装

以七层模型作为参考,前三层为控制层面(应用层、表示层、会话层)、后四层为数据层面(传输层、网络层、数据链路层、物理层)。

(1)封装

应用层(应用层、表示层、会话层)——将逻辑语言转换为二进制数据(协议数据单元PDU)。

传输层——给数据套上TCP头部(该过程可以将数据进行分段传输),TCP头部包含源端口号和目标端口号(数据段)。

网络层——给数据套上IP头部,IP头部包含源IP地址和目标IP地址(数据包)。

数据链路层——以太网封装,给数据套上MAC头部,MAC头部包含源MAC地址和目标MAC地址(数据帧)。

物理层——二进制数据组成的比特流转化为电信号通过介质传输(比特流)

(2)解封装

物理层——将电信号转换为二进制数据,传输给数据链路层。

数据链路层——解开MAC头部,查看目标MAC地址是否为本机,是则继续传输,否则丢弃。

网络层——解开IP头部,查看目标IP地址是否为本机,是则继续传输,否则转发数据或丢弃。

传输层——解开TCP头部,查看端口号,传输给对应端口号。

应用层(应用层、表示层、会话层)——二进制数据转换为原始数据提供给用户。

TCP/IP协议簇

(1)TCP

TCP(Transmission Control Protocol)即为传输控制协议,是一种面向连接的可靠传输协议,通过确认机制重传输机制来确保数据传输的可靠性。其数据结构如下:

Sequence Number为序列号,标识本机发送的数据报文的顺序。

Acknowledgment为确认码,确认数据包的接收。

URG为紧急指针标志位,当数值为1时优先传输数据。ACK为确认标志位,当数值为1时,说明这是一个ACK报文。PSH为推送标志位,在缓冲区未填满的情况下,尽快的将缓冲区的数据推送上前。RST为复位标志位,用于在异常情况下关闭连接。SYN和FIN分别为连接建立和断开的标志位。Checksum为校验和,判断数据传输过程中,是否存在恶意篡改。(了解即可)

TCP的可靠机制:

  • 三次握手机制

  • 四次挥手机制

  • 确认机制:ack = 上一次 seq  +  上一次 len ;        seq = 上一次的 ack 。

  • 重传输机制:当在网络传输过程中数据包丢失或损坏时,TCP会通过重传机制重新发送这些数据包,以确保数据能够完整地到达接收方。
  • 滑动窗口机制:通过滑动窗口来通告本机的接收能力,实现流量控制。
  • 完整性校验机制:通过checksum来校验数据的完整性。

(2)UDP

UDP(User Datagram Protocol)即为用户数据协议,是一种非面向连接的不可靠传输协议,由于UDP协议在发送数据之前不需要建立连接,也不需要进行数据传输的确认,因此它的传输速度非常快。其数据结构如下:

(3)IP

IP(Internet Protocol)即为互联网协议,处于网络层中的协议,实现网络之间的互连。其数据包结构如下:

每一行32个比特,为4个字节,则标准的头部长度为20个字节(最下面一行为可选项,默认空)。

Version(4bit):版本号。默认值0100,代表版本IPv4。

IHL(4bit):IP头部长度。默认值0101,代表 5 × 32bit = 20byte;最大值1111,代表60个字节,减去默认头部长度20个字节,剩下0~40字节则为Options的范围。

Type of Service(8bit):服务类型。其中IPP可以对不同流量标记设置等级,等级高的优先传输;DSCP可以对不同流量进行标记,可以发出拥塞通告。

Total Length(16bit):IP包总长度。为 IP头部 + 从传输层传下来的数据 。

Identification(16bit):标识符。相同标识符的数据分片收集到一起。

Flags(3bit):标识位。3个bit分别为R位(保留位)、D-F位(数据是否分片位,1/0 对应 有/无 分片)、M-F位(更多分片位,0 对应数据分片的最后一位)。

Fragment Offset(13bit):分片偏移。标识该数据分片距离头部的偏移值(前n个分片总长度大小)。

Time to Live(8bit):生存周期。防环机制,其最大值1111 11111,代表生存周期最大为255s。

Protocol(8bit):协议号。用于标记描述上层所使用的协议。

Header Checksum(16bit):头部校验和。

Source Address(16bit):源IP地址。

Destination Address(16bit):目标IP地址。

Options:可选项。有以下四个类别:

  • 严格选路:严格按照指定路径进行传输(最多记录9个)。
  • 松散选路:传输路径只要经过指定地址就行。
  • 时间戳:记录经过某个地址的时间。
  • 记录路由:记录传输路径经过某些地址。

Padding:填充项。在有Options时进行填充,使得 Options + Padding 为32bit,因此IP数据包大小应为 20byte(头部) + (n × 4byte)。

(4)ARP

ARP(Address Resolution Protocol)即为地址解析协议,其作用是根据已知的IP地址解析出相应的MAC地址。特点:广播请求,单播回复。老化时间是180秒。

  • 正向ARP:根据对方的IP地址请求对方的MAC地址。
  • 无故ARP:免费ARP ,自我介绍,检测IP地址冲突。
  • 代理ARP:proxy ARP,跨网段使用(华为默认关闭)。
  • 反向ARP:根据对方的MAC地址请求对方的IP地址。
  • 逆向ARP:帧中继中使用。

(5)以太网帧协议

交换机的基本功能

工作原理:在交换机收到数据帧时,会学习其数据帧中的源MAC地址,并且查询目标MAC地址进行单播转发,若查询不到目标MAC地址则会进行泛洪操作,将数据帧以广播的形式发送数据帧,其他主机收到后确认MAC地址不为自身则丢弃,目标主机收到并确认后会回复给交换机,交换机则学习其MAC地址。

数据过滤:当交换机从某个接口收到发来的数据帧时,不会将数据帧从该接口发送回去。

防环:生成树协议。

数据传输过程

路由: 按照路由条目,逻辑选址。

控制层面

按照开销值将路由条目加表:pre cost(思科中  AD metric)。

数据层面

按照路由条目转发数据包,进行以下操作:

  1. 与操作:将目标IP地址与路由表中的路由条目进行与操作,选出正确的路由条目。
  2. 最长匹配:选出最长子网掩码的路由条目。
  3. 递归查找:当学到一条路由条目的下一跳IP地址不为自身,则以下一跳IP地址重新查找路由表。

静态路由

(1)设置静态路由

  • 设置出接口(一般建议在点对点的网络结构中使用)
  • 设置下一跳地址(一般建议在非点对点(MA 多路访问网络结构中使用)中)
  • 设置出接口+下一跳(在华为,若为MA网络结构,必须使用下一跳或出接口+下一跳)格式:格式:ip route-static 目标网络 子网掩码 下一跳

(2)静态路由分类

  • 等价路由:去往同一目的地路由,来源相同,开销相同,优先级相同,下一跳不同。
  • 浮动路由:去往同一目的地的路由,来源相同,但优先级不同(或开销不同,优先级相同),下一跳也不同。浮动路由通常作为主路由的备份。
  • 缺省路由:当路由器收到目标地址不在路由表中的数据包时,会将数据包全部发送到缺省路由指定的下一跳。
  • 汇总路由:一组具有相同前缀的路由汇聚成一条路由,从而达到减小路由表规模以及优化设备资源利用率的目的。
  • 黑洞路由:由于路由汇总不精确而产生的路由黑洞,用于防止路由环路。黑洞路由的下一跳通常指向一个不存在的接口或null接口。

(3)环回接口

环回接口(Loopback Interface)是一种虚拟接口,用于模拟一个单独的网段。配置在环回接口上的路由称为环回接口路由。作用:环回接口路由通常用于网络测试、路由协议的管理距离调整等场景。

(4)BFD会话

BFD(Bidirectional Forwarding Detection)会话,即为双向转发检测会话。通过不断给对方发包来进行监控,主要用于检测网络设备间的双向转发路径的连通性。在浮动路由中,当一条路由出现故障时,检测到故障时会立即使用备份路由。

  • 启动BFD功能

R1:

[R1]bfd 1 bind peer-ip 10.1.1.2 source-ip 10.1.1.1(定义BFD会话信息,使用10.1.1.1接口监控10.1.1.2地址)

[R1-bfd-session-1]discriminator local 1(定义本地编号)

[R1-bfd-session-1]discriminator remote 2(定义对方编号)

[R1-bfd-session-1]commit(启动)

R2:

[R2]bfd 1 bind peer-ip 10.1.1.1 source-ip 10.1.1.2

[R2-bfd-session-1]discriminator local 2(本地编号)

[R2-bfd-session-1]discriminator remote 1(对方编号)

[R2-bfd-session-1]commit

  • 在静态路由中通过track调用BFD会话

ip route-static 2.2.2.0 24 10.1.1.2 preference 100 track bfd-session 1(跟踪bfd会话)

  • 查看BFD会话

display bfd session all(查看所有bfd会话)

动态路由

动态路由协议:RIP、*OSPF、EIGRP、ISIS、*BGP(路径矢量型)

(1)动态路由协议的分类

  • 按照使用范围进行分类

内部网关协议(同一个AS内使用):RIP(路由信息协议)、ospf(开放式最短路径优先协议)、IS-IS(从中间系统到中间系统)

外部网关协议(不同AS之间使用):BGP(边界网关协议)

  • 按照协议的算法特点进行分类

距离矢量型(DV):ARP

链路状态型(LS):ospf、IS-IS

  • 按照是否携带网络掩码进行分类

有类别路由协议:不传递网络掩码,按照ABC类地址进行划分。

无类别路由协议:传递网络掩码。

(2)RIP(距离矢量型)

RIP(Routing Information Protocol)即为路由信息协议,是一种基于距离向量的动态路由协议。路由器通过周期性发送信息数据包来传递路由信息(request、respond)。

RIP特点:

  • 基于UDP封装,不可靠传输,使用端口号 520
  • 最大跳数限制为15,不适用大规模网络
  • 周期性(30s)和触发性更新,周期性更新会发送全部路由信息,会占用大量带宽
  • 支持多进程,进程号只具有本地意义

RIP机制:

  • 异步更新机制:25.5~30s,多个RIP错开时间发送路由信息。
  • *水平分割机制:通过某个接口接收的路由信息,不会再通过该接口转发出去(防环机制)。
  • *毒性逆转水平分割机制:当一条路由条目不可达时,带毒(将度量值设置最大值)发送给其他设备,其他设备接收后删除该路由条目并转发回来表示确认。

RIP计时器:

  • 更新计时器(30s):每隔30s进行更新并发送路由表信息。
  • 无效计时器(180s):隔了180s没有收到某路由条目信息,则打上possibly down标签。
  • 抑制计时器(180s):更新欺骗,度量值大的不接受,某网络处于故障时,路由器对该路由项设为最大值,并进入抑制时间,在抑制时间内不接受其他邻居发送的更新信息。
  • 刷新计时器(240s):移除长时间未收到更新的失效路由条目。
  • 垃圾回收计时器(120s):过了180s拉进回收站,再过120s清空回收站,彻底删除路由条目。

ps:思科(更新计时器、无效计时器、抑制计时器、刷新计时器);华为(更新计时器、无效计时器、垃圾回收计时器)

RIP版本对比:

  • RIPv1是有类路由协议,RIPv2是无类路由协议。
  • RIPv1不能支持VLSM,RIPv2可以支持VLSM。
  • RIPv1不能关闭自动汇总,RIPv2可以在关闭自动汇总的前提下,进行手动汇总。
  • RIPv1是不支持认证,RIPv2是支持认证。
  • RIPv1是广播发送协议报文,RIPv2是组播发送协议报文,组播地址:224.0.0.9

(3)手工汇总

手工汇总是将多个明细路由进行手工汇总,在路由传播的出方向接口实施,其作用是为了减少路由条目数量,减小路由表大小,加快查表速度,增加网络稳定性。主要有以下两个技术:

VLSM:可变长子网掩码技术,在同一类别(ABC类)内进行子网掩码长度的增加。

CIDR:无类别域间路由技术,又称为super net 超网,在不同类别内进行子网掩码长度的增加,超过了本类别的范围划分。

ps:在思科中,仅仅支持VLSM,不支持CIDR ;在华为中,支持VLSM和CIDR;在IGP中,汇总后会自动抑制明细路由的发送,不自动产生指向NULL0 的防环路由。

(4)路由认证

路由认证是运行于不同设备之间的相同动态路由协议对相互传递的路由刷新报文进行的确认过程。这个过程旨在确保设备能够接受到真实且安全的路由刷新报文,从而防止未经授权的路由信息在网络中传播,保护网络免受潜在的攻击和干扰。可以通过以下两个方法进行路由认证:

启用明文认证:rip authentication-mode simple cipher cisco

启用MD5认证(需要部署key-id):rip authentication-mode md5 nonstandard cipher 1

(5)路由控制

修改优先级pre(AD):用于多种动态路由协议之间,修改某个协议的优先级。

修改开销值cost(metric值):接口使用分别为in(import)、out(export) ,in 代表接口增加度量值为多少,out代表出口增加度量值到多少;in out 都可以配合ACL或前缀列表控制针对部分。(metric值调整只能增加不能减少)

过滤路由:

设置禁用或放行的路由。过滤列表,类似于cisco中的分发列表(过滤列表)自身不具备过滤功能, 需要调用ACL或前缀列表,可以在import或export方向上实施。

(6)被动接口(静默接口)

其作用是针对组播或广播的路由信息只收不发。

设置接口为静默接口:silent-interface GigabitEthernet 0/0/0

RIP中的network命令:激活接口,通告路由

(7)单播邻居

发送RIP 消息数据包使用单播方式发送,单播邻居技术并不影响组播的发送。格式:peer IP地址。

单播邻居+被动接口=单播被动

(8)更新源检测

更新源检测会对接收的更新信息进行一个全面的检测,包括判断更新信息是否来自预期的发送者、是否来自合法的地址或网段等,以确保其来源的合法性和可信性。如果更新信息不符合预期的验证条件,则可能不会进行更新。其适用于所有IGP协议。

关闭更新源检测:undo verify-source

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

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

相关文章

Linux 安装gradle

1.下载 下载地址: 下载地址: Gradle | ReleasesFind binaries and reference documentation for current and past versions of Gradle.https://gradle.org/releases/ 2. 解压 unzip gradle-7.6.2-all.zip 3.修改配置文件 #1.进入配置文件 vim /etc/…

【探索Linux】P.44(数据链路层 —— 以太网的帧格式 | MAC地址 | MTU | ARP协议)

阅读导航 引言一、认识以太网二、以太网的帧格式三、MAC地址四、MTU五、ARP协议温馨提示 引言 在深入探讨了网络层的IP协议之后,本文将带领读者进一步深入网络的底层——数据链路层。我们将详细解析以太网的帧格式,这是数据链路层传输数据的基本单元&am…

漏洞复现:Apache solr

目录 漏洞简述 环境搭建 漏洞复现 漏洞检测 漏洞修复 漏洞简述 Apache Solr是一个开源的搜索服务,使用Java编写、运行在Servlet容器的一个独立的全文搜索服务器,是Apache Lucene项目的开源企业搜索平台。 该漏洞是由于没有对输入的内容进行校验&…

深度体验:IntelliJ Idea自带AI Assistant,开启面向AI编程新纪元!

首发公众号: 赵侠客 引言 JetBrains AI Assistant 是 JetBrains 集成开发环境(IDE)中嵌入的一款智能开发助手工具,旨在通过人工智能技术来简化和提升软件开发过程,我深度体验了一下在IntelliJ IDEA 2024.2 Beta (Ulti…

JAVA项目基于SSM的学生成绩管理系统

目录 一、前言 二、技术介绍 三、项目实现流程 四、论文流程参考 五、核心代码截图 专注于大学生实战开发、讲解和毕业答疑等辅导,获取源码后台 一、前言 二、技术介绍 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端…

全球氢化双酚A (HBPA)市场规划预测:2030年市场规模将接近1330亿元,未来六年CAGR为2.7%

一、引言 随着全球化工行业的持续发展,氢化双酚A (HBPA)作为重要的化工原料,其市场重要性日益凸显。本文旨在探索HBPA行业的发展趋势、潜在商机及其未来展望。 二、市场趋势 全球HBPA市场的增长主要受全球化工行业增加、消费者对高性能化工产品要求提高…

vue3内置组件Suspense

给多个异步组件提供一个统一的状态管理 使用前&#xff0c;有两个loading... 使用后&#xff0c; 只有一个loading... Index.vue: <script setup lang"ts"> import { onMounted, ref, defineAsyncComponent } from vue import { useRouter } from vue-router…

CTF入门教程(非常详细)从零基础入门到竞赛,看这一篇就够了!

一、CTF简介 CTF&#xff08;Capture The Flag&#xff09;中文一般译作夺旗赛&#xff0c;在网络安全领域中指的是网络安全技术人员之间进行技术竞技的一种比赛形式。CTF起源于1996年DEFCON全球黑客大会&#xff0c;以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式。…

什么是网络安全?一文了解网络安全究竟有多重要!

随着互联网的普及和数字化进程的加速&#xff0c;网络安全已经成为我们生活中不可或缺的一部分。然而&#xff0c;很多人对于网络安全的概念仍然模糊不清。 ​ 那么&#xff0c;什么是网络安全&#xff1f;它究竟有多重要呢&#xff1f; 一、网络安全的定义 网络安全是指通过…

【Java】/* JDK 新增语法 */

目录 一、yield 关键字 二、var 关键字 三、空指针异常 四、密封类 五、接口中的私有方法 六、instanceof 一、yield 关键字 yield关键字&#xff0c;从Java13开始引⼊。yield关键字⽤于从case的代码块中返回值。 原本的switch语句写法&#xff1a; public static void …

Notion爆红背后,笔记成了AI创业新共识?

在数字化时代&#xff0c;笔记软件已成为我们记录、整理和创造知识的得力助手。本文将带您深入了解Notion以及其他五个AI笔记产品&#xff0c;它们如何通过AI重塑笔记体验&#xff0c;满足我们快速记录、捕捉灵感、智能整理、情感陪伴和自动撰写文章的五大核心需求。 ———— …

NC 在两个长度相等的排序数组中找到上中位数

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站&#xff0c;这篇文章男女通用&#xff0c;看懂了就去分享给你的码吧。 描述 给定两个递增…

项目比赛项目负责人的汇报技巧:如何让每一次汇报都清晰有力

项目比赛项目负责人的汇报技巧&#xff1a;如何让每一次汇报都清晰有力 前言MECE原则&#xff1a;确保全面性与互斥性SCQA结构&#xff1a;讲一个引人入胜的故事逻辑树思维模型&#xff1a;深入挖掘问题根源STAR法则&#xff1a;展示你的行动与成果PREP模型&#xff1a;清晰表达…

SAP 执行程序报错:Screen does not exist.解决办法

当我们第一次执行创建计划协议—ME31L和ME31事务代码的时候,可能会遇到下图中的这个报错,提示屏幕不存在 处理方式:我们要通过激活二级屏幕的方式激活即可。 1、执行事务代码:CMOD 自定义创建一个项目,这里我们创建的是ZMM02,然后点击创建 然后点击增强分配 将程序名称…

Opencv学习-图像翻转变换

1. flip函数介绍&#xff08;翻转&#xff09; void cv::flip(InputArray src, OutputArray dst, int flipCode ) src&#xff1a;输入图像。 dst&#xff1a;输出图像&#xff0c;与 src 具有相同的大小、数据类型及通道数。 flipCode&#xff1a;翻转方式标志。数值大于 0 表…

geoserver发布wms服务

注意事项&#xff1a;因为这里我安装的是geoserver2.25.2&#xff0c;所以jdk版本换成11&#xff0c;安装17的时候点击浏览文件&#xff0c;右上角转圈&#xff0c;f12打开控制台发现报错500 1、新建工作空间 2、编辑工作空间 3、添加新的存储仓库 4、选择矢量数据源下的第一个…

嵌入式day18

shell脚本配置 shell编程&#xff1a;&#xff08;shell/bash&#xff08;linux&#xff09; ->命令解释器&#xff09; 解释类编程语言 边翻译边执行 擅长文件处理&#xff0c;系统操作 开发效率高 执行效率低 移植性好 c语言&#xff1a; 编程型语言 先编译再执行 擅长数…

(leetcode学习)42. 接雨水

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 示例 1&#xff1a; 输入&#xff1a;height [0,1,0,2,1,0,1,3,2,1,2,1] 输出&#xff1a;6 解释&#xff1a;上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表…

Linux常用命令全

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 ☁️运维工程师的职责&#xff1a;监…

八大排序--快速排序、希尔排序、冒泡排序、归并排序、堆排序等经典排序算法思想

目录 排序的分类 基本概念 插入排序 直接插入排序 折半插入排序 希尔排序 交换排序 冒泡排序 快速排序 选择排序 简单选择排序 堆排序 二路归并排序 基数排序 选择算法需要考虑的因素 排序的分类 其中比较重要的已做标记&#xff0c;下面来简要介绍一下 基本概…