CentOS8网络管理和之前的方法变化较大,没有了传统的network.service(默认被废弃了,可以自行安装),一般使用NetworkManager
(简称NM
)命令集。对于红帽系列下一个大版本的系统将只支持NetworkManager
,所以建议掌握。NetworkManager
比较重要的一个命令是:nmcli
。
1. nmcli
的理解
nmcli
有两个比较重要的概念:nmcli connection
和 nmcli device
。
nmcli connection
,表示连接,可以理解为配置文件,可以简写为:nmcli c
,它有两种状态:活动的和非活动的。
nmcli device
表示设备,可以理解为我们的网卡,网卡需要被NM
纳管,然后才可以为设备配置一个或多个连接,同一个时刻,一个设备只能有一个连接与之对应。
1.1 nmcli connection
查看所有连接列表
nmcli c
# 或者
nmcli connection
# 或者
nmcli connection show
# 或者
nmcli c show
结果有四项,分别是:连接名称(连接标识),连接的UUID,连接类型,设备名称(网卡名)
1.2 查看所有设备列表
nmcli device
nmcli d
结果有四项,分别是:设备名称(网卡名),连接类型,连接状态,连接名称(连接标识)
1.3 创建连接
nmcli c add type ethernet con-name 连接名称 ifname 网卡名称 [各种参数……]
创建连接后会在/etc/sysconfig/network-scripts/
目录下自动创建一个 ifcfg-连接名
的文件
说明:
- type: 必选项,表示网络类型,类型有很多,可以通过
nmcli c add type -h
看到,这里指定为ethernet
- con-name:必选项,表示连接名称,可以任意定义
- ifname:必选项,表示网卡名称,不可随意填写,必须是在
nmcli d
里能看到的
其它常见参数有(IPV4):
nmcli 的参数 | 对应的ifcfg-* 文件 | 结果说明 |
|
| 设置静态IPV4地址 |
|
| 设置自动获取IPV4地址 |
|
| 设置IPV4地址, 网络前缀 |
|
| 设置网关地址 |
|
| 设置DNS(域名解析系统)地址 |
|
| 设置启动时自动激活本连接 |
创建例子
nmcli c add type ethernet con-name ss ifname ens33 ipv4.address '192.168.101.201/24' ipv4.gateway 192.168.101.1 ipv4.dns '8.8.8.8,4.4.4.4' ipv4.method manual
注
:ipv4.dns8.8.8.8
谷歌对外公开的域名解析系统
执行完命令,我们可以看到使用命令nmcli c
查看本机拥有的连接列表。比如类似这样:
NAME UUID TYPE DEVICE
ens33 6f8161e2-be5b-453a-a721-1a03dc01db48 ethernet ens33
ss f4946c30-0b13-4f31-baf5-2b7ebac6675d ethernet --
同时,在/etc/sysconfig/network-scripts/
目录下自动创建一个 ifcfg-ss
的文件,文件内容类似这样:
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=192.168.101.201
PREFIX=24
GATEWAY=192.168.101.1
DNS1=8.8.8.8
DNS2=4.4.4.4
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=ss
UUID=f4946c30-0b13-4f31-baf5-2b7ebac6675d
DEVICE=enp0s3
ONBOOT=yes
1.4 停止和激活连接
# 停止connection
nmcli c down 连接名称
# 激活连接
nmcli c up 连接名称
连接一旦激活,对应的网络配置就生效了。
1.5 删除连接
nmcli c delete 连接名称
2. 配置静态IP
2.1 方法1:使用TUI进行修改
在命令行中输入命令:nmtui
,会看到一个图形界面,使用键盘方向键和enter键,选择Edit a connection
,然后选中要修改的网卡名,然后选择Edit
,进入新页面后,根据自己情况配置对应的IP地址,然后选择最下面的OK
,然后再选择Back
,回到TUI第一页面,选择Activate a connection
,进入后,连续按两次enter键,表示重启激活连接,网卡名称前面有个*
表示处于激活状态,然后选择Back
返回,回到第一屏后选择Quit
即可。
2.2 方法2:使用传统的配置脚本修改(有些情况装的系统可能没有)
# enp0s3 表示连接的名称
vi /etc/sysconfig/network-scripts/ifcfg-ens33
然后修改几项(如果没有这几项就新加):
# 不再是static了
BOOTPROTO=none
# 这是设置IP地址
IPADDR=192.168.101.205
# 这是子网掩码
NETMASK=255.255.255.0
# 这是网关地址
GATEWAY=192.168.101.1
# 这是dns服务器的配置
DNS1=192.168.101.1
保存退出后执行命令:
# 连接重载配置文件
nmcli c reload
# 重启NetworkManager
nmcli networking off
nmcli networking on
2.3 方法3:参看前面的1.3 、1.4部分
mtui图形界面设置网络
查看机器IP命令
# 下面两个命令都可以在CentOS8上查看本机IP
ip addr
nmcli