找出重启后 MAC 地址不断变化的原因

找出重启后 MAC 地址不断变化的原因

前段时间我安装了macchanger一些 wifi 东西。不久之后,我再次卸载了它(并给予“清除” apt),以及我之前安装的所有其他内容。现在我的 wifi 设备 MAC 地址在每次重新启动时仍然不断变化,这是我不希望的。

我已经寻找了一些包含有关 mac 地址的任何配置sudo grep -EHirn "[^a-zA-Z_]mac[^b-zB-Z_]" /etc/*,但到目前为止没有有用的结果。

如何找出哪个程序导致了该更改以及如何阻止该更改?

编辑: NetworkManager 似乎不负责(我只是通过 wifi 连接输入此内容,其连接是由 wicd 设置的):

$ nmcli c  
NAME                UUID                                  TYPE      DEVICE 
Wired connection 1  da9f42c3-c083-38b6-8b1d-b8358e707b7a  ethernet  --     

编辑2:这个机器正在运行 Devuan 4,如果这对任何人都很重要的话。

答案1

现代版本的 NetworkManager 可以随机化 WiFi 连接上的 MAC 地址,无需任何额外的实用程序。

该参数名为802-11-wireless.mac-address-randomization,您可以使用以下命令检查它:

nmcli c show <connection name> | grep 802-11-wireless.mac-address-randomization

您应该将 替换<connection name>为您的 WiFi 连接配置的实际名称。 (如果不确定名称,请键入nmcli c以查看连接定义列表。)

nmcli命令可以(并且应该)与您的常规用户帐户一起使用,不是作为根。

该值可以是“默认”(0),以遵守 NetworkManager 对 WiFi MAC 随机化的全局默认设置,“从不”(1),以使用接口的正常地址,或“始终”(2),以明确要求此 WiFi 的 MAC 地址随机化联系。

您可以使用以下命令禁用特定连接的随机化:

nmcli c mod <connection name> 802-11-wireless.mac-address-randomization never

或者通过更改全局默认值,通过编辑/etc/NetworkManager/NetworkManager.conf(这需要 root 访问权限)来添加:

[connection]
802-11-wireless.mac-address-randomization=never

NetworkManager 的上游“出厂默认设置”是不会随机化 WiFi MAC 地址,除非要求这样做(以避免从没有此功能的旧版本 NetworkManager 升级时出现意外),但某些发行版已经更改了默认设置,以便默认保护用户隐私。

还有一个单独的设置,用于在无线网络扫描期间随机化 MAC 地址。如有必要,可以通过将其添加到以下内容来禁用它/etc/NetworkManager/NetworkManager.conf

[device]
wifi.scan-rand-mac-address=no

macchanger似乎并没有以任何方式自行保留其设置。您确定没有添加任何其他 MAC 随机化脚本或工具吗?检查目录/etc/wicd/scripts/*/etc/network/if-*.d/可能的附加脚本,也许/etc/rc.local它存在。

相关内容