网络基础知识点
osi七层模型:
应用层:提供用户接口,与用户进行交互
表示层:进行数据格式的转换
会话层:建立、维护和验证会话
传输层:保证目标从源到目的地的传输(传输协议和端口号)
网络层:进行路由的选择转发(ip)
数据链路层:建立实体链路连接,通过mac地址提供可靠的数据传输服务(mac)
物理层:进行比特流的传输
tcp和udp的区别
tcp是面向连接的,是可靠的,有确认重传机制,一个字节一个字节发送,传输速率慢准确性高
udp是无连接的,不可靠的,数据是封装后一块一块发的,传输速率高,但准确性较低
QQ使用的是udp,udp并不是不安全,如果使用tcp会有许多控制位和序列号进而有许多线程,因为它们更容易的控制一个链接,而udp则没有控制位和序列号,进而就不好处理udp连接
网段通信过程
1、判断在不在同一网段(通过网络号和子网掩码进行运行获得)
2、查询arp表(更新arp表)
3、发送arp广播包(除入接口外其他接口均转发,非目标则丢弃 )
交换机(mac表)收到广播包后首先进行学习,学习记录后进行广播转发
4、单播应答
发送到交换机通过前面的记录进行转发
5、更新arp表
后续发送就是单播了
arp表和mac表都存在内存里
ARP欺骗
在 同一个局域网内,一台电脑需要请求信息会发送一个ARP请求,这个请求是广播的,这时在同一个广播域内所有设备都会收到ARP广播的包,如果在这时你欺骗那台发送ARP请求的电脑,告诉他你想要请求或者发送数据的mac地址是我,那么你就可以在他发送数据到目标地址的途中修改或者窃取数据了(ARP是谁后来相信谁ip和mac是暂时匹配的,屏蔽延时2s,在2s内回复)
解决方法
1、通过写入静态的arp表(静态优先级高)
2、端口上将主机ip和mac地址绑定
3、vlan
二层交换机的工作原理
1、学习
2、查询mac地址表(老化时间0-100万秒,0
是不老化)
3、若没有mac地址表里没有,则进行泛洪
广播和泛洪的区别
原因不同,广播是全f目的是寻址,泛洪是因为mac地址表里没有该mac地址所以进行泛洪;广播没有具体内容,泛洪有具体的内容,目的地址
泛洪攻击
源mac随机一直发送给交换机,交换机只能泛洪,最终数据量过大导致交换瘫痪
解决方法:
端口安全特性:设置某个端口学习的上限
如何解决二层交换机单点故障
生成树(stp)解决二层交换机的环路问题 避免产生广播风暴
链路聚合
将多个接口虚拟成一个接口进而实现1+1=2的带宽,也可以解决二层单点故障
主机如何获取ip地址
1、手动配置
2、DHCP(应用层协议)
DHCP的工作过程
DHCP discover包:广播包,寻找能提供DHCPserver的服务器
DHCP offer包:DHCP应答包,告诉客户端它可以提供ip地址,DHCP server为它保留为它提供的ip地址(提供ip地址,默认网关,dns服务器地址,租期)
DHCP request:确认接受使用ip
DHCP ack:确认信息
(DHCP先到先接受 )
网关
进行数据包的转发,流量过滤,协议的转换
DHCP欺骗
伪造DHCP服务器为客户端主机提供一个错误的信息
DHCP的影响:1、地址冲突,无法上网
2、错误的网关信息,信息泄露、拦截、篡改
3、错误的dns信息,钓鱼网站
解决方法:
DHCP snopping:
设置信任接口(正常转发offer和ack),非信任接口(拦截offer和ack)
除了主机和合法服务器的中继设备设为信任端口外其他都设为非信任端口
为什么网络要分段?
1、广播流量太多
2、管理复杂
3、不利于安全风险的隔离,安全问题影响范围大
不同网段设备的通信过程
1、判断是不是在一个网段
2、查默认网关
3、查网关mac
4、封装发送数据包
5、路由选路(每一跳源mac和目标mac都会改变)
6、应答包(源和目的调换)
三层通信=多个二层通信
路由
直连路由:路由器接口所连接的子网的路由
静态路由:手工逐条配置,更改需要手动配置
动态路由:当路由发生变化时可以自动做出调整
默认路由:当路由器找不到存在的其他路由时就会选择默认路由
路由优先级:直连路由优先级最高,人工设置的优先级优于自动学习的路由
三层单点故障
vrrp协议(虚拟路由冗余协议):将多台物理路由器虚拟为一条 路由,两台路由器(master路由器、backup路由器、虚拟ip地址)
网段和广播域的区别
网段:网络号相同
广播域:能收到广播包的所有设备的集合
vlan
trunk:通过多个vlan,用于交换机与交换机,交换机和路由器之间
access:打标签/撕标签,用与交换机连接主机或路由器连接主机
单臂路由
虚拟子接口
DNS域名解析协议
域名-》IP
域名解析:A(address)记录
NS(Name Server)记录
NAT
SNAT:
将私网ip转换为公网ip进行访问,根据源端口号
一对一,多对多
DNAT:
将外网ip转换为内网ip,根据目的端口号
相关文章:
网络基础知识点
osi七层模型: 应用层:提供用户接口,与用户进行交互 表示层:进行数据格式的转换 会话层:建立、维护和验证会话 传输层:保证目标从源到目的地的传输(传输协议和端口号) 网络层&#x…...

