MAC Address

文章目录

  • 1. 前言
  • 2. MAC Address
    • 2.1 MAC 地址格式
    • 2.2 Locally Administered MAC Address
      • 2.3 MAC 单播 和 多播
  • 3. 参考资料

1. 前言

限于作者能力水平,本文可能存在谬误,因此而给读者带来的损失,作者不做任何承诺。

2. MAC Address

2.1 MAC 地址格式

网络设备的 MAC 地址格式如下图:
在这里插入图片描述
MAC 共 6 个字节,前 3 个字节为制造商 ID,从 OUI 组织申请,后 3 个字节为厂商网络设备的唯一标识。

2.2 Locally Administered MAC Address

Locally Administered Address 是一类特殊的 MAC 地址,类似于 LAN IP 地址,如 10.0.0.0/8,192.168.0.0/16,172.16.0.0/16 等局域网地址。Locally Administered Address 是系统管理员自定义的网络设备 MAC,不会和各大厂商注册的 MAC 冲突,通常用于虚拟网卡(如网桥)等设备。

MAC 地址的第一个字节的第 2 位,即上图中的 U/L bit ,如果该 bit 为 0,则为 OUI 组织分配的各大厂商 MAC否则Locally Administered Address 。看下对 Locally Administered Address 的说明:

locally administered addressA locally administered MAC address is similar to a LAN IP address (10.0.0.0/8, 
172.16.0.0/12, and 192.168.0.0/16). You can make up your own locally administered 
address and can be sure that it will not collide with any hardware on your network that 
use a factory burned-in MAC address. Locally administered addresses are useful when 
creating virtual machines or virtual network interfaces.The second bit of the first byte of a MAC address determines the type of OUI. If the bit 
is 0 then it is an OUI globally assigned by the IEEE; if the bit is 1 then it is a locally
administered MAC address.Create a OUI by whatever scheme you like, then logically OR it with 02:00:00:00:00:00, and
then logically AND it with fe:ff:ff:ff:ff:ff, and you will have a locally administered 
address. The first OR pattern sets bit 2 of the first byte; the second AND pattern clears 
bit 1 of the first byte (unicast, not multicast).The following MAC address pattern satisfies the OUI requirements:
4e:4f:41:48:00:00

2.3 MAC 单播 和 多播

在这里插入图片描述
上图中,MAC 的最高字节的 bit 0,如果该 bit 为 0,则是单播 MAC;否则多播 MAC。看下面的描述:

universally administered address The original IEEE 802 MAC address comes from the original Xerox Ethernet addressing scheme.
This 48-bit address space contains potentially 248 or 281,474,976,710,656 possible MAC 
addresses.All three numbering systems use the same format and differ only in the length of the 
identifier. Addresses can either be "universally administered addresses" or "locally 
administered addresses".A universally administered address is uniquely assigned to a device by its manufacturer; 
these are sometimes called "burned-in addresses" (BIA). The first three octets (in 
transmission order) identify the organization that issued the identifier and are known as 
the Organizationally Unique Identifier (OUI). The following three (MAC-48 and EUI-48) or 
five (EUI-64) octets are assigned by that organization in nearly any manner they please,
subject to the constraint of uniqueness. The IEEE expects the MAC-48 space to be 
exhausted no sooner than the year 2100; EUI-64s are not expected to run out in the 
foreseeable future.A locally administered address is assigned to a device by a network administrator, 
overriding the burned-in address. Locally administered addresses do not contain OUIs.Universally administered and locally administered addresses are distinguished by setting 
the second least significant bit of the most significant byte of the address. If the bit 
is 0, the address is universally administered. If it is 1, the address is locally 
administered. In the example address 06-00-00-00-00-01 the most significant byte is 
06 (hex), the binary form of which is 00000110, where the second least significant bit is 
1. Therefore, it is a locally administered address. Consequently, this bit is 0 in all 
OUIs.If the least significant bit of the most significant octet of an address is set to 0 
(zero), the frame is meant to reach only one receiving NIC. This type of transmission 
is calledunicast . A unicast frame is transmitted to all nodes within the collision 
domain , which typically ends at the nearest network switch or router . Only the node 
with the matching hardware MAC address will accept the frame; network frames with 
non-matching MAC-addresses are ignored, unless the device is in promiscuous mode.If the least significant bit of the most significant address octet is set to 1, the packet
will still be sent only once; however, NICs will choose to accept it based on different
criteria than a matching MAC address: for example, based on a configurable list of 
accepted multicast MAC addresses. This is called multicast addressing.

