我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Linux系统如何获取默认MAC地址

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Linux系统如何获取默认MAC地址

这篇文章跟大家分析一下“Linux系统如何获取默认MAC地址”。内容详细易懂,对“Linux系统如何获取默认MAC地址”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编一起深入学习“Linux系统如何获取默认MAC地址”的知识吧。

Linux系统中如何获取默认的MAC地址?在嵌入式学习中避免不了接触MAC地址。

MAC地址简介:

  • MAC(Media Access Control或者Medium Access Control)地址是固化在网卡上串行EEPROM中的物理地址,通常有48位长,用来定义网络设备的位置,用来表示互联网上每一个站点的标识符,采用十六进制数表示。

  • 在OSI模型中,第三层网络层负责 IP地址,第二层数据链路层则负责 MAC地址。

  • 因此一个主机会有一个MAC地址,而每个网络位置会有一个专属于它的IP地址。任何一个网络设备(例如网卡、路由器)一旦生产出来以后,其MAC地址永远唯一且不能由用户改变。

  • 形象来说,MAC地址就好像我们的身份证号码,具有全球唯一性。

Linux系统获取默认MAC地址方法:

一、适用范围

这里主要介绍读取网卡MAC地址的方法,适用于EasyARM-i.MX287A开发套件,其应用原理及配套示例也适用于下表1.1所列出的产品型号。

  Linux系统如何获取默认MAC地址

二、原理介绍

MAC(Media Access Control,介质访问控制)是用来定义网络设备的位置。用来表示互联网上每一个站点的标识符,采用十六进制数表示,共六个字节(48位)。其中,前三个字节是由IEEE的注册管理机构RA负责给不同厂家分配的代码(高位24位),也称为“编制上唯一的标识符”(Organizationally Unique Identifier),后三个字节(低位24位)由各厂家自行指派给生产的适配器接口,称为扩展标识符(唯一性)。一个地址块可以生成2^24个不同的地址。MAC地址实际上就是适配器地址或适配器标识符。MAC具有全球唯一性。

“网卡的默认MAC”是广州致远电子股份有限公司针对Awork开发套件和M283、M287工控核心板开发的一项功能,通过芯片的OTP来存储网卡MAC地址,我公司出厂的核心板和开发套件的MAC地址的前两个字节固定为“0x00”,“0x04”,后四个字节保存在OTP中,本文档主要描述了如何通过操作OTP来读取网卡MAC地址。

在内核配置OTP选项,编译出的内核启动后,在文件系统中会导出OTP设备文件,通过操作这些设备文件来读取信息。可以将已经注册的网卡MAC信息首先固化到OTP中,在应用层就可以读取。MAC0地址的低4位可以通过设备文件“/sys/fsl_otg/SBK0”读取,MAC1地址的低4位可以通过设备文件“/sys/fsl_otg/SBK1”读取。

注意:如果使用的是M287、M283工控板,不需要配置内核。

三、技术实现

内核编译

1.配置内核

进入linux-2.6.35.3目录。执行make menuconfig配置内核。配置步骤如下:

 sok@zlgmcu:~$ cd linux-2.6.35.3/ sok@zlgmcu:~/linux-2.6.35.3$ make menuconfig

按回车键,进入Device Drivers选项,如下图1所示。 Linux系统如何获取默认MAC地址

  图1内核配置

  按回车键,进入Chracter devices选项。如下图2所示。 Linux系统如何获取默认MAC地址

  图2内核配置

  按空格键,选择 Freescale On-Chip OTP Memory Support选项,如图3 内核配置图3所示。

Linux系统如何获取默认MAC地址

  图3内核配置

  按回车键,保存退出。

2.编译内核

在当前目录下执行如下命令编译内核,参考命令如下:

 vmuser@Linux-host:~/ linux-2.6.35.3$ make clean vmuser@Linux-host:~/ linux-2.6.35.3$ make uImage

内核固件位于“arch/arm/boot/uImage”,将生成的内核固件通过TF卡烧写到NANDFlash。

四、读取MAC实操

下面介绍读取网卡MAC操作过程,其实质是操作OTP设备文件。

执行MAC脚本文件

将本文档目录下MAC.sh文件通过U盘或TF卡拷贝到EasyARM-i.MX287A开发套件,修改文件权限为可执行权限,参考命令如下:

 root@EasyARM-iMX28x ~# chmod 777 MAC.sh root@EasyARM-iMX28x ~# ./MAC.sh

执行后,查看网络设备,MAC如图5所示。

  Linux系统如何获取默认MAC地址

 图5网络设备图

