计算机网络:数据链路层 —— 网络适配器与 MAC 地址

news2024/10/16 23:15:21

文章目录

    • 网络适配器
      • 使用网络适配器
      • 网络适配器类型
    • MAC 地址
      • MAC 地址格式
      • MAC 地址类型
      • MAC 地址发送顺序
      • 数据接收
      • MAC 地址泄露问题

网络适配器

要将计算机连接到以太网,需要使用相应的网络适配器(Adapter),网络适配器一般简称为“网卡”。在计算机内部,网卡与 CPU 之间的通信,一般是通过计算机主板上的 I/O 总线以并行传输方式进行,网卡与外部以太网(局域网)之间的通信,一般是通过传输媒体(同轴电缆、双绞线电缆、光纤)以串行方式进行的。

![[Adapter Transmission.png]]

使用网络适配器

网卡(网络适配器)除了要实现物理层和数据链路层功能,其另外一个重要功能就是要进行并行传输和串行传输的转换。由于网络的传输速率和计算机内部总线上的传输速率并不相同,因此在网卡的核心芯片中都会包含用于缓存数据的存储器

在确保网卡硬件正确的情况下,为了使网卡正常工作,还必须要在计算机的操作系统中为网卡安装相应的设备驱动程序。驱动程序负责驱动网卡发送接收帧

一般情况下,普通用户计算机中往往会包含两块网卡:

  • 一块是用于接入有线局域网以太网卡
  • 一块是用于接入无线局域网Wi-Fi网卡

每块网卡都有一个全球唯一的 MAC 地址。交换机和路由器往往具有更多的网络接口,所以会拥有更多的 MAC 地址。

网络适配器类型

  • 有线网络适配器:通过物理连接(如以太网电缆)连接到网络,常用于固定位置的设备如台式机和服务器。

  • 无线网络适配器:通过无线电波与无线接入点(AP)通信,适用于便携式设备如笔记本电脑和平板电脑。

  • 集成网络适配器:许多现代计算机已经将网络适配器集成在主板上,无需额外的硬件。

  • 外部网络适配器:如USB网络适配器,可以为不具备内置网络连接能力的设备提供网络接入功能。

MAC 地址

数据链路层必须使用地址来区分各主机,当多个主机连接在同一个广播信道上,要想实现两个主机之间的通信,则每个主机都必须有一个唯一的标识,即一个数据链路层地址。在每个主机发送的帧的首部中,都携带有发送主机(源主机)和接收主机(目的主机)的数据链路层地址。由于这类地址是用于媒体接入控制(Medium Access Control,MAC)的,因此被称为 MAC 地址

MAC 地址(Media Access Control Address),也称为物理地址,由于一般被固化在网卡的电可擦可编程只读存储器 EEPROM 中,因此 MAC 地址也被称为硬件地址

MAC 地址在数据链路层上使用,用于在局域网中唯一标识和寻址设备。在数据帧中,源地址字段和目标地址字段分别用于指示发送者和接收者的 MAC 地址。交换机和网桥等网络设备使用 MAC 地址来转发数据帧,将数据帧从一个端口转发到另一个端口,以实现设备间的通信。

虽然 MAC 地址在局域网中是唯一的,但在全球范围内并不一定唯一,因此在互联网上,通常使用 IP 地址来唯一标识设备。然而,在局域网内,MAC 地址在数据链路层上仍然扮演着重要的角色。

MAC 地址格式

MAC 地址是网络设备(如计算机、路由器、交换机等)在以太网或其他数据链路层上的唯一标识符。每个网络设备都有一个独特的 MAC 地址,由48位二进制数表示,通常以十六进制数的形式表示,例如:00:1A:2B:3C:4D:5E

MAC 地址由厂商全球唯一地分配给设备,前24位(6个十六进制数)标识厂商,后 24 位则是厂商内部分配给设备的唯一标识。因此,MAC 地址既可以用于识别设备的制造商,也可以用于唯一地识别设备本身。

![[MAC Frame.png]]

严格来说,MAC 地址是对网络上各接口的唯一标识,而不是对网络上各设备的唯一标识。

MAC 地址类型

![[MAC Type.png]]

MAC 地址发送顺序

字节发送顺序:第 1 字节 ——> 第 6 字节

字节内比特发送顺序:b0 ——> b7

数据接收

