1、概述
nmcli是NetworkManager的一个命令行工具,它提供了使用命令行配置由NetworkManager管理网络连接的方法(nm 代表 NetworkManager,cli 代表 Command-Line)。
2、基本格式:

-
OPTIONS:选项,用于指定命令的行为或输出格式。
-
OBJECT:操作对象,如general(一般信息)、device(网络设备)、connection(网络连接)等。
-
COMMAND:对指定的操作对象执行的操作命令,如status(显示状态)、show(显示信息)、up(启用连接)、down(禁用连接)等。
3、常用选项

4、相关系统指令
注意:NetworkManager 中开头的 N 和中间的 M 必须大写。

5、常用命令及简写命令使用举例
status 是 general 的默认项,可以省略不写。

6、常用操作对象及命令
nmcli networking
网络连接状态(CONNECTIVITY)共有五种:full、limited(连网,但无法上网)、portal(连网,但需要登陆认证后才能上网)、none(没连网)和 unknown。
networking 可以简写为 n、ne、net、netw

nmcli general
-
STATE 显示网络是否连接;
-
CONNECTIVITY 与前面介绍的 nmcli n c 相同;
-
WIFI-HW 表示 WIFI 硬件开关、WIFI 表示 WIFI 软件开关;
-
WWAN-HW 表示 WWAN 硬件开关、WWAN 表示 WWAN 软件开关。
general 可以简写为 g、ge、gen、gene

nmcli connection
connection 可以简写为 c、co、con、conn

modify 修改连接

修改连接常用示例
注意:必须先修改 ipv4.address,然后才能修改 ipv4.method!

add 新增连接
type 为必选项,我们通常用到的是 802-3-ethernet(别名 ethernet)。
选项与前面介绍的"修改连接"中的选项一样,其中重要的几个选项:
-
connection.id(别名 con-name):连接名;
-
connection.interface-name(别名 ifname):设备名;
-
connection.autoconnect(别名 autoconnect):是否开机自启,其值只能是 yes 或 no,默认 yes。
示例:
添加一个新的以太网连接配置:

-
nmcli:这是 NetworkManager 的命令行界面工具。
-
c a:这是 connection add 的缩写,表示添加一个新的连接。
-
type ethernet:指定连接的类型为以太网。
-
con-name ens36:设置连接的名称(或配置文件名)为 ens36。
-
ifname ens36:指定这个连接将使用的网络接口名称为 ens36。
-
ipv4.addresses 192.168.1.100/24:设置静态 IP 地址为 192.168.1.100,子网掩码为 255.255.255.0(等同于 /24)。
-
ipv4.gateway 192.168.1.1:设置默认网关为 192.168.1.1。
-
ipv4.dns "8.8.8.8 8.8.4.4":设置 DNS 服务器为 8.8.8.8 和 8.8.4.4。
-
ipv4.method manual:指定 IPv4 配置方法为手动(即静态 IP)。

重载所有连接的配置文件

网络配置文件说明

nmcli device
device 可以简写为 d、de、dev
显示所有网络接口设备的状态
nmcli device status
nmcli d
显示所有设备的详细信息
nmcli d show
nmcli d sh # show 不可简写为 s,否则与 status 冲突,但可以简写为 sh
显示某一特定设备的详细信息
nmcli d sh ens33
连接设备,如果 ens33 本来就处于连接状态,那此命令会重启 ens33,并且触发重新生成 ifcfg文件
nmcli d connect ens33
nmcli d c ens33
断开设备
nmcli d disconnect ens33
nmcli d d ens33
更新设备信息(只有在设备处于连接状态,才可以更新设备;更新设备也会重启连接)
nmcli d reapply ens33
nmcli d r ens33
显示附近的无线网络设备的详细信息。
nmcli device wifi list
连接到指定的无线网络,需要指定SSID和密码。
nmcli device wifi connect "SSID" password "password"
断开当前的无线网络连接。
nmcli device wifi disconnect