在RHEL和CentOS 8中,网络服务由NetworkManager守护进程管理,它用于动态地配置和控制网络设备,并在它们可用时保持连接和活动。
NetworkManager具有许多优点,比如支持使用命令行界面和图形用户界面工具进行简单的网络设置和管理,通过D-Bus提供API,允许查询和控制网络配置,支持配置灵活性等。
此外,还可以使用文件和Cockpit Web控制台配置NetworkManager,它支持使用自定义脚本来根据连接状态启动或停止其他服务。
在进行下一步之前,以下是有关CentOS / RHEL 8中联网的其他一些要点:
仍然支持传统的ifcfg类型配置(例如ifcfg-eth0,ifcfg-enp0s3)文件。
网络脚本已弃用,默认情况下不再提供。
最少的安装提供了通过nmcli工具调用NetworkManager的ifup和ifdown脚本的新版本。
要运行ifup和ifdown脚本,必须运行NetworkManager。
在CentOS/RHEL 8上安装NetworkManagerNetworkManager应该预先安装在CentOS / RHEL 8基本安装上,否则,您可以使用DNF软件包管理器进行安装,如图所示。
# dnf install NetworkManager
NetworkManager的全局配置文件位于/etc/NetworkManager/NetworkManager.conf中,其他配置文件位于/etc/NetworkManager/中。
在CentOS/RHEL 8上使用Systemctl管理NetworkManager在CentOS/RHEL 8和其他采用systemd的现代Linux系统(系统和服务管理器)中,使用systemctl工具管理服务。
以下是用于管理NetworkManager服务的有用的systemctl命令。
检查NetworkManager的状态
默认情况下,最小安装的CentOS/RHEL 8应该已启动NetworkManager并被启用以在启动时自动启动。 您可以使用以下命令来检查NetworkManager是否处于活动状态,已启用并打印NetworkManager的运行时状态信息。
# systemctl is-active NetworkManager
# systemctl is-enabled NetworkManager
# systemctl status NetworkManager
启动NetworkManager
如果NetworkManager没有运行,则可以通过简单运行来启动它。
# systemctl start NetworkManager
停止NetworkManager
要出于某种原因停止或停用NetworkManager,请发出以下命令。
# systemctl stop NetworkManager
重新启动NetworkManager
如果您对接口配置文件或NetworkManager守护程序的配置(通常位于/etc/NetworkManager /目录下)进行了任何更改,则可以重新启动(停止然后再启动)NetworkManager以应用更改,如图所示。
#systemctl restart NetworkManager
重新加载NetworkManager
要在不重新启动服务的情况下重新加载NetworkManager守护程序的配置(而不是systemd的单元配置文件),请运行以下命令。
# systemctl reload NetworkManager
使用NetworkManager工具并使用ifcfg文件
NetworkManager支持一些工具供用户与其交互,这些工具是:
nmcli–用于配置网络的命令行工具。
nmtui–一个简单的基于curses的文本用户界面,还用于配置和管理newtwork界面连接。
其他工具包括nm-connection-editor,控制中心和网络连接图标(均在GUI下)。
要列出NetworkManager检测到的设备,请运行nmcli命令。
# nmcli device
或者
# nmcli device status
要查看所有活动连接,请运行以下命令(注意,如果没有-a,它将列出可用的连接配置文件)。
# nmcli connection show -a
查看活动网络连接
在CentOS/RHEL 8上设置静态IP地址
特定于网络接口的配置文件位于/etc/sysconfig/Network -scripts/目录中。您可以编辑这些文件中的任何一个,例如,为您的CentOS/RHEL 8服务器设置一个静态IP地址。
# vi /etc/sysconfig/network-scripts/ifcfg-ens33
下面是设置静态IP地址的配置示例。
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=ffd19ca9-17a4-41f0-ab82-4d40a5df0337
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.0.110
PREFIX=24
GATEWAY=192.168.0.1
DNS1=8.8.8.8
PEERDNS=no
查看:
ifconfig
查看网络接口配置
保存更改后,需要重新加载所有连接配置文件或重新启动NetworkManager以应用新更改。
# nmcli connection reload
或者
# systemctl restart NetworkManager
基于网络连接启动或停止网络服务/脚本
NetworkManager有一个有用的选项,允许用户执行服务(如NFS、SMB等)或基于网络连接的简单脚本。