查看“/sys/fsl_otp/HW_OCOTP_SRK1”和“/sys/fsl_otp/HW_OCOTP_SRK0”设备。可以发现,网卡MAC低4位其实就是保存在OTP中的值,如图6所示。

Linux系统如何获取默认MAC地址

 图6 OTP读取图

关于Linux系统如何获取默认MAC地址就分享到这里啦,希望上述内容能够让大家有所提升。如果想要学习更多知识,请大家多多留意小编的更新。谢谢大家关注一下编程网网站!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Linux系统如何获取默认MAC地址

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Linux系统如何获取默认MAC地址

这篇文章跟大家分析一下“Linux系统如何获取默认MAC地址”。内容详细易懂,对“Linux系统如何获取默认MAC地址”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编一起深入学习“Linux系统
2023-06-28

Linux下如何读取默认MAC地址

Linux下如何读取默认MAC地址,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。计算机可以通过MAC来定义并识别网络设备的位置。大家在学习嵌入式Linux时肯定页会遇到MA
2023-06-28

Linux中怎么读取默认MAC地址

本篇文章为大家展示了Linux中怎么读取默认MAC地址,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 一、适用范围这里主要介绍读取网卡MAC地址的方法,适用于EasyARM-i.MX287A开发套件
2023-06-12

Linux下读取默认MAC地址步骤是什么

这篇文章主要介绍了Linux下读取默认MAC地址步骤是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。MAC地址也叫物理地址、硬件地址,由网络设备制造商生产时烧录在网卡的E
2023-06-28

java中如何获取MAC地址

这篇文章主要介绍了java中如何获取MAC地址,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。什么是Mac地址?Mac地址就是在媒体接入层上使用的地址,通俗点说就是网卡的物理地
2023-06-17

Linux系统如何修改mac地址

今天就跟大家聊聊有关Linux系统如何修改mac地址,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。MAC(Media Access Control, 介质访问控制),或称为 MAC位
2023-06-28

Linux系统如何查看mac地址

本文将为大家详细介绍“Linux系统如何查看mac地址”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“Linux系统如何查看mac地址”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容如下,一起去
2023-06-28

Linux系统中如何查看mac地址

这篇文章主要为大家展示了Linux系统中如何查看mac地址,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带大家一起来研究并学习一下“Linux系统中如何查看mac地址”这篇文章吧。mac简介:MAC(Mediun acces
2023-06-28

Linux系统中如何修改MAC地址

小编给大家分享一下Linux系统中如何修改MAC地址,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!环境Centos7.7 MinimalGNU MAC chang
2023-06-27

利用java如何根据IP获取mac地址

利用java如何根据IP获取mac地址?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。具体内容如下import java.net.InetAddress;import jav
2023-05-31

Win10系统如何查看Mac地址以便进行Mac地址过滤

如果你的无线网络突然变得很卡,有可能是被人蹭网。你可以设置MAC地址过滤,只添加自己的Mac地址,让其他人的电脑无法连接到你设编程客栈置的无线网络上。那Win10系统如何查看Mac地址呢?  方法一:网卡属性查看方法第一步、右键单击任务栏网
2023-06-10

Win8系统如何查看mac地址?Win8系统查看mac地址的两种方法

Win8系统查看mac地址的两种方法:方法一:本地物理方法查看1、进入“网络与共享中心”点击“更改适配器设置”进入“网络连接”界面;2、进入“网络连接&rd
2022-06-04

mac无法自动获取ip地址如何解决

如果您的Mac无法自动获取IP地址,您可以尝试以下解决方法:1. 检查网络连接:确保您的Mac已正确连接到网络,并且网络设备(如路由器或调制解调器)已正确设置。2. 重启网络设备:尝试重启网络设备,即路由器或调制解调器。有时候,设备可能出现
2023-10-10

用户的MAC地址如何利用java实现获取

用户的MAC地址如何利用java实现获取?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。java实现获取用户的MAC地址方法:方法一:将本机地址与局域网内其他机器区分开来/*
2023-05-31

linux中如何使用python3获取ip地址

前言 这篇文章主要介绍了linux中如何使用python3获取ip地址,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下。 一、不带参数#!/usr/bin/python# -*- codin
2022-06-04

Linux上如何获取你的公网IP地址

这篇文章将为大家详细讲解有关Linux上如何获取你的公网IP地址,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Linux上获取你的公网IP地址在办公或家庭环境,我们的虚拟机或服务器上配置的通常是内网 IP
2023-06-27

Linux系统如何修改默认shell类型

这篇文章给大家分享的是有关Linux系统如何修改默认shell类型的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。查看每个账户登录后所启动的默认shell是保存在/etc/passwd 中的可以使用cat来查看:
2023-06-28

编程热搜

目录