c - 如何使用 C 程序获取机器的 MAC 地址?

标签 c linux mac-address

我正在开发 Ubuntu。如何使用 C 程序获取机器的 MAC 地址或接口(interface) eth0。

最佳答案

简单地使用 sysfs 比所有这些套接字或 shell 疯狂要好得多:

文件 /sys/class/net/eth0/address 将您的 mac 地址作为简单字符串,您可以使用 fopen()/fscanf() 读取/fclose()。没有比这更容易的了。

如果您想支持 eth0 以外的其他网络接口(interface)(并且您可能想要),那么只需使用 opendir()/readdir()/closedir ()/sys/class/net/ 上。

关于c - 如何使用 C 程序获取机器的 MAC 地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1779715/

相关文章:

尽管拥有 sudo 权限,PHP exec sudo 脚本仍无法正常工作

php - 使用 PHP 查找客户端的 mac 地址

c++ - 如果有多个以太网适配器,您个人如何通过 MAC 地址识别工作站?

C++ FileIO Copy -VS- System("cp file1.x file2.x)

linux - server.sh : 2: . : properties. conf: 未找到

c# - 从IPv4中的(非本地)IP地址获取MAC地址的最简单方法

c - 在接触大内存区域时执行 fork exec 的程序

c - 从文件 C 中读取数字列表

c - 在C中修改rindex

c - stat64 一个大(~5GB)文件