3. 参考资料

[1] Understanding MAC Addresses
[2] Identify a randomised (locally administered) MAC Address
[3] 给自己分一个 MAC地址–locally administered address
[4] MAC 地址格式
[5] Organizationally unique identifier
[6] MAC address

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

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

相关文章

(八)Linux的进程与线程

多任务处理是指用户可以在同一时间内运行多个应用程序,每个正在执行的程序被称为一个任务。一个任务包含一个或多个完成独立功能的子任务,其中子任务可以是进程或线程。Linux就是一个支持多任务的操作系统,比起单任务系统它的功能增强许多。 一.进程 进程:一个具有独立功…

nodejs微信支付安全证书下载,亲测有效

微信支付是目前非常流行的支付方式之一,很多开发者在集成微信支付时需要下载并使用微信支付的安全证书。本文将详细介绍如何在Node.js环境中下载微信支付安全证书,并提供一个亲测有效的示例代码。 前置条件 在开始之前,请确保你已经具备以下…

3d渲染软件有哪些(1),渲染100邀请码1a12

3D渲染是把三维模型转成2D图像的过程,领域不同常用的软件也不一样,今天我们就简单介绍几个。 在介绍前我们先推荐一个设计人员常用到的工具,就是网渲平台渲染100,通过它设计师可以把本地渲染放到云端进行,价格也不贵&a…

永洪bi里topN的设置/用法

要实现的效果:实现通过输入参数,进行图表top的排序筛选 图示: 筛选前: 输入3,看top3的值: 输入-3,看倒数3个的值: 设置步骤: 1️⃣:添加一个“文本参数组件…

二叉搜索树详解

一、二叉搜索树的概念 二叉搜索树又名二叉排序树以及二叉查找树,它是一颗空树或者是具有以下性质的二叉树 *若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 *若它的右子树不为空,则右子树上所有节点的值都大于根节点的值 *它…

昂科烧录器支持KIOXIA铠侠的可编程只读存储器TH58NVG4S0HTAK0

