如何获取永久MAC地址

问题描述 投票:0回答:2

我正在 bash 中编写一个脚本来检测所有接口并将其 MAC 随机更改为另一个接口。我需要知道在哪里可以找到接口的永久MAC。

如果我使用 ifconfig $interface,输出不是真正的 MAC...(与 cat /sys/class/net/$interface/address

相同)

我发现的唯一方法是使用 cat /etc/udev/rules.d/70-persistent-net.rules,它显示原始的 mac,但是,如果我有一个处于监视模式的无线卡(例如 mon0 ),这个方法不行...:(

存在某种方法(如macchanger -s $interface),我可以在其中使用虚拟接口查看我的永久MAC??

注意:抱歉我的英语不好:S

linux macos shell
2个回答
1
投票

要获取 smbios mac 地址,您可以使用 dmidecode。 dmidecode 转储 DMI 表内容,以便所有系统硬件组件、序列号和 BIOS 版本。

 [root@server ~]# dmidecode | grep -i mac
                MCE (Machine check exception)
                MCA (Machine check architecture)
HP BIOS NIC PCI and MAC Information
        NIC 1: PCI device 03:00.0, MAC address 1C:69:F5:4B:24:Y8
        NIC 2: PCI device 03:00.1, MAC address 1C:69:F5:4B:24:Y8
HP BIOS iSCSI NIC PCI and MAC Information

0
投票

对于最新版本的 MacOS,以下命令给出永久 mac 地址:

networksetup -listallhardwareports

对于特定接口运行:

networksetup -getmacaddress en0

在 MacOS Sonoma 14.6.1 上测试。

© www.soinside.com 2019 - 2024. All rights reserved.