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

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

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

北京

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

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

看不清楚,换张图片

免费获取短信验证码

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

这篇文章主要介绍了Linux下读取默认MAC地址步骤是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

MAC地址也叫物理地址、硬件地址,由网络设备制造商生产时烧录在网卡的EPROM。

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

MAC简介:

  • MAC Address,Media Access Control Address,亦称为EHA(Ethernet Hardware Address)、硬件地址、物理地址(Physical Address)。

  • 在OSI节层模型中,属于第二层链路层概念。一个MAC地址唯一指定一台设备,全球唯一,并且通常烧写在固件中。

  • MAC地址由IEEE(Institute of Electrical and Electronics Engineers)定义,有三种:MAC-48、EUI-48、EUI-64。EUI, Extended Unique Identifier。

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地址步骤是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。MAC地址也叫物理地址、硬件地址,由网络设备制造商生产时烧录在网卡的E
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(Medium Access Control)是网络中用来标识
2023-06-28

linux修改静态ip地址的步骤是什么

修改Linux静态IP地址的步骤如下:1. 打开终端或控制台,使用root权限登录。2. 编辑网络配置文件。使用文本编辑器(如vi或nano)打开网络配置文件。文件的路径通常是`/etc/network/interfaces`或`/etc/
2023-09-15

编程热搜

目录