我更换了一张品牌和型号完全相同的 NIC 卡。 Ubuntu 11.04 的设置过程非常顺利且简单,因此我认为设置替换卡会足够智能。然而,它给了替换卡一个新名称,eth1
我的所有脚本都引用了eth0
,更不用说操作系统中eth0
可能存在的其他地方了。我是否被迫追踪每个eth0
参考并将其更改为eth1
或者是否有办法将替换卡重命名回eth0
?
答案1
检查 udev 配置文件。
像这样的文件:/etc/udev/rules.d/70-persistent-net.rules
将 NAME (ethX) 与 Mac 地址联系起来。
您可能将旧卡 MAC 绑定到 eth0。删除其行并将新卡更改为 eth0。
答案2
您可以通过 udev(在任何现代 Linux 系统上)或通过/etc/network/interfaces
在 Debian、Ubuntu 和其他发行版上使用如果向上向下。不是现在的答案涵盖了 udev;我将讨论 ifupdown。
在 中/etc/network/interfaces
,您可以使用该mapping
指令根据 shell 脚本的运行结果为接口指定昵称。此功能的典型用途是根据网络环境为接口指定不同的名称(例如eth0-home
和eth0-work
),或根据接口的特性(例如 MAC 地址)设置接口的名称。有一个名为 的示例脚本get-mac-address.sh
,您可以使用它根据 MAC 设置接口的名称。
auto eth0 eth1
mapping eth0 eth1
script /usr/share/doc/ifupdown/examples/get-mac-address.sh
map 11:22:33:44:55:66 lan
map AA:BB:CC:DD:EE:FF internet
iface lan inet static
address 192.168.42.1
netmask 255.255.255.0
iface internet inet dhcp
现在您的两个网络接口称为lan
和internet
。如果您更换其中之一,则只需更新 .NET 中该位置的 MAC 地址即可/etc/network/interfaces
。