我在安装 Ubuntu Server 14.04.3 时花了很长时间才让网络堆栈启动并运行。(这是家里的私人事务,而且我不是 SA,因此我无法在 SF 上提问,因为这违反了网站的政策)。
问题在于网络设备名称以及内核和应用程序之间的不一致。一旦你遇到它并且知道要搜索什么,这显然是一个众所周知的问题。(参见,Linux 中一致的网络设备命名和以太网名称不一致 ubuntu 服务器 14.04)。
该机器在 PCI Express 总线上有一对板载网卡。它们是 Realtek RTL8111/8168/8411 PCI Express 千兆以太网控制器。在dmesg
,我看到 Realtek 驱动程序执行了重命名:
- eth0 → p2p1
- eth1 → p3p1
当驱动程序执行重命名时,它会破坏很多东西,比如/etc/udev/rules.d/70-persistent-net.rules
和/etc/network/interfaces
后者尤其成问题,因为我已经安装了 libvirt 并且一些虚拟机部分配置为桥接模式。
在努力尽量减少麻烦并避免额外的工作,我想允许驱动程序执行重命名,但提供内核和应用程序各部分所期望的别名。
如何创建别名,例如:
- eth0 是 p2p1 的别名
- eth1 是 p3p1 的别名
提前致谢。