芯片烧录行业领导者-昂科技术近日发布最新的烧录软件更新及新增支持的芯片型号列表,其中KIOXIA铠侠的电可擦除可编程只读存储器TH58NVG4S0HTAK0已经被昂科的通用烧录平台AP8000所支持。 TH58NVG4S0HTAK0是一个单一的3.3V 16Gbit(18253611008位&#xff…

QT拖放事件之一:初识拖放4大事件处理函数

0、拖放 两个动作,合在一起称之为拖放事件; 拖:就是拖着走; 放:就是拖着走,然后松开鼠标了,释放了,这就是放; 注意:放:拖着的东西要放在什么地方??? 假如,我将一个记事本拖着跑,然后放到一个Widget窗口上,那么为了使得Widget能感知相应的事件(拖着进入事件…

智慧城市低空+AI视频智能监控:构建新时代安全防线

随着科技的飞速发展,智能监控技术已经广泛应用于各个领域,从城市治理到工业生产,从公共安全到环境监测,都发挥着越来越重要的作用。而在低空领域,AI视频智能监控方案的建设更是成为了一个热点话题。 一、低空AI视频智…

设计模式原则——迪米特法则原则

设计模式原则 设计模式示例代码库地址: https://gitee.com/Jasonpupil/designPatterns 迪米特法则原则: 意义在于降低类之间的耦合。由于每个对象尽量减少对于其他对象的了解,因此,很容易使得系统的功能模块功能独立&#xff…

[论文笔记]Mixture-of-Agents Enhances Large Language Model Capabilities

引言 今天带来一篇多智能体的论文笔记,Mixture-of-Agents Enhances Large Language Model Capabilities。 随着LLMs数量的增加,如何利用多个LLMs的集体专业知识是一个令人兴奋的开放方向。为了实现这个目标,作者提出了一种新的方法&#xf…

Erpnext安装

Erpnext安装 环境要求 Ubuntu 23.04 x86_64 Python 3.10.12 pip 23.0.1 node v18.16.0 npm 9.5.1 yarn 1.22.22 MariaDB 10.11.2 Redis 7.0.8 wkhtmltox 0.12.6.1 bench 5.22.6环境安装 Reids 安装 // 安装7.0.8 也可不指定版本 直接执行 sudo apt install redis-server s…

Spring Boot 3 搭建

1、jdk 17 2、spring boot 3.1.7 3、pom.xml <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xs…

在线客服源码系统全端通用 源码完全开源可以二次开发 带完整的安装代码包以及搭建教程

系统概述 在线客服源码系统采用了先进的技术架构&#xff0c;包括前端界面、后端服务、数据库等部分。前端界面采用了响应式设计&#xff0c;能够自适应不同的设备屏幕尺寸&#xff0c;为用户提供良好的使用体验。后端服务采用了高性能的服务器架构&#xff0c;确保系统的稳定…

【面向对象】复习(三)

this指针 本职&#xff1a;指针常量&#xff0c;指向当前对象 不能访问静态成员&#xff0c;因为静态成员属于类&#xff0c;this指针属于对象 不要返回局部变量的引用或指针 int f(){ int a1; return a;}//a是函数外的&#xff0c;函数结束不释放 A * f(A & a){return…

QT学习积累——在C++中,for循环中使用``与不使用``的区别和联系

目录 引出使用&与不使用&除法的一个坑 总结自定义信号和槽1.自定义信号2.自定义槽3.建立连接4.进行触发 自定义信号重载带参数的按钮触发信号触发信号拓展 lambda表达式返回值mutable修饰案例 引出 QT学习积累——在C中&#xff0c;for循环中使用&与不使用&的…

即时发布,市场担忧导致比特币和以太坊全线暴跌

来源:币界网 作者:636Marx 币界网新闻 – 2024 年 6 月 25 日– 数字货币市场形势急转直下&#xff0c;两种主力的数字货币比特币和以太坊的价格大幅下跌&#xff0c;给数字货币市场带来冲击。比特币再次触及$60,000美元关口&#xff0c;而以太坊反弹乏力&#xff0c;在 3,300…

PointCloudLib (多线程)快速双边滤波 C++版本

0.实现效果 原始点云 和滤波后的点云对比 1.算法原理 PCL(Point Cloud Library)快速双边滤波是一种高效的点云数据滤波方法,它基于传统双边滤波算法进行了改进,通过引入近似方法加速计算过程。以下是关于PCL快速双边滤波的详细回答: 1. 基本原理 空间滤波:在点云中,相…

详解 ClickHouse 的 MaterializeMySQL 引擎

注意与 ClickHouse 的 MySQL 表引擎区分开 一、概述 ClickHouse 20.8.2.3 版本新增加了 MaterializeMySQL 的 database 引擎&#xff0c;该 database 能映射到 MySQL 中的某个 database &#xff0c; 并自动在 ClickHouse 中创建对应的 ReplacingMergeTree。ClickHouse 服务做…

Verilog的逻辑系统及数据类型(一):四值逻辑系统

目录 1. Verilog采用的四值逻辑系统2.主要数据类型2.1 net&#xff08;线网&#xff09;2.2 寄存器类 &#xff08;register)2.3 Verilog中net和register声明语法2.3.1 net声明2.3.2 寄存器声明 2.4 选择正确的数据类型2.5 选择数据类型时常犯的错误2.5.1 信号类型确定方法总结…

【嵌入式DIY实例】-Nokia 5110显示BME280传感器数据

Nokia 5110显示BME280传感器数据 文章目录 Nokia 5110显示BME280传感器数据1、硬件准备与接线2、代码实现本文将介绍如何使用 ESP8266 NodeMCU 板(ESP12-E 模块)和 BME280 气压、温度和湿度传感器构建一个简单的本地气象站。 NodeMCU 从 BME280 传感器读取温度、湿度和压力值…