力扣每日一题54:螺旋矩阵
题目描述: 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入:matrix [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5]示例 2: 输入&#…...

基于WebRTC的程序因虚拟内存不足导致闪退问题的排查以及解决办法的研究
目录 1、WebRTC简介 2、问题现象描述 3、将Windbg附加到目标进程上分析 3.1、Windbg没有附加到主程序进程上,没有感知到异常或中断 3.2、Windbg感知到了中断,中断在DebugBreak函数调用上 3.3、32位进程用户态虚拟地址和内核态虚拟地址的划分 …...
2023年9月青少年软件编程(C 语言) 等级考试试卷(三级)
2023年9月青少年软件编程(C 语言) 等级考试试卷(三级)含答案 1.谁是你的潜在朋友 题目描述 “臭味相投”——这是我们描述朋友时喜欢用的词汇。两个人是朋友通常意味着他们存在着许多共同的兴趣。然而作为一个宅男,你…...

用节点亲和性把 Pod 分配到节点
用节点亲和性把 Pod 分配到节点 当前集群信息: rootk8s-master:~# kubectl get node -o wide NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME k8s…...

GB28181学习(十)——视音频文件下载
要求 SIP服务器接收到媒体接收者发送的视音频文件下载请求后向媒体流发送者发送媒体文件下载命令,媒体流发送者采用RTP将视频流传输给媒体流接收者,媒体流接收者直接将视频流保存为媒体文件;媒体流接收者或SIP服务器可通过配置查询等方式获取…...

2023 年和 2024 年 10 个最佳加密货币趋势
1.熊市低迷 加密货币市场已进入持续数月的长期看跌阶段。尽管 2023 年初出现了一些看涨走势,但大多数领先的加密货币随后都出现了看跌低迷,导致其市值大幅下跌。 此外,持续的熊市可归因于一系列因素,包括宏观经济不确定性、利率…...
0026【Edabit ★☆☆☆☆☆】Convert Hours and Minutes into Seconds
0026【Edabit ★☆☆☆☆☆】Convert Hours and Minutes into Seconds language_fundamentals math Instructions Write a function that takes two integers (hours, minutes), converts them to seconds, and adds them. Examples convert(1, 3) // 3780 convert(2, 0) //…...

Java 枚举类
一、枚举类简介 1、枚举类概念 类的对象只有有限个且确定的,这种类称之为枚举类;因为在jdk1.5之前没有enum关键字来定义枚举类,只能采用class定义一个类然后将类做一些修改满足对象个数有限且确定,那么这种类就是枚举类…...

SQL sever中的存储过程
在Oracle的专篇中我也有仔细总结了存储过程的相关内容, 文章链接:http://t.csdnimg.cn/Z8AnH 尽管Oracle和SQL sever之间是存在一些区别,但许多基本的概念和原则在Oracle和SQL Server之间是通用的。它们之间有一些常见的区别,如下…...

