跳转到内容

黑客/工具/网络/更改 MAC 地址/Linux

来自维基教科书,开放世界中的开放书籍

在 GNU/Linux 下,可以通过以下步骤更改网络接口卡 (NIC) 的 MAC 地址。

注意:本文中使用的 MAC 地址仅供示例使用。请根据您的需求进行替换。
注意:为了使操作正常进行,以下命令必须使用 root 权限执行(例如,在命令前加上“sudo ”)!

/etc/init.d/networking stop
ifconfig eth0 hw ether 02:01:02:03:04:08
/etc/init.d/networking start

执行“ifconfig eth0”以确认。

上述方法应该适用于 **Debian**、**Ubuntu** 和类似的发行版。或者,在 **RHEL**、**Fedora** 和可能的其他 GNU/Linux 发行版(包括 **CentOS** 和 **Scientific Linux**)下,要禁用并重新启动网络,需要停止并启动 /etc/init.d/network,而不是 /etc/init.d/networking

如果您安装了 iproute2 实用程序,您可能更愿意使用“ip”命令,如下所示

/etc/init.d/network stop
ip link set eth0 address 02:01:02:03:04:08
/etc/init.d/network start

要确认您的设置,您可能更愿意执行“ip link ls eth0”或“ip addr ls eth0”,而不是“ifconfig eth0”。

注意:如果您使用的是 DSL 调制解调器,您可能无法执行此操作(取决于调制解调器供应商或 ISP)。

永久更改 - 在重启后保持更改

[编辑 | 编辑源代码]

在 **openSUSE** 和其他基于 SUSE 的系统(**SUSE enterprise desktop\server** 等)中,您可以通过在 /etc/sysconfig/network/ifcfg-ethN 文件中添加适当的条目,使更改在重启后保持“永久性”(ifcfg-eth0 用于第一个以太网接口配置文件,ifcfg-eth1 用于第二个,等等)。

LLADDR=12:34:56:78:90:ab

在 **Red Hat Enterprise Linux**(**RHEL**)和其他类似系统(**Fedora**、**CentOS** 等)中,在 /etc/sysconfig/network-scripts/ifcfg-ethN 文件中添加适当的条目,是使更改在重启后保持“永久性”的一种简单方法(ifcfg-eth0 用于第一个以太网接口配置文件,ifcfg-eth1 用于第二个,等等)。

MACADDR=12:34:56:78:90:ab

注意:在文件中有一个名为 HWADDR 的值 - 这与 MACADDR 不一样。请使用 MACADDR 进行永久更改。

来自 http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-networkscripts-interfaces.html

HWADDR“指令对于具有多个 NIC 的机器很有用,可以确保无论每个 NIC 模块的配置加载顺序如何,接口都被分配了正确的设备名称。此指令不应与 MACADDR 同时使用。”... MACADDR“指令用于将 MAC 地址分配给接口,覆盖分配给物理 NIC 的地址。此指令不应与 HWADDR 同时使用。”

在指定 MAC 地址时,接受大写和小写字母,因为网络功能会将所有字母转换为大写。

您可以执行以下操作来测试更改,而无需重启系统

service network restart

(警告:执行此操作将断开所有现有网络连接!)

在 **Debian**、**Ubuntu** 和类似的系统上,将以下内容放在 /etc/network/interfaces 中的适当部分(在 iface 代码段中,例如,紧接在网关行之后),以便在网络设备启动时设置 MAC 地址

hwaddress ether 02:01:02:03:04:08

在 **Gentoo** 上,您可以通过为每个以太网卡在全局配置文件 /etc/conf.d/net 中添加条目来实现相同的结果。以 eth0 设备为例

mac_eth0="12:34:56:78:90:ab"

您还可以使用工具“GNU MACChanger”在 GNU/Linux 下更改 MAC 地址。

要在启动时使用 MACChanger 更改 MAC 地址,请在您的 /etc/network/interfaces 中添加以下行(以 eth0 接口为例)

pre-up macchanger -m 12:34:56:78:90:AB eth0
华夏公益教科书