两种修改Linux系统中MAC地址的方法
我们先查找MAC地址和网络接口,我们来了解一下Linux中网卡的一些细节。用这个命令来获取网络接口的详细信息:
ip link show
在输出中,您将看到一些详细信息以及MAC地址:
1: lo:
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno1:
link/ether 94:c6:f8:a7:d7:30 brd ff:ff:ff:ff:ff:ff
3: enp0s31f6:
link/ether 38:42:f8:8b:a7:68 brd ff:ff:ff:ff:ff:ff
4: docker0:
link/ether 42:02:07:8f:a7:38 brd ff:ff:ff:ff:ff:ff
你可以看到,我的网络接口叫enp0s31f6,它的MAC地址是38:42:f8:8b:a7:68。
你可以把它记在安全的地方,以便以后恢复到这个原始的MAC地址。
现在你可以继续修改MAC地址了。
注意;如果你在目前正在使用的网络接口上做这个操作,很可能你的网络连接将断开。因此,要么在另外的网卡上尝试这个方法,要么准备好重新启动你的网络。
方法1:使用Macchanger更改MAC地址
Macchanger是查看,修改和操作网络接口卡的MAC地址的简单实用程序。它几乎在所有GNU / Linux操作系统中都可用,您可以使用发行版的软件包安装程序进行安装。
在Arch Linux或Manjaro上:
sudo pacman -S macchanger
在Fedora,CentOS和RHEL上:
sudo dnf install macchanger
在Debian,Ubuntu,Linux Mint,Kali Linux上:
sudo apt install macchanger
重要!系统将要求您指定是否应将macchanger设置为在每次启动或关闭网络设备时自动运行。每当您连接网络时或重新启用WiFi时,都会提供一个新的MAC地址。
我建议不要自动运行它,除非您确实确实需要每次更改MAC地址。因此,选择否(按Tab键),然后按Enter键继续。
如何使用Macchanger更改MAC地址
您还记得您的网络接口名称吗?您在前面的步骤中获得了它。
现在,要将任何随机MAC地址分配给该网卡,请使用:
sudo macchanger -r enp0s31f6
更改MAC ID后,请使用以下命令进行验证:
ip addr
要将MAC地址更改为特定值,请使用以下命令指定任何自定义MAC地址:
macchanger --mac=XX:XX:XX:XX:XX:XX
其中XX:XX:XX:XX:XX:XX是您要更改的新MAC ID。
最后,要将MAC地址恢复为其原始硬件值,请运行以下命令:
macchanger -p enp0s31f6
但是,您不必这样做。重新引导系统后,更改将自动丢失,并且实际的MAC地址将再次恢复。
您可以随时查看手册页以获取更多详细信息。
方法2:使用iproute2更改Mac地址
我建议您使用Macchanger,但是如果您不想使用它,则可以使用另一种方法在Linux中更改MAC地址。
首先,使用以下命令关闭网卡:
sudo ip link set dev enp0s31f6 down
接下来,使用命令设置新的MAC:
sudo ip link set dev enp0s31f6 address XX:XX:XX:XX:XX:XX
最后,使用以下命令重新打开网络:
sudo ip link set dev enp0s31f6 up
现在,验证新的MAC地址:
ip link show enp0s31f6
至此,您已成功以真正的Linux样式更改了MAC地址。