我们在世界各地的多个数据中心拥有数十台虚拟机。将 Ubuntu VM 从 14 升级到 16(作为将其升级到 Ubuntu 18 的一步)时,网络接口名称会发生变化。我知道这一点,我知道为什么它们会改变,所以不是我的问题。我的问题是,这些数字(ens33 中的 33、ens192 中的 192 等)从何而来?我读过许多 StackExchange 问题和答案,关于如何让服务器正常工作:这不是问题所在。我想知道的是如何预测ens### 是什么前服务器升级到 Ubuntu 16。我查看了 lshw 和 lspci,我不明白为什么选择这些数字。
请问:192(或 33,或其他数字)是从哪里来的?
答案1
这是在 Linux 中完成的,以避免 NICS 的名称混淆。所有 NIC 都根据其使用的 PCI 插槽号命名
对于 PCI 来说
- ens33,ens34.....
另一方面,对于使用 PCIe 插槽的 NIC,将具有(请注意,对于 PCIe 插槽,每个 NIC 增加 32 个)
- ens160,ens192,....
答案2
虽然我不知道它们为什么是这种ensXX
格式,但是如果您想禁用它们以便在服务器之间保持一致的命名并获取旧版ethX
,您将需要net.ifnames=0 biosdevname=0
在 GRUB 或引导加载程序中设置内核启动参数。