正确禁用 Xenial 上的可预测接口命名

正确禁用 Xenial 上的可预测接口命名

我在 Openstack 私有云上运行了几个 Ubuntu Xenial 实例,遇到了可预测的网络接口命名问题。我尝试通过在GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"中设置来禁用它/etc/default/grub。重新启动后,第一个网络接口仍具有其旧的“可预测”名称 ( ens3),但第二个接口具有其旧名称 ( eth1)。

dmesg[ 1.403328] virtio_net virtio0 ens3: renamed from eth0

如何配置 Ubuntu 以便我的第一个网络接口被命名eth0

答案1

我认为更清洁的解决方案是:

sudo ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules

然后重新启动。这将恢复旧的接口命名。

如果你想分配特定的网络接口名称,并且你拥有持久的 mac 地址,那么你可以遵循 heynnema 的解决方案或使用systemd.link

答案2

编辑 /etc/udev/rules.d/70-persistent-net.rules。格式非常简单。每个接口只有一行,只需复制/粘贴现有​​行,然后更改 mac 地址和设备名称。

条目如下所示:

# PCI device 0x10ec:0x8168 (r8169)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="20:1a:06:d8:65:ae", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

相关内容