有什么方法可以从 FreeBSD 上的 GUID 获取 MAC 地址/接口名称?是否有任何系统调用可以做到这一点?我到处搜索,但找不到任何信息。你能帮忙吗?
提前非常感谢。
最好的问候,马克。
注意:在 Windows 世界之外,GUID 被称为 UUID。
启动脚本/etc/rc.d/hostid
首先尝试从 SMBIOS 获取 UUID。如果失败,它会转向uuidgen
程序生成 UUID。该程序使用uuidgen
系统调用。正如您在手册页中看到的,UUID 的最后 6 字节块是系统物理网络接口之一的硬件地址。
请注意,如果不存在接口,则使用随机组播地址!所以 UUID 不一定包含硬件地址。
SMBIOS 和uuidgen
UUID 通常都使用第一个板载以太网芯片的硬件地址。
获取接口名称和硬件地址的最简单方法可能是使用 SIOCGIFSTATUS ioctl,就像status()
在ifconfig
.