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