FreeBSD の GUID から MAC アドレス/インターフェイス名を取得する方法はありますか? それを行うためのシステムコールはありますか?あちこち探しましたが、情報が見つかりませんでした。助けていただけますか?
よろしくお願いします。
よろしく、マーク。
注意: Windows 以外では、GUID は UUID として知られています。
起動スクリプト/etc/rc.d/hostid
は、最初に SMBIOS から UUID を取得しようとします。それが失敗した場合uuidgen
、UUID を生成するプログラムに変わります。このプログラムはuuidgen
システムコールを使用しています。マニュアル ページを読むとわかるように、UUID の最後の 6 バイト ブロックは、システムの物理ネットワーク インターフェイスの 1 つのハードウェア アドレスです。
インターフェイスが存在しない場合は、代わりにランダムなマルチキャスト アドレスが使用されることに注意してください。したがって、UUID には必ずしもハードウェア アドレスが含まれているとは限りません。
SMBIOS とuuidgen
UUID はどちらも、通常、最初のオンボード イーサネット チップのハードウェア アドレスを使用します。
status()
インターフェイス名とハードウェア アドレスを取得する最も簡単な方法は、 の関数で行われるように SIOCGIFSTATUS ioctl を使用することですifconfig
。