vlambda博客
学习文章列表

nmcli管理网络 RHEL8和CentOS8怎么重启网络

1. 前言

本文主要讲解如何重启RHEL 8或者CentOS 8网络以及如何解决RHEL8和CentOS8系统的网络管理服务报错,当我们安装好RHEL 8或者 CentOS 8,重启启动网络时,会出现以下报错:

[root@zcwyou ~]# systemctl restart network.service

报错信息如下
Failed to restart network.service: Unit network.service not found.
意思为无法重启网络服务,原因是无法找到network.service网络服务。

出现错误的原因是,在RHEL 8和CentOS 8系统里,已废弃network.service,因此只能通过其它方法进行网络配置,包括NM命令工具集。换言之,在rhel8上,必须开启NM,否则无法使用网络。

下文假设你的网卡标识为xxx,可以通过以下命令确定网卡标识符

[root@zcwyou ~]# ip addr

比如ens33等等这类标识。

2. RHEL8或者CentOS8配置网络的三种方法

RHEL8或者CentOS8应该使用nmcli管理网络

  1. 手工配置ifcfg,通过NM来生效

  2. 通过NM自带工具配ip,比如nmcli

  3. 手工配置ifcfg,通过传统network.service来生效
    建议:
    推荐使用上述第1种网络配置方法(手工配置ifcfg,通过NM生效),因为这样既兼容了传统的ifcfg配置,又能熟悉nmcli。举例:

2.1 方法一:手工配置ifcfg,使用nmcli来生效新的网络配置

假设网卡标识符为xxx

[root@zcwyou ~]# vi /etc/sysconfig/network-scripts/ifcfg-xxx

使用nmcli重新回载网络配置

[root@zcwyou ~]# nmcli c reload

如果之前没有xxx的connection,则上一步reload后就已经自动生效了

[root@zcwyou ~]# nmcli c up xxx

2.2 方法二:RHEL8和CentOS8完全使用nmcli来管理网络

查看网卡信息

[root@zcwyou ~]# nmcli connection

[root@centos8 ~]# nmcli connection
NAME UUID TYPE DEVICE
ens33 a92fa07b-9b68-4d2b-a2e7-e55146099b1b ethernet ens33
ens36 418da202-9a8c-b73c-e8a1-397e00f3c6b2 ethernet ens36

[root@zcwyou ~]# nmcli con xxx

显示具体的网络接口信息

[root@zcwyou ~]# nmcli connection show xxx

显示所有活动连接

[root@zcwyou ~]# nmcli connection show --active

删除一个网卡连接

[root@zcwyou ~]# nmcli connection delete xxx

给xxx添加一个IP(IPADDR)

[root@zcwyou ~]# nmcli connection modify xxx ipv4.addresses 192.168.0.58

给xxx添加一个子网掩码(NETMASK)

[root@zcwyou ~]# nmcli connection modify xxx ipv4.addresses 192.168.0.58/24

IP获取方式设置成手动(BOOTPROTO=static/none)

[root@zcwyou ~]# nmcli connection modify xxx ipv4.method manual

添加一个ipv4

[root@zcwyou ~]# nmcli connection modify xxx +ipv4.addresses 192.168.0.59/24

删除一个ipv4

[root@zcwyou ~]# nmcli connection modify xxx -ipv4.addresses 192.168.0.59/24

添加DNS

[root@zcwyou ~]# nmcli connection modify xxx ipv4.dns 114.114.114.114

删除DNS

[root@zcwyou ~]# nmcli connection modify xxx -ipv4.dns 114.114.114.114

添加一个网关(GATEWAY)

[root@zcwyou ~]# nmcli connection modify xxx ipv4.gateway 192.168.0.2

可一块写入:

[root@zcwyou ~]# nmcli connection modify xxx ipv4.dns 114.114.114.114 ipv4.gateway 192.168.0.2

添加DNS

[root@zcwyou ~]# nmcli connection modify xxx ipv4.dns 114.114.114.114

删除DNS

[root@zcwyou ~]# nmcli connection modify xxx -ipv4.dns 114.114.114.114

添加一个网关(GATEWAY)

[root@zcwyou ~]# nmcli connection modify xxx ipv4.gateway 192.168.0.2

可一块写入:

[root@zcwyou ~]# nmcli connection modify xxx ipv4.dns 114.114.114.114 ipv4.gateway 192.168.0.2

使用nmcli重新回载网络配置

[root@zcwyou ~]# nmcli c reload

如果之前没有xxx的connection,则上一步reload后就已经自动生效了

[root@zcwyou ~]# nmcli c up xxx

2.3 方法三:安装network.service服务

可以通过yum install network-scripts来安装传统的network.service,不过redhat说了,在下一个RHEL的大版本里将彻底废除,因此不建议使用network.service。

3. RHEL8或者CentOS8修改网卡名称

3.1 删除网卡连接,比如xxx

[root@zcwyou ~]# nmcli connection delete xxx

3.2 修改内核参数配置文件

[root@zcwyou ~]# vi /etc/default/grub

3.3 植入内核

[root@zcwyou ~]# grub2-mkconfig -o /boot/grub2/grub.cfg

3.4 重启

[root@zcwyou ~]# reboot

3.5 添加网卡

[root@zcwyou ~]# nmcli connection add type ethernet con-name xxx

4. RHEL8或者CentOS8使用nmtui工具配置网络

[root@zcwyou ~]# nmtui

5. 总结

CentOS8和RHEL8上一定要习惯使用nmcli来管理网络,network.service在未来会被正式废除,没有学习的必要了。

 

重启网络服务

#systemctl restart NetworkManager.service

nmcli connection reload

nmcli connection up ens160

 

转载至https://www.linuxrumen.com/rmxx/973.html