Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
2.7.3. 新的网络命名规范
Red Hat Enterprise Linux 7 提供可以实现网络接口的一致性和可预测的网络设备命名方法。这些功能更改了系统中网络接口名称,以便更轻松地查找和区分接口。
通常,Linux 中的网络接口枚举为 eth[0123…]
,但这些名称不一定与机箱上的实际标签对应。具有多个网络适配器的现代服务器平台,可能会遇到这些接口的命名不明确的情况。这会影响在主板上嵌入的网络适配器(Lan-on-Motherboard 或 LOM)和附加(单一和多端口)适配器。
在 Red Hat Enterprise Linux 7 中,systemd 和 udevd 支持很多不同的命名方案。默认行为是根据固件、拓扑和位置信息分配固定名称。它具有完全自动且完全可预测的名称的优点。即使添加或删除硬件(不会重新定义),并且有问题的硬件可以被无缝地替换,仍然可以保持固定的名称。这个行为的缺点是,名称有时比之前使用的名称更难于读,例如,enp5s0
代替 eth0
。
udevd 现在原生支持以下网络接口命名方案。
- 方案 1
-
使用固件或 BIOS 为板上设备提供的索引号,例如
eno1
。如果来自固件的信息可用,则默认情况下systemd 会使用这个方案命名接口,方案 2 作为一个备用方案。
- 方案 2
-
使用固件或 BIOS 提供的 PCI Express 热插槽索引号命名,例如
ens1
。如果来自固件的信息可用,则默认情况下systemd 会使用这个方案命名接口,方案 3 作为一个备用方案。
- 方案 3
-
使用硬件连接器的物理位置命名,例如
enp2s0
。如果来自固件的信息可用,则默认情况下systemd 会使用这个方案命名接口,方案 5 作为一个备用方案。
- 方案 4
-
使用 MAC 地址进行命名,例如
enx78e7d1ea46da
。默认情况下,systemd 不会根据这个方案命名接口,但在需要时可以启用它。
- 方案 5
-
传统的无法预计的内核原生 ethX 命名,如
eth0
。如果所有其他方法都失败,则systemd 根据这个方案进行接口命名。
如果系统启用了 BIOSDEVNAME
,或者用户添加了更改内核设备名称的 udevd 规则,则这些规则优先于默认的 systemd 策略。
有关此新命名系统的详情,请查看 网络指南。