云网牛站
所在位置:首页 > Linux教程 > 使用NetworkManager随机化MAC地址的方法

使用NetworkManager随机化MAC地址的方法

2019-03-17 11:12:42作者:夏一欣稿源:云网牛站

本文介绍使用NetworkManager随机化MAC地址的方法,在Fedora系统中测试有效。由于笔记本电脑的固定MAC地址清晰易读(易于跟踪),因此应经常更改(参考:安装及使用macchanger在Linux系统中更改MAC地址),随机地址是一个不错的选择,由于MAC地址仅在本地网络中使用,因此随机MAC地址不太可能导致冲突。

使用NetworkManager随机化MAC地址的方法

 

配置NetworkManager

要将随机MAC地址默认应用于所有WiFi连接,请创建以下文件/etc/NetworkManager/conf.d/00-macrandomize.conf:

[device]

wifi.scan-rand-mac-address=yes

[connection]

wifi.cloned-mac-address=stable

ethernet.cloned-mac-address=stable

connection.stable-id=${CONNECTION}/${BOOT}

然后,重启NetworkManager:

systemctl restart NetworkManager

每次NetworkManager连接激活时,将cloned-mac-address设置为stable以生成相同的散列MAC,但每次连接使用不同的MAC,要在每次激活时获得真正的随机MAC,请使用随机。

稳定设置对于从DHCP获取相同的IP地址非常有用,或者强制可能会记住你基于MAC地址的登录状态,随机地,可能需要在每次连接时重新进行身份验证(或单击“我同意”)。

要查看当前的MAC地址,请使用ip link:

$ ip link

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: enp2s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000

link/ether 52:54:00:5f:d5:4e brd ff:ff:ff:ff:ff:ff

3: wlp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000

link/ether 52:54:00:03:23:59 brd ff:ff:ff:ff:ff:ff

 

何时不随机化你的MAC地址

当然,有时你需要清晰易读,例如,在你的家庭网络上,你可能已将路由器配置为笔记本分配一致的专用IP以进行端口转发,或者你可能只允许某些MAC地址使用WiFi,你的雇主也可能需要易读性。

要更改特定的WiFi连接,请使用nmcli查看NetworkManager连接并显示当前设置:

$ nmcli c | grep wifi

Amtrak_WiFi    5f4b9f75-9e41-47f8-8bac-25dae779cd87 wifi -- 

StaplesHotspot de57940c-32c2-468b-8f96-0a3b9a9b0a5e wifi -- 

MyHome         e8c79829-1848-4563-8e44-466e14a3223d wifi wlp1s0 

...

$ nmcli c show 5f4b9f75-9e41-47f8-8bac-25dae779cd87 | grep cloned

802-11-wireless.cloned-mac-address:     --

$ nmcli c show e8c79829-1848-4563-8e44-466e14a3223d | grep cloned

802-11-wireless.cloned-mac-address:     stable

此示例使用Amtrak的完全随机MAC(当前使用默认值)和MyHome的永久MAC(当前设置为稳定),永久MAC在制造时分配给你的网络接口,网络管理员喜欢使用永久MAC来查看线路上的制造商ID。

现在,进行更改并重新连接活动接口:

$ nmcli c modify 5f4b9f75-9e41-47f8-8bac-25dae779cd87 802-11-wireless.cloned-mac-address random

$ nmcli c modify e8c79829-1848-4563-8e44-466e14a3223d 802-11-wireless.cloned-mac-address permanent

$ nmcli c down e8c79829-1848-4563-8e44-466e14a3223d

$ nmcli c up e8c79829-1848-4563-8e44-466e14a3223d

$ ip link

...

还可以安装NetworkManager-tui以在编辑连接时获取用于精美菜单的nmtui命令。

 

相关主题

在Fedora 29中使用NetworkManager的DNSMasq插件

精选文章
热门文章