使用 macchanger Linux 命令更改 mac 地址
媒体访问控制 (MAC) 地址是分配给每个网络接口(包括以太网和无线)的唯一编号。许多系统程序和协议都使用它来识别网络接口。最常见的示例之一是 DHCP,其中路由器自动为网络接口分配 IP 地址。路由器通过MAC地址就可以知道它给哪台设备分配了IP地址。
与临时且可以轻松更改的 IP 地址不同,MAC 地址被硬编码到制造商的网络接口中。但是,仍然可以暂时更改或“欺骗”MAC 地址。在 Linux 系统上,最简单的方法之一是使用 macchanger 命令行程序。 Linux 用户可能会发现需要更改 MAC 地址,这既有合法的原因,也有不正当的原因。
在本指南中,我们将展示如何在主要 Linux 发行版上安装 macchanger 程序,然后使用 macchanger 命令将网络接口的 MAC 地址更改为随机值或某个特定数字。请按照以下示例了解操作方法。
在本教程中您将学习:
如何在主要 Linux 发行版上安装 macchanger
如何识别当前MAC地址和网络接口
如何更改接口的 MAC 地址
如何将接口更改为特定 MAC 地址
在 Linux 上使用 macchanger 命令更改 MAC 地址
在主要 Linux 发行版上安装 macchanger
在深入了解 macchanger 的使用说明之前,您需要将其安装在您的系统上。最有可能的是,它不会默认安装,因为它是一个相当小众的应用程序。您可以使用 Linux 发行版的内置包管理器来安装 macchanger。使用下面适当的命令来安装它。
要在 Ubuntu、Debian 和 Linux Mint 上安装 macchanger:
$ sudo apt install macchanger
要在 CentOS、Fedora、AlmaLinux 和 Red Hat 上安装 macchanger:
$ sudo dnf install macchanger
要在 Arch Linux 和 Manjaro 上安装 macchanger:
$ sudo pacman -S macchanger
在某些系统上,您可能会在安装过程中收到以下提示。
提示询问是否要自动更改MAC地址
在大多数情况下,您可能需要选择否
。否则,您的网络接口每次上线或重新启动系统时都会获得一个新的 MAC 地址。在特定情况下,这可能是一件好事,但在大多数情况下,可能不是。我们仍然可以随时分配新的 MAC 地址。
安装后,macchanger 命令将可用,您可以按照下面的示例进行操作。
使用 macchanger 更改接口的 MAC 地址
在开始使用 macchanger 命令之前,您需要知道要使用的网络接口的名称。您可以执行 ip a 命令来查看系统上所有可用网络接口的列表。在大多数情况下,这将包括有线、无线和环回接口。
$ ip a
确定要更改的网络接口的名称
正如您在上面的屏幕截图中看到的,我们的网络接口的名称是enp0s3
。
输出的第二行显示了我们当前的 MAC 地址,我们在下面的屏幕截图中突出显示了该地址。在我们的例子中,MAC 地址是 08:00:27:ea:82:f9
。
ip a命令显示当前MAC地址
现在我们可以开始更改MAC地址了。请按照下面的分步说明进行操作,了解具体操作方法。请注意,您需要 root 权限才能执行 macchanger
命令。
使用
-r
选项获取随机 MAC 地址。此外,只需指定网络接口的名称即可。$ sudo macchanger -r enp0s3
输出应显示您当前的 MAC 地址以及从
macchanger
分配的新地址。要验证更改,请尝试再次运行 ip a 命令,您应该会看到列出的新 MAC 地址。
$ ip a
如果您需要使用特定的 MAC 地址,可以使用
-m
选项和以下命令语法来实现。$ sudo macchanger -m b2:aa:0e:56:ed:f7 enp0s3
不同的供应商有不同的 MAC 地址前缀。因此,通常可以通过查看 MAC 地址的前几位来识别网络设备的制造商。这意味着我们可以使用 macchanger 使我们的设备看起来像是属于某个制造商的。要查看已知 MAC 地址及其相应供应商的列表,请使用
-l
选项。$ macchanger -l
为网络接口配置的新 MAC 地址
将 MAC 地址更改为特定值
结束语
在本指南中,我们了解了如何更改 Linux 上网络接口的 MAC 地址。这是通过 macchanger 实用程序完成的,可以从大多数主要 Linux 发行版的默认存储库轻松安装该实用程序。我们还了解了与该命令一起使用的一些不同选项,以防您想要一个随机 MAC 地址、特定 MAC 地址或来自特定供应商的 MAC 地址。