网卡从网络上每收到一个无误码的帧,就检查帧首部中的目的 MAC 地址,按以下情况处理:

  1. 如果目的 MAC 地址是广播地址(FF-FF-FF-FF-FF-FF),则接受该帧。

  2. 如果目的 MAC 地址与网卡上固化的全球单播 MAC 地址相同,则接受该帧。

  3. 如果目的 MAC 地址是网卡支持的多播地址,则接受该帧。

  4. 除上述1、2和3情况外,丢弃该帧。

网卡还可被设置为一种特殊的工作方式,混杂方式(Promiscuous Mode)。工作在混杂方式的网卡,只要收到共享媒体上传来的帧就会收下而不管帧的目的 MAC 地址是什么。

  • 对于网络维护和管理人员,这种方式可以监视和分析局域网上的流量,以便找出提高网络性能的具体措施。

  • 嗅探器(Sniffer)就是一种工作在混杂方式的网卡,再配合相应的工具软件(WireShark),就可以作为一种非常有用的网络工具来学习和分析网络。

  • 混杂方式就像一把“双刃剑”,黑客常利用这种方式非法获取网络用户的口令。

MAC 地址泄露问题

全球单播 MAC 地址就如同身份证上的身份证号码,具有唯一性,它往往与用户个人信息绑定在一起。因此,用户应尽量确保自己拥有的全球单播 MAC 地址不被泄露。为了避免用户设备连接 Wi-Fi 热点时 MAC 地址泄露的安全问题,目前大多数移动设备都已经采用了随机 MAC 地址技术

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

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

相关文章

通信工程学习:什么是SRAM静态随机存取存储器

SRAM:静态随机存取存储器 SRAM,全称为Static Random-Access Memory,即静态随机存取存储器,是一种重要的随机存取存储器类型。以下是对SRAM的详细介绍: 一、定义与特点 定义: SRAM是一种只要保持通电&#…

CSS @规则(At-rules)系列详解___@import规则使用方法

CSS 规则(At-rules)系列详解 ___import规则使用方法 本文目录: 零、时光宝盒 一、import规则定义和用法 二、CSS import语法 2.1、语法格式 2.2、常见形式 2.3、语法说明 三、import使用方法例子 3.1、导入 CSS 规则 3.2、根据媒体查询条件导入 CSS 规则 …

结构体字节对齐的一些记录

‌结构体字节对齐的原因‌ 结构体字节对齐的主要原因是为了满足硬件平台的内存访问要求。某些硬件平台对特定类型的数据只能从特定的内存地址开始存取,如果数据没有进行对齐,可能会导致访问错误或效率低下。例如,某些架构的CPU在访问未对齐的…

原来CDC数据同步可以这么简单,零代码可视化一键数据同步

当前企业实时同步与分析场景中面临的挑战: 随着业务发展需要,实时分析成为企业目前的强需求,成为支撑企业业务发展的必须项。 一般来说,要满足数据实时分析的诉求,通常有两种方案: 第一种是直接使用源端…

多线程——解决线程安全问题

目录 前言 一、 synchronized 关键字 1. synchronized 的作用 1. synchronized 的特性 (1)互斥性 (2)可重入 2. synchronized 使用示例 (1)修饰代码块 (2)直接修饰普通方法…

Linux的GDB学习与入门

GDB GDB(GNU Debugger)是一个功能强大的调试工具,广泛用于调试 C、C 和其他编程语言编写的程序。它是 GNU 项目的一部分,专为帮助开发者在程序执行时检测和修复错误设计。GDB 能够控制程序的执行,查看程序内部的状态&…

2024诺奖引发思考,AI究竟是泡沫还是未来?

你好,我是三桥君 现在的AI技术发展得非常快,特别是深度学习和大模型这些技术,感觉和以前那些最后没搞成的技术泡沫不一样。 现在AI有超级强大的计算能力,还有大量的数据可以用来训练,算法也越来越厉害,能搞…

【单机游戏】【烛火地牢2:猫咪的诅咒】烛火地牢2:猫咪的诅咒介绍

《烛火地牢2:猫咪的诅咒》是一款将Roguelike与2D横版动作融为一体的独立游戏,由新西兰制作人Chris McFarland耗费3年时间精心制作。玩家将闯入不同的关卡接受挑战,通关要求是寻找每个关卡中的钥匙。在闯关时玩家能获得武器,防具&a…

关于int*的*号归属权问题

