searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

网络端口命名规则

2023-06-15 08:01:10
77
0

网络接口重命名的步骤(for centos7):

1、在/usr/lib/udev/rules.d/60-net.rules中的rule会指示 /lib/udev/rename_device去调查/etc/sysconfig/network-scripts/ifcfg-suffix 文件。如果发现一个ifcfg-suffix文件带有和一个接口的MAC地址相匹配的HWADDR选项,就会将该端口直接重命名为ifcfg-suffix文件中的DEVICE选项的值。

2、在/usr/lib/udev/rules.d/71-biosdevname.rules文件中的rule会指示biosdevname 按照biosdevname的命名策略去对网络接口进行重命名。使用biosdevname进行重命名的前提是biodevname被安装,同时内核启动参数中不包含 biosdevname=0 启动参数。

3、在/lib/udev/rules.d/75-net-description.rules文件中的rule指示udev通过检查完了过接口填充内部udev设备属性值ID_NET_NAME_ONBOARD, ID_NET_NAME_SLOT, ID_NET_NAME_PATH, ID_NET_NAME_MAC 。

4、在/usr/lib/udev/rules.d/80-net-name-slot.rules文件中的rule会指示udev给端口重命名, 仅限于第一步和第二步未被重命名的端口且不存在net.ifnames=0内核启动参数, 按照下面的优先级顺序进行重命名: ID_NET_NAME_ONBOARD, ID_NET_NAME_SLOT, ID_NET_NAME_PATH. 如果优先级高的未命名就转向优先级list中的下一个,如果上面没有一个被重命名,则保持原来的名字不变。

网络端口重命名流程

网络接口重命名的步骤(for centos8) :

1、在/usr/lib/udev/rules.d/60-net.rules中的rule会指示 /lib/udev/rename_device去调查/etc/sysconfig/network-scripts/ifcfg-suffix 文件。如果发现一个ifcfg-suffix文件带有和一个接口的MAC地址相匹配的HWADDR选项,就会将该端口直接重命名为ifcfg-suffix文件中的DEVICE选项的值。

2、在/usr/lib/udev/rules.d/71-biosdevname.rules文件中的rule会指示biosdevname 按照biosdevname的命名策略去对网络接口进行重命名。使用biosdevname进行重命名的前提是biodevname被安装,同时内核启动参数中不包含 biosdevname=0 启动参数。

3、在/lib/udev/rules.d/75-net-description.rules文件中的rule指示udev通过检查完了过接口填充内部udev设备属性值ID_NET_NAME_ONBOARD, ID_NET_NAME_SLOT, ID_NET_NAME_PATH, ID_NET_NAME_MAC 。

4、/usr/lib/udev/rules.d/80-net-setup-link.rules文件中的udev 会应用存储在/usr/lib/systemd/network/99-default.link文件中的policy:

policy

如果内核使用一致端口命名方式,udev不可以重命名网络端口。如果内核不使用一致端口命名方式,udev 重命名为udev硬件数据库里提供的名字。如果数据库不可用,返回上面描述的方式命名。 可选的,可以将mac参数添加到NamePolicy用于基于网卡的MAC地址对网路端口进行重命名。

5、/usr/lib/udev/rules.d/80-net-setup-link.rules文件定义了基于下面的命名顺序给网络端口重命名: 

ID_NET_NAME_ONBOARD

ID_NET_NAME_SLOT

ID_NET_NAME_PATH

 

注意: 网络端口一致性命名还受到systemd版本的细微影响,我们可以通过net.naming-scheme=[v238/v239/.../v251] 内核启动参数选择对应systemd版本的命名方法。

 

一致性网络端口命名规则默认层级介绍即默认biosdevname=0, net.ifnames=1时如何给网卡命名:

Scheme 1: 根据Firmware或者 BIOS提供的板载设备的 index numbers命名(如: eno1),否则转向scheme 2.

Scheme 2: 根据Firmware或者BIOS提供的PCIe热插拔槽位的index numbers命名 (如: ens1),否则转向scheme 3.

Scheme 3: 根据硬件连接器(如:riser卡)的物理位置命名(如: enp2s0),,否则转向scheme 5.

Scheme 4: 根据网络端口的MAC地址命名(如: enx78e7d1ea46da),默认不可用,如果用户选择这种方式也是可以用的。 

Scheme 5: 传统不可预测内核命名机制被使用,当所有其他命名方式失败的时候 (如: eth0).

 

0条评论
0 / 1000
s****n
3文章数
0粉丝数
s****n
3 文章 | 0 粉丝