当前位置: 首页 > news >正文

趣谈网络协议_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 谁来回答。具体询问和回答的报文就像下面这样:
ARP广播查找IP对应的MAC

局域网

谁能知道目标 MAC 地址是否就是连接某个口的电脑的 MAC 地址呢?这就需要一个能把 MAC 头拿下来,检查一下目标 MAC 地址,然后根据策略转发的设备,按第二节课中讲过的,这个设备显然是个二层设备,我们称为交换机
交换机也存在自学习能力(学习MAC地址),形成转发表,根据此表可以快速知道交换机各个接口对应的机器IP&MAC地址(注意可能会过期的)

小结

第一,MAC 层是用来解决多路访问的堵车问题的;
第二,ARP 是通过吼的方式来寻找目标 MAC 地址的,吼完之后记住一段时间,这个叫作缓存;
第三,交换机是有 MAC 地址学习能力的,学完了它就知道谁在哪儿了,不用广播了。

第6讲 | 交换机与VLAN:办公室太复杂,我要回学校

如何解决常见的环路问题?

环路

如何解决广播问题和安全问题?

物理隔离:配置单独的子网
虚拟隔离:就是用我们常说的VLAN,或者叫虚拟局域网
在原来的二层的头上加一个 TAG,里面有一个 VLAN ID,一共 12 位
在这里插入图片描述

小结

  • 当交换机的数目越来越多的时候,会遭遇环路问题,让网络包迷路,这就需要使用 STP 协议,通过华山论剑比武的方式,将有环路的图变成没有环路的树,从而解决环路问题。
  • 交换机数目多会面临隔离问题,可以通过 VLAN 形成虚拟局域网,从而解决广播问题和安全问题。
http://www.lryc.cn/news/168209.html

相关文章:

  • 利用WebStorm开发react——本文来自AI创作助手
  • 将本地构建的镜像推送到远程镜像库,构建多种系统架构支持的Docker镜像并推送到Docker Hub
  • 【技术分享】NetLogon于域内提权漏洞(CVE-2020-1472)
  • python学习之【模块】
  • dns电脑服务器发生故障怎么修复
  • Python项目Flask ipv6双栈支持改造
  • hcia 目的mac为(单播 组播 广播)mac
  • 专栏十:10X单细胞的聚类树绘图
  • linux查找命令使用的正则表达式
  • ffmpeg6.0编译(NDK)
  • 达观RPA实战-编码与解码
  • 配置Swagger开发环境有效,生产环境无效
  • Jmeter系列-线程组的执行顺序(10)
  • c# 面试题
  • 目录优先的图片库网站PiGallery2
  • 17-垃圾回收相关概念
  • Ubuntu-server 22.04LTS源码编译apache服务器
  • 科技资讯|苹果虚拟纸可在Vision Pro中为广告、书籍等提供MR内容和动画
  • JavaScript-promise使用+状态
  • xshell---git上传文件到gitee远程仓库配置
  • 【GO语言基础】前言
  • 巧妙的设计
  • 前端JavaScript中MutationObserver:监测DOM变化的强大工具
  • 28335 GPIO作为输入的配置记录
  • js脚本解决markdown本地图片->图床问题,附源代码和编译后的exe
  • C#不通过byte[],直接对内存映射文件复制内存
  • ELK之Logstash启动异常:Logstash could not be started because there is already...
  • Matlab Simulink支持system generator插件
  • redis设计规范
  • 用于非线性多载波卫星信道的多输入多输出符号速率信号数字预失真器DPD(Matlab代码实现)