趣谈网络协议_1
趣谈网络协议_1
- 第1讲 | 为什么要学习网络协议?
- 第4讲 | DHCP与PXE:IP是怎么来的,又是怎么没的?
- 动态主机配置协议(DHCP)
- 第5讲 | 从物理层到MAC层:如何在宿舍里自己组网玩联机游戏?
- 第一层(物理层)
- 第二层(数据链路层)
- 局域网
- 小结
- 第6讲 | 交换机与VLAN:办公室太复杂,我要回学校
- 如何解决常见的环路问题?
- 如何解决广播问题和安全问题?
- 小结
第1讲 | 为什么要学习网络协议?

第4讲 | DHCP与PXE:IP是怎么来的,又是怎么没的?
Linux 首先会判断,要去的这个地址和我是一个网段的吗,或者和我的一个网卡是同一网段的吗?只有是一个网段的,它才会发送 ARP 请求,获取 MAC 地址。如果发现不是呢?
Linux 默认的逻辑是,如果这是一个跨网段的调用,它便不会直接将包发送到网络上,而是企图将包发送到网关。
动态主机配置协议(DHCP)
动态主机配置协议(Dynamic Host Configuration Protocol),简称DHCP。
第5讲 | 从物理层到MAC层:如何在宿舍里自己组网玩联机游戏?
第一层(物理层)
我们要的是电脑连电脑。这种方式就是一根网线,有两个头。一头插在一台电脑的网卡上,另一头插在另一台电脑的网卡上。但是在当时,普通的网线这样是通不了的,所以水晶头要做交叉线,用的就是所谓的1-3、2-6 交叉接法
水晶头的第 1、2 和第 3、6 脚,它们分别起着收、发信号的作用。将一端的 1 号和 3 号线、2 号和 6 号线互换一下位置,就能够在物理层实现一端发送的信号,另一端能收到。
集线器:这种设备有多个口,可以将宿舍里的多台电脑连接起来。但是,和交换机不同,集线器没有大脑,它完全在物理层工作。它会将自己收到的每一个字节,都复制到其他端口上去(广播模式)。
第二层(数据链路层)
数据链路层,也即 MAC 层要解决的问题。MAC的全称是Medium Access Control,即媒体访问控制。

ARP 协议,也就是已知 IP 地址,求 MAC 地址的协议
ARP 发送一个广播包,谁是这个 IP 谁来回答。具体询问和回答的报文就像下面这样:

局域网
谁能知道目标 MAC 地址是否就是连接某个口的电脑的 MAC 地址呢?这就需要一个能把 MAC 头拿下来,检查一下目标 MAC 地址,然后根据策略转发的设备,按第二节课中讲过的,这个设备显然是个二层设备,我们称为交换机。
交换机也存在自学习能力(学习MAC地址),形成转发表,根据此表可以快速知道交换机各个接口对应的机器IP&MAC地址(注意可能会过期的)
小结
第一,MAC 层是用来解决多路访问的堵车问题的;
第二,ARP 是通过吼的方式来寻找目标 MAC 地址的,吼完之后记住一段时间,这个叫作缓存;
第三,交换机是有 MAC 地址学习能力的,学完了它就知道谁在哪儿了,不用广播了。
第6讲 | 交换机与VLAN:办公室太复杂,我要回学校
如何解决常见的环路问题?

如何解决广播问题和安全问题?
物理隔离:配置单独的子网
虚拟隔离:就是用我们常说的VLAN,或者叫虚拟局域网
在原来的二层的头上加一个 TAG,里面有一个 VLAN ID,一共 12 位

