以后版本网卡命名规则
一、设备命名标准
参考:
官方文档第8章:ch-consistent_network_device_naming NETWORK DEVICE NAMING),Centos7以后支持biosdevname和net.ifnames两种命名规范。
1.net.ifnames命名规范为:设备类型+设备位置+端口号
设备类型:en 代表以太网,wl 代表无线局域网(WLAN),ww 代表无线广域网(WWAN)。
设备位置:集成设备的设备索引编号 ,或扩展卡所在总线槽位编号
端口号:板载集成设备索引编号或扩展卡上的物理端口编号
设备名称类型
格式说明eno1板载设备索引号ens33热插拔插槽索引号举例:
名称设备类型说明eno1板载网卡板载1号网卡enp0s2pci网卡PCI扩展卡的2号端口ens33pci网卡热插拔插槽3号PCI-E插槽的3号端口wlp3s0PCI无线网卡第3号PCI扩展卡的0号端口2.biosdevname命名规范
Centos系统需要安装biosdevname程序包才可以使用biosdevname命名规范,biosdevname程序读取BIOS信息中的type 9(系统插槽)和 type 41(板载设备扩展信息)两个字段信息来命名网卡。(要求SMBIOS的版本要高于2.6)
设备旧名称新名称例板载内置网卡eth[0123…]em[1234…]em1PCI扩展卡网络接口eth[0123…]p【槽位号】p【端口号】p3p4子接口虚拟功能eth[0123…]p【槽位号】p【端口号】_【子接口号】p3p4_1二、系统默认的网卡命名规则
官方文档命名规则描如下:
默认情况下,systemd 会使用以下策略,采用支持的命名方案为接口命名:
方案 1:如果固件或 BIOS 信息适用且可用,则使用整合了为板载设备提供索引号的固件或 BIOS 的名称(例如:eno1),否则请使用方案 2。(针对的是板载集成网卡命名)
方案 2:如果固件或 BIOS 信息适用且可用,则使用整合了为 PCI 快速热插拔插槽提供索引号的固件或 BIOS 名称(例如 ens1),否则请使用方案 3。(针对的是PCI-E扩展网卡针命名标准)
方案 3:如果硬件连接器物理位置信息可用,则使用整合了该信息的名称(例如:enp2s0),否则请使用方案 5。
方案 4:默认不使用整合接口 MAC 地址的名称(例如:enx78e7d1ea46da),但用户可选择使用此方案。(根据MAC地址命名网卡)
方案 5:传统的不可预测的内核命名方案,在其他方法均失败后使用(例如: eth0)(以上命令信息都无法获取时则采用传统的命令规则)
这个策略(如上所述)是默认策略。如果该系统已启用 biosdevname,则会使用该方案。注:启用 biosdevname 需要添加 biosdevname=1 作为命令行参数(Dell 系统除外),此时只要安装 biosdevname,就会默认使用该方案。如果用户已添加 udev 规则,该规则会更高内核设备名称,则会优先使用这些规则
三、设备重命名策略
关于设备重命名官方的文档做了如下阐述:
1./usr/lib/udev/rules.d/60-net.rules 文件中的规则会让 udev 帮助工具 /lib/udev/rename_device 查看所有 /etc/sysconfig/network-scripts/ifcfg-suffix 文件。如果发现包含 HWADDR 条目的 ifcfg 文件与某个接口的 MAC 地址匹配,它会将该接口重命名为 ifcfg 文件中由 DEVICE 指令给出的名称。
2./usr/lib/udev/rules.d/71-biosdevname.rules 中的规则让 biosdevname 根据其命名策略重命名该接口,即在上一步中没有重命名该接口、已安装 biosdevname、且在 boot 命令行中将 biosdevname=0 作为内核命令给出。
3./lib/udev/rules.d/75-net-description.rules 中的规则让 udev 通过检查网络接口设备,填写内部 udev 设备属性值 ID_NET_NAME_ONBOARD、ID_NET_NAME_SLOT、ID_NET_NAME_PATH。注:有些设备属性可能处于未定义状态。
4./usr/lib/udev/rules.d/80-net-name-slot.rules 中的规则让 udev 重命名该接口,优先顺序如下:ID_NET_NAME_ONBOARD、ID_NET_NAME_SLOT、ID_NET_NAME_PATH。并提供如下信息:没有在步骤 1 或 2 中重命名该接口,同时未给出内核参数 net.ifnames=0。如果一个参数未设定,则会按列表的顺序设定下一个。如果没有设定任何参数,则不会重命名该接口。
从官方的阐述来看1,3,4都与系统systemd udev命名规则有关,2与biosdevname有关,个人理解四个文件的用途如下:
1./usr/lib/udev/rules.d/60-net.rules (rename_device程序基于自定义配置文件命名)
如果在目录/etc/sysconfig/network-scripts/中有以ifcfg-开头的文件,并且其中包含了指定网卡的MAC,则以ifcfg文件中的DEVICE字段给写的名称命名。
2./usr/lib/udev/rules.d/71-biosdevname.rules(biosdevname基于BIOS信息自动命名)
如果ifcfg开头的文件中找不到对应的配置,则看系统是否安装了biosdevname程序包,并且系统未设备参数biosdevname=0,则按biosdevname命名标准为网卡命名。
3./lib/udev/rules.d/75-net-description.rules(systemd-udev基于systemd-udev基于网卡信息命名)
如果1,2两条规则都没有命中则查看网卡信息,基于网卡信息指定的字段命名。
4./usr/lib/udev/rules.d/80-net-name-slot.rules(systemd-udev基于systemd-udev基于BIOS信息命名)
网卡信息都没有指定的字段,则按BIOS获取的板载槽位信息命名。
总结:自定义配置的优先级、其次是biosdevname、最后是systemd-udev自动配置
四、恢复网卡传统命名标准
从以上命名策略与命名规则来看,响应网卡命名的应该就是受biosdevname、net.ifnames两个参数影响,官方也给出两个参数的默认值:iosdevname=0是系统默认值(dell服务器默认是1),net.ifnames=1是系统默认值
如果想恢复以前的传统命名规范则只需要在grub文件中将两个参数设置为0即可,具体操作过程如下:
1.编辑/etc/sysconfig/grub文件,在GRUB_CMDLINE_LINUX字段最后添加net.ifnames=0 biosdevname=0
2.重新生成配置文件grub配置文件,执行如下命名
grub2-mkconfig -o /boot/grub2/grub.cfg
3.手动编辑/etc/sysconfig/network-scripts/目录下的ifcf-开头的文件,注意:HWADDR字段要与待命名的网卡MAC地址对应,或者UUID字段与网卡的UUID对应也可以。
4、重启系统。
当需要将内容发布到公网时,通过专业的海外专线服务,可将网络数据内容,直接接入自制域骨干网中,为数据内容提供大量访问流量,保障内容能在覆盖范围更广的互联网内实现更有效、更稳定地传播。
以后版本网卡命名规则相关推荐
- 网卡命名规则(linux)
网卡命名规则: Scheme 1: 如果从BIOS中能够取到可用的,板载网卡的索引号,则使用这个索引号命名,例如: eno1,如不能则尝试Scheme 2 Scheme 2: 如果从BIOS中能够取到 ...
- Linux网卡命名规则
网卡命名 一.为什么需要这个 服务器通常有多块网卡,有板载集成的,同时也有插在PCIe插槽的.Linux系统的命名原来是eth0,eth1这样的形式,但是这个编号往往不一定准确对应网卡接口 ...
- linux网卡命名规则变为eno分析?
起因:自己装了最新版本的ubunt发行版,今天发现无法上网,在解决联网故障时发现网卡不再是传统的eth0的方式,本机显示为eno1.奇了个怪了,纳了个闷了,google一探究竟! 查看本机ubuntu ...
- Fedora 从 15.0 开始将修改以太网卡命名规则
Fedora 的开发者 Matt Domsch 称,从 Fedora 15 开始,将不再使用常规的 ethX 的方式来命名以太网卡设备. 新的命名规则如下: em[1-N] 用于主板内置的网卡设备 p ...
- ubuntu/linux系统知识(36)linux网卡命名规则
文章目录 背景 命名规范 系统默认命名规则 优势 背景 很久以前Linux 操作系统的网卡设备的传统命名方式是 eth0.eth1.eth2等,属于biosdevname 命名规范. 服务器通常有多块 ...
- spring cloud 2020 改变了版本的命名规则
前言 一直对spring cloud 的版本命名规则很诟病,之前的spring cloud 版本名是根据伦敦地铁站名称的英文名称并按照字母a-z进行排序.虽然知道了规则感觉还行,但是这种对非英语语言环 ...
- Ubuntu 版本的命名规则和开发代号
转载:https://www.jianshu.com/p/5ce0dc0525c4 Ubuntu版本的命名规则是根据正式版发布的年月命名,Ubuntu 8.10 也就意味着 2008年10月发布的 U ...
- debian9 修改网卡命名规则
1. 默认网卡名称 pi@debian9:~$ ip add 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNK ...
- Linux网卡重命名规则
作者 QQ群:852283276 微信:arm80x86 微信公众号:青儿创客基地 B站:主页 https://space.bilibili.com/208826118 参考 linux网卡命名规则 ...
最新文章
- 【FFmpeg】便捷函数汇总(持续更新中...)
- C#进阶系列——WebApi 跨域问题解决方案:CORS
- 【Java 并发编程】线程锁机制 ( 悲观锁 | 乐观锁 | CAS 三大问题 | ABA 问题 | 循环时间长问题 | 多个共享变量原子性问题 )
- 【Android Protobuf 序列化】Protobuf 使用 ( Protobuf 序列化 | Protobuf 反序列化 )
- java string 转化为date
- I am the load of my word
- Beyond Compare 3 设置自动换行
- 浅析epoll-为何多路复用I/O要使用epoll
- php-redis中文参考手册_zset
- 大数据存在的安全隐患该如何防患
- 基于SOCKS的IPv4向IPv6过渡技术
- windows网络编程头文件注意事项
- 无法打开包括文件: “SDKDDKVer.h”问题解决办法
- java迷宫算法_迷宫算法(JAVA实现)
- 思科单臂路由最详细教程
- 树莓派运行python命令_《树莓派Python编程入门与实战》——2.2 使用Raspbian命令行...
- 使用IIS发布ASP.NET网页
- Python Scrapy 爬取 前程无忧招聘网
- Linux openwrt 树莓派 香蕉派 嵌入式 usb 声卡 PCM2704 2705 2706 CM108 PCM2704/2705/2706 linux专用声卡 专用usb声卡
- 终端模拟器编译c语言,开源一个Flutter编写的完整终端模拟器