CentOS6之前基于传统的命名方式如:eth0,eth1….
Centos7提供了不同的命名规则,默认是基于固件、拓扑、位置信息来分配。这样做的优点是命名是全自动的、可预知的,缺点是比eth0、wlan0更难读。
新网卡命名的策略
| systemd对网络设备的命名方式 规则1:如果Firmware或者BIOS提供的设备索引信息可用就用此命名。比如eno1。否则使用规则2 规则2:如果Firmware或Bios的PCI-E扩展插槽可用就用此命名。比如ens1,否则使用规则3 规则3:如果硬件接口的位置信息可用就用此命名。比如enp2s0 规则4:根据MAC地址命名,比如enx7d3e9f。默认不开启。 规则5:上述均不可用时回归传统命名方式 上面的所有命名规则需要依赖于一个安装包:biosdevname |
前两个字符的含义
| en | 以太网 | Ethernet |
| wl | 无线局域网 | WLAN |
| ww | 无线广域网 | WWLAN |
第三个字符根据设备类型来选择
| format | description |
| o | 集成设备索引号 |
| s | 扩展槽的索引号 |
| x s | 基于MAC进行命名 |
| p s | PCI扩展总线 |
配置回归传统命名方式
编辑/etc/default/grub文件,GRUB_CMDLINE_LINUX后面加入“net.ifnames=0 biosdevname=0”

生成grub.cfg配置文件
legacy模式:
grub2-mkconfig -o /boot/grub2/grub.cfg
uefi模式:
grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
修改网卡名称
mv /etc/sysconfig/network-scripts/ifcfg-enp4s0 /etc/sysconfig/network-scripts/ifcfg-eth0

重启服务器
reboot
原创文章,作者:cy,如若转载,请注明出处:https://www.cygzs.net/