小结
- 当交换机的数目越来越多的时候,会遭遇环路问题,让网络包迷路,这就需要使用 STP 协议,通过华山论剑比武的方式,将有环路的图变成没有环路的树,从而解决环路问题。
- 交换机数目多会面临隔离问题,可以通过 VLAN 形成虚拟局域网,从而解决广播问题和安全问题。
相关文章:
趣谈网络协议_1
趣谈网络协议_1 第1讲 | 为什么要学习网络协议?第4讲 | DHCP与PXE:IP是怎么来的,又是怎么没的?动态主机配置协议(DHCP) 第5讲 | 从物理层到MAC层:如何在宿舍里自己组网玩联机游戏?第…...
利用WebStorm开发react——本文来自AI创作助手
要在WebStorm中开发React应用程序,请按照以下步骤进行设置: 1.安装Node.js和npm(如果尚未安装)。 2.下载和安装WebStorm。 3.打开WebStorm,并在欢迎界面中选择“Create New Project”。 4.在弹出窗口中,…...
将本地构建的镜像推送到远程镜像库,构建多种系统架构支持的Docker镜像并推送到Docker Hub
目录 推送到 Docker Hub前提:需要在 [Docker Hub](https://hub.docker.com/) 创建账户、创建仓库。1. 创建 Dockerfile 和构建镜像:docker build -t2. 登录到远程镜像库:docker login3. 将镜像标记为远程仓库地址:docker tag4. 推…...
【技术分享】NetLogon于域内提权漏洞(CVE-2020-1472)
一、漏洞介绍 CVE-2020-1472是一个Windows域控中严重的远程权限提升漏洞。攻击者在通过NetLogon(MS-NRPC)协议与AD域控建立安全通道时,可利用该漏洞将AD域控的计算机账号密码置为空,从而控制域控服务器。该漏洞适用于Win2008及后…...
python学习之【模块】
前言 上一篇文章 python学习之【深拷贝】中学习了python中的深浅拷贝学习内容,这篇文章接着学习python中的模块。 什么是模块 在python中,一个文件(以“.py”为后缀名的文件)就叫做一个模块,每一个模块在python里都…...
dns电脑服务器发生故障怎么修复
DNS电脑服务器发生故障可能会导致网络连接问题、网页无法访问、或者电子邮件无法发送等情况。修复DNS电脑服务器故障可以采取多种方法,例如检查网络连接、更换DNS服务器等措施。当DNS电脑服务器发生故障时,可以采取以下修复措施: 尝试刷新DNS…...
Python项目Flask ipv6双栈支持改造
一、背景 Flask 是一个微型的(轻量)使用Python 语言开发的 WSGI Web 框架(一组库和模块),基于Werkzeug WSGI工具箱/库和Jinja2 模板引擎,当然,Python的WEB框架还有:Django、Tornado、Webpy,这暂且不提。 Flask使用BSD授权。 Flask也被称为microframework(微框架),F…...
hcia 目的mac为(单播 组播 广播)mac
从下往上看...
专栏十:10X单细胞的聚类树绘图
经常在文章中看到对细胞群进行聚类,以证明两个cluster之间的相关性,这里总结两种绘制这种图的方式和代码,当然我觉得这些五颜六色的颜色可能是后期加的,本帖子只总结画树状图的方法 例一 文章Single-cell analyses implicate ascites in remodeling the ecosystems of pr…...
linux查找命令使用的正则表达式
正则表达式是一种用于匹配和操作文本的强大工具,它是由一系列字符和特殊字符组成的模式,用于描述要匹配的文本模式。 正则表达式可以在文本中查找、替换、提取和验证特定的模式。 一般的查找命令是:grep,sed,awk 元字…...
ffmpeg6.0编译(NDK)
ffmpeg 6.0 支持vulkan 需要手动安装Vulkan 并将include里面的vk_video 和 vulkan 拷贝到 android-ndk-r25c/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/ vulkan 下载 cp -r vk_video $NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/…...
达观RPA实战-编码与解码
一、应用背景 项目中我们经常需要获取某个服务的JSON数据。如果响应返回的是JSON格式的数据,客户端通过JSON工具可正常解析。但如果碰到值里面有中文的,特别是返回的格式是类似“{"name": "\u5927\u7231\u4e2d\u56fd"}”处理起来会比较麻烦。本文将从编…...
配置Swagger开发环境有效,生产环境无效
安全扫描:通用信息泄漏【未授权访问ip:端口号/swagger-ui.html】 步骤一:配置启用变量【开发环境可用生产环境不可用】 application-dev.yml: swagger:enable: true application-pro.yml: swagger:enable: false 步骤二:根据配置变量控…...
Jmeter系列-线程组的执行顺序(10)
重点 每个测试计划至少需要有一个线程组 线程组下不同组件的执行优先级/顺序 1、配置元件、监听器 2、前置处理器 3、定时器 4、逻辑控制器 5、取样器 6、后置处理器 7、断言 取样器执行顺序 在没有逻辑控制器情况下,取样器是按从上往下的顺序执行的 参考文章…...
c# 面试题
简述 private、 protected、 public、 internal 修饰符的访问权限。 答: Private(拍非得) : 私有成员, 在类的内部才可以访问。 protected (普泰忒): 保护成员,该类内部和继承类中可以访问。 Publ…...
目录优先的图片库网站PiGallery2
什么是 PiGallery2 ? PiGallery2 是一个快速的目录优先的图片库网站,具有丰富的用户界面,针对在低资源服务器(尤其是树莓派)上运行进行了优化 所谓 目录优先 是指,这种网站的设计是以显示不同的目录&#x…...
17-垃圾回收相关概念
目录 一、System.gc()的理解二、内存溢出和内存泄漏2、内存泄漏 三、Stop the World1、什么是 stop the word ? 四、垃圾回收的并行和并发1、并发和并发2、垃圾回收的并行和并发 五、安全点与安全区域1、什么是安全点?2、安全区域 六、强引用(不可回收&…...
Ubuntu-server 22.04LTS源码编译apache服务器
1 系统环境 # cat /etc/os-release PRETTY_NAME"Ubuntu 22.04.3 LTS" NAME"Ubuntu" VERSION_ID"22.04" VERSION"22.04.3 LTS (Jammy Jellyfish)" VERSION_CODENAMEjammy IDubuntu ID_LIKEdebian HOME_URL"https://www.ubuntu.co…...
科技资讯|苹果虚拟纸可在Vision Pro中为广告、书籍等提供MR内容和动画
近日,美国专利商标局正式授予苹果一项与虚拟纸张相关的专利。这是与虚拟纸张这项发明相关的第二项专利,鉴于苹果 Vision Pro 将于明年上市,那么我们离苹果实现虚拟纸张的发明又近了一步。 虚拟纸张将能够包含 2D、3D 和动画等 MR内容&#…...
JavaScript-promise使用+状态
Promise 什么是PromisePromise对象就是异步操作的最终完成和失败的结果; Promise的基本使用: 代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compati…...
ARM架构Kylin V10上Kettle部署全攻略:从驱动配置到无界面运行
ARM架构Kylin V10上Kettle部署全攻略:从驱动配置到无界面运行 在国产化替代浪潮中,ARM架构服务器搭配麒麟操作系统已成为金融、政务等关键领域的基础设施标配。然而,当传统ETL工具Kettle遇上这套"全国产"环境,从驱动兼容…...
完整指南:使用wiliwili在Switch上实现本地视频播放的高效方案
完整指南:使用wiliwili在Switch上实现本地视频播放的高效方案 【免费下载链接】wiliwili 专为手柄控制设计的第三方跨平台B站客户端,目前可以运行在PC全平台、PSVita、PS4 和 Nintendo Switch上 项目地址: https://gitcode.com/GitHub_Trending/wi/wil…...
pnpm报错Node版本不兼容?3分钟学会用nvm-windows切换Node版本(含LTS版本选择建议)
pnpm报错Node版本不兼容?3分钟学会用nvm-windows切换Node版本(含LTS版本选择建议) 刚接手新项目时,我习惯性输入pnpm install准备安装依赖,却看到刺眼的报错提示:"ERROR: This version of pnpm requi…...
5分钟精通Android系统精简:Universal Android Debloater终极指南
5分钟精通Android系统精简:Universal Android Debloater终极指南 【免费下载链接】universal-android-debloater Cross-platform GUI written in Rust using ADB to debloat non-rooted android devices. Improve your privacy, the security and battery life of y…...
C语言开发环境哪家强?VSCode优势多,配置步骤快来看
当前存在多种C语言开发环境,其中最为专业的当属CLion,它能够运用各类AI辅助编程插件,然而无法免费使用,并且体积过于庞大。免费的像DevCpp等,体积较小,配置简便,只是无法接入AI辅助编程插件。VS…...
突破原厂限制:用开源相机工具解锁Sony相机7大隐藏功能
突破原厂限制:用开源相机工具解锁Sony相机7大隐藏功能 【免费下载链接】Sony-PMCA-RE Reverse Engineering Sony Digital Cameras 项目地址: https://gitcode.com/gh_mirrors/so/Sony-PMCA-RE 作为一名摄影爱好者,我一直梦想能充分掌控我的Sony相…...
GLM-4V-9B开源模型部署教程:4-bit量化+Streamlit+消费级GPU全适配
GLM-4V-9B开源模型部署教程:4-bit量化Streamlit消费级GPU全适配 你是不是也遇到过这样的困扰:想本地跑一个真正能看图说话的多模态大模型,结果发现显存不够、环境报错、图片上传后模型乱输出,甚至直接卡死?官方Demo看…...
BFG Repo Cleaner终极指南:10倍速清理Git仓库的完整方案
BFG Repo Cleaner终极指南:10倍速清理Git仓库的完整方案 【免费下载链接】bfg-repo-cleaner Removes large or troublesome blobs like git-filter-branch does, but faster. And written in Scala 项目地址: https://gitcode.com/gh_mirrors/bf/bfg-repo-cleaner…...
Playwright Python终极指南:高效浏览器自动化测试的10个技巧
Playwright Python终极指南:高效浏览器自动化测试的10个技巧 【免费下载链接】playwright-python Python version of the Playwright testing and automation library. 项目地址: https://gitcode.com/GitHub_Trending/pl/playwright-python Playwright Pyth…...
Python 数据统计分析全攻略:从基础到实战,一文掌握常用方法
在数据分析、机器学习、业务报表开发等场景中,数据统计分析是核心基础环节。Python 凭借丰富的第三方库,成为数据统计分析的首选工具。本文将系统梳理 Python 中数据统计分析的常用方法、核心库、实战代码,从基础统计量到高级分析,…...