再根据函数指针定义:int (*int) (int a)。我们发现*和后面的标识符才是一体的 所以int *a,b;的写法更好,说明a是指针类型,b是int类型

让Kimi像人类思考的“Kimi探索版“已开启灰度内测!GPT-o1贡献者之一宣布离职|AI日报

文章推荐 “AI教父”辛顿与物理学家霍普菲尔德荣获诺贝尔物理学奖!“AI教母”李飞飞选择谷歌云作为主要计算提供商|AI日报 今日热点 o1推理模型贡献者Luke Metz官宣从OpenAI离职 就在昨日,o1推理模型贡献者之一Luke Metz发文称自己经过两…

Ofcms-(java代码审计学习)

1、背景 根据《java代码审计实战》学习进行记录,java代码审计CMS实战。 2、Ofcms下载 可搜索Ofcms1.1.2版本进行下载。下载连接:ofcms: java 版CMS系统、基于java技术研发的内容管理系统、功能:栏目模板自定义、内容模型自定义、多个站点管…

五、UI弹窗提示

一、制作弹窗UI 二、创建脚本 1、继承WindowRoot(UI基类) 获取UI上面的组件 2、初始化 将这个文本失活 3、写一个提示出现的方法 这个派生类中,继承了基类的两个方法,设置显示和设置文本 对应基类的这两个方法 将动画赋值给动…

DDPM - Denoising Diffusion Probabilistic Models 扩散模型

DDPM - Denoising Diffusion Probabilistic Models 扩散模型 扩散模型概述 扩散模型是在模拟图像加噪的逆向过程。也就是在实现一个去噪的过程。简单的来说就包括两个过程组成 前向的扩散过程 Forward Diffusion Process反向扩散过程 Reverse Diffusion Process 下面我们对整个…

流域生态系统服务评价、水文水生态分析、碳收支、气候变化影响、制图等领域中的应用

流域生态系统服务评价、水文水生态分析、碳收支、气候变化影响、制图等领域中的应用 专题一、生态系统服务评价技术框架 1.1 生态系统服务概述 1.2 流域生态系统服务的分类与作用 1.3 生态系统服务评估方法 专题二、AI大模型与生态系统服务评价 2.1 目前常用大模型介绍 2…

Java并发 - AQS之ReentrantLock

文章目录 ReentrantLockAQS 队列AbstractOwnableSynchronizerAbstractQueuedSynchronizerNodewaitStatusSHARED/EXCLUSIVE 模式 加锁流程尝试加锁 tryAcquire加锁失败入队addWaiterenq 阻塞等待 acquireQueuedparkAndCheckInterrupt 放弃加锁 cancelAcquire唤醒阻塞线程 unpark…

大语言模型训练

大语言模型训练 1.两大问题2.并行训练2.1数据并行2.2模型并行2.3张量并行2.4混合并行 3.权重计算3.1浮点数3.2混合精度训练3.3deepspeed(微软)3.3.1 ZeRO3.3.2ZeRO-offload 3.3总结 4.PEFT4.1Prompt TuningPrefix-tuning4.2P-tuning & P-tuning v2 5…

arcpy总结

arcpy 一、是什么二、为什么三、怎么用1、在哪里打开2、基础术语3、代码组织4、案例(1)裁剪(2)土地变化特征分析(4)文件访问与检测(5)空间数据的查询、插入与更新(6&…

伯努利分布(Bernoulli distribution)的两次成功之间间隔次数的分布

伯努利分布(Bernoulli distribution)是一种特殊的二项式分布,即0-1分布。百科上已经说明了这种分布,即,其中。其数学期望为,方差为。详细说明见0—1分布_百度百科 本文进一步说明对于这类分布的事件&#…

BUUCTF-greatescape1

发现有ftp包和tcp包居多 下载解压是个流量包,使用wiresharh打开,CTRLF,按下图搜索ftp tcp18流发现ssc.key 传送,在19流发现key内容 复制保存为ssc.key, 加载key解密tls,再追踪tls流可得flag INS{OkThatWasWay2Easy} …

微知-Bluefield DPU使用flint烧录固件报错MFE_NO_FLASH_DETECTED是什么?MFE是什么?

文章目录 背景一些报错场景MFE是什么?有哪些MFE 背景 在DPU的fw操作flint的时候,很多命令都会报这个错误:MFE_NO_FLASH_DETECTED,早期很疑惑并且猜测MFE是Mellanox Firmware Engine。实际并不是,具体还得走到mellanox…