spacy.load(“en_core_web_trf“)报错TypeError: issubclass() arg 1 must be a class
使用spacy时遇到的问题 写在最前面: 安装spacy和en_core_web_trf时需要保证二者版本一致 安装及查看对应spacy版本 安装 pip install spacy查看版本 import spacy spacy.__version__安装en_core_web_trf 直接安装(如果可以的话) pytho…...

【C++和数据结构】模拟实现哈希表和unordered_set与unordered_map
目录 一、哈希的概念与方法 1、哈希概念 2、常用的两个哈希函数 二、闭散列的实现 1、基本结构: 2、两种增容思路 和 插入 闭散列的增容: 哈希表的插入: 3、查找 4、删除 三、开散列的实现 1、基本结构 2、仿函数Hash 3、迭代器…...
十四天学会C++之第五天:类的详细讨论
1. 友元函数和友元类 什么是友元函数和友元类,它们的作用。如何声明和使用友元函数和友元类,访问类的私有成员。 友元函数(Friend Functions) 友元函数是一种特殊的函数,它被允许访问类的私有成员。这意味着即使成员…...

字典树学习笔记
trie 树,即字典树,是一种可以实现 O ( S ) O(S) O(S) 的预处理( S S S 为所有字符串的长度和), O ( N ) O(N) O(N)( N N N 为查询的字符串的长度)的查询的数据结构。 举个栗子,对于…...

web各个指标理解
QPS : 单位时间得请求次数 TPS :单位时间得事务数 并发 : QPS *单位响应时间 pv :进入一个网站,又单击打开该网站的其他页面,每打开一个页面就 增加一个PV,甚至在同一页面每刷新一次也多一个PV 二八定律:百…...
Java后端开发(七)-- 在gitee上部署远程仓库,通过idea上传本地代码(用idea2022版本开发)
目录 1. 在Gitee上创建gitee远程仓库 2.在打开idea,再打开您要上传的idea代码,先创建 本地git仓库...

Go语言入门心法(十二): GORM映射框架
Go语言入门心法(一): 基础语法 Go语言入门心法(二): 结构体 Go语言入门心法(三): 接口 Go语言入门心法(四): 异常体系 Go语言入门心法(五): 函数 Go语言入门心法(六): HTTP面向客户端|服务端编程 Go语言入门心法(七): 并发与通道 Go语言入门心法(八): mysql驱动安装报错o…...

Ubuntu更新镜像源切换
概述 用ubuntu用apt命令,自动安装或更新包的时候,默认的镜像源服务器非常卡,很不方便。切换到国内的镜像源,下载更新非常快。为防止以后忘记,本文以国内服务器阿里巴巴的为例简单描述。 版本 Ubuntu23.10 找到更新…...

“一键合并剪辑,轻松添加片头——全新的视频编辑工具让你成为视频制作达人“
在日常生活中,我们时常会遇到需要制作视频的情况。但面对繁琐的视频剪辑和合并,你是否感到无从下手?今天,我们为你带来一款全新的视频编辑工具,让你轻松成为视频制作达人! 首先我们要进入好简单批量智剪主页…...

1.3 矩阵
一、向量与矩阵 下面是三个向量 u \boldsymbol u u、 v \boldsymbol v v、 w \boldsymbol w w: u [ 1 − 1 0 ] v [ 0 1 − 1 ] w [ 0 0 1 ] \boldsymbol u\begin{bmatrix}\,\,\,\,1\\-1\\\,\,\,\,0\end{bmatrix}\kern 10pt\boldsymbol v\begin{bmatrix}\,\,\,…...

XCTF-web-easyupload
试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别
UnsatisfiedLinkError 在对接硬件设备中,我们会遇到使用 java 调用 dll文件 的情况,此时大概率出现UnsatisfiedLinkError链接错误,原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用,结果 dll 未实现 JNI 协…...

高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
JDK 17 新特性
#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持,不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的ÿ…...