记录我的一些生活写照、无聊的牢骚、内心世界的活动 注册 | 登陆

CentOS/Debian修改默认的网卡名称为eth0

CentOS7修改默认的网卡名称为eth0

1.问题引入:
1)从CentOS/RHEL7开始,默认网卡的命名规则进行了优化升级,在新的规则下,网卡接口名称会基于固件,拓扑结构和位置信息来确定,常见的有eno16777736,ens33。
2)在添加或移除网络设备,克隆虚拟机和虚拟化相关配置中,接口名称仍然保持固定,而无需手动修改或者重新生成。
3)在大规模集群和虚拟化应用中,这样的配置显然是有很大优势的,避免了克隆虚拟机后修改网卡配置的操作,但对于个人测试或者从CentOS6继承过来的习惯问题,可能会不太舒服,可以通过以下方法进行修改
2.解决方法:
1)重命名网卡配置文件
cd /etc/sysconfig/network-scripts/
ifconfig (如提示命令不存在,可以 yum -y install net-tools 安装)
mv ifcfg-ens33 ifcfg-eth0
修改网卡配置文件内容
# 将NAME和DEVICE改为与网卡文件相同的名称eth0,同时可以去掉UUID,HWADDR等配置参数
vim ifcfg-eth0
XML/HTML代码
  1. NAME=eth0  
  2. DEVICE=eth0  
  3. ONBOOT=yes  
  4. TYPE=Ethernet  
  5. BOOTPROTO=static  
  6. IPADDR=192.168.1.85  
  7. PREFIX=24  
  8. GATEWAY=192.168.1.1  
  9. DNS1=202.106.0.20  
  10. DNS2=8.8.8.8  
  11. DEFROUTE=yes  
  12. IPV4_FAILURE_FATAL=no  
  13. IPV6INIT=no  
  14. IPV6_AUTOCONF=no  
  15. IPV6_DEFROUTE=no  
  16. IPV6_PEERDNS=no  
  17. IPV6_PEERROUTES=no  
  18. IPV6_FAILURE_FATAL=no  
  19. PROXY_METHOD=none  
  20. BROWSER_ONLY=no  
3)禁用系统内核自动命名配置
# 编辑/etc/default/grub文件,在启动时传递“net.ifnames=0 biosdevname=0”的内核参数到GRUBCMDLINELINUX变量可以实现
vim /etc/default/grub
XML/HTML代码
  1. GRUB_CMDLINE_LINUX="rhgb quiet net.ifnames=0 biosdevname=0" 
4)更新grub配置参数
# 以下命令可以更新该内核参数
XML/HTML代码
  1. grub2-mkconfig  -o  /boot/grub2/grub.cfg
5)重启检查配置
reboot
ifconfig
6)修改udev网卡规则(非必要操作)
# 根据Centos 官方WIKI的FAQ中得知,如果你有多个接口,并且想要控制其设备名,而不是让内核以它自己的方式命名,创建,/etc/udev/rules.d/XXX-net.rules规则是必要的
# 对于CentOS6网卡的命名规则是/etc/udev/rules.d/70-persistent-net.rules,修改该文件或者直接删除可以解决重启不生效的问题,
# 对于CentOS7,命名规则的文件存放在/usr/lib/udev/rules.d/目录下,可以修改60-net.rules这个文件进行配置
cd /usr/lib/udev/rules.d/
vim 60-net.rules
XML/HTML代码
  1. ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="1", ATTR{address}=="00:0c:29:9e:10:86", RESULT=="?*", NAME="eth0"
Debian如何将网卡名改为eth0
在默认情况下,Debian会将网卡命名为ens33或者其他类似的名称,我们如果需要将网卡名称改为eth0,需要进行以下步骤:
步骤 1: 确认网络接口名称
首先,我们需要确认当前的网络接口名称。打开终端,并使用以下命令:
ifconfig -a
该命令将列出所有网络接口及其相应的名称和配置信息。请查找你想要更改名称的网络接口。
步骤 2: 修改GRUB配置文件
接下来,我们需要编辑GRUB配置文件以修改内核启动参数。
打开终端,并输入以下命令:
sudo nano /etc/default/grub
使用你喜欢的编辑器(上述命令中使用的是nano)打开该文件后,找到以下行:
GRUB_CMDLINE_LINUX=""
将其修改为:
GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"
保存并关闭文件。
然后,在终端中运行以下命令以应用更改:
sudo update-grub
步骤 3: 修改网络接口配置文件
现在,我们需要编辑网络接口配置文件以将网卡名更改为eth0。
打开终端,并输入以下命令:
sudo nano /etc/network/interfaces
在该文件中找到你想要更改名称的网络接口,并将其修改为:
auto eth0 iface eth0 inet dhcp
保存并关闭文件。
步骤 4: 重启网络服务
最后,我们需要重启网络服务以使更改生效。
在终端中输入以下命令:
sudo systemctl restart networking
现在,你的网卡名称应该已成功更改为eth0。 
其实不管是Debian,Ubuntu,Centos系统都可以通过修改grub引导,修改一样的配置,实现开机后网卡重命名的。Centos系统如果更换网卡,原本eth0变成了eth1,如果想让新网卡还是eth0,可以直接修改udev网卡规则,删掉或者#注释掉老网卡信息,然后修改新网卡信息,把eth1改成eth0,保存后重启服系统,这样就可以实现不修改网卡配置信息,更换网卡不影响以前任何配置的目的。

« 上一篇 | 下一篇 »

发表评论

评论内容 (必填):