admin 发表于 2024-6-29 16:59:45

CentOS7查看网络接口状态的命令,nmcli命令详解

在CentOS 7系统中,可以使用nmcli命令来查看网络接口状态。nm代表NetworkManager,cli代表Command-Line命令行。除了可以查看网络接口状态,还可以控制网卡状态(启用、停用、删除连接)、修改配置(如IP地址、DNS)和开关网络连接,Red Hat7也可以使用nmcli命令。

如果你想要查看所有网络接口及状态(包括已连接/未连接/未管理等),输入以下命令:
nmcli device status


如果你想要显示所有网络连接,并且得到更加详细的信息,可以输入以下命令:
nmcli connection show或
nmcli c s或
nmcli c#show是nmcli c的默认项,因此可以省略


nmcli命令用法详解
网络连接有五种状态,可通过nmcli n c命令查看

full联网
limited联网但无法上网
portal联网但需要登录认证
none   没网
unknown未知

1、网络连接开/关命令
nmcli n on#开
nmcli n off#关注意:关闭网络连接后Xshell也会断开
关闭网络后网络设备DEVICE会显示--,打开网络后可以看到网络接口名称

2、显示系统网络状态
nmcli general status或
nmcli g s


说明:
· STATE:网络是否连接
· CONNECTIVITY:同nmcli n c
· WIFI-HW:WIFI硬件开关
· WIFI:WIFI软件开关
· WWAN-HW:WWAN硬件开关
· WWAN:WWAN软件开关

3、显示主机名
nmcli general host
nmcli g h
4、更改主机名
nmcli general hostname newhostname
nmcli g h newhostname
主机名存放在**/etc/hostname**中,修改后需要重启NM

5、显示当前启动的连接
nmcli c s --active
nmcli c s -a #因为s后边有参数,因此不能省略


6、显示某个网卡的详细信息
nmcli c s 设备名


7、启动/关闭指定连接
nmcli c up 设备名# 如果某个设备原本就处于连接状态,那么该命令会重启它
nmcli c down 设备名# 关闭之后,再用nmcli c查看,DEVICE项将显示--
8、修改
nmcli c modify 设备名 [+ | -]选项 选项值
nmcli c m 设备名 [+ | -]选项 选项值
常用修改示例
nmcli c m ens192 ipv4.address 192.168.2.201/24   # 修改 IP 地址和子网掩码
nmcli c m ens192 +ipv4.addresses 192.168.2.100/24
nmcli c m ens192 ipv4.method manual             # 修改为静态配置,默认是 auto
nmcli c m ens192 ipv4.gateway 192.168.2.2       # 修改默认网关
nmcli c m ens192 ipv4.dns 192.168.2.2         # 修改 DNS
nmcli c m ens192 +ipv4.dns 114.114.114.114      # 添加一个 DNS
nmcli c m ens192 ipv6.method ignored            # 将 IPv6 禁用,针对CentOS8,三个可选项:disabled、auto、manual
nmcli c m ens192 connection.autoconnect yes   # 开机启动注意:在修改method前,要先修改address

使用英文引号""代替选项值,可以将选项设回默认值
nmcli c m ens33 ipv4.method ""
如下修改主机IP地址
nmcli connection modify ens192 ipv4.address 192.168.2.201/24
9、新增连接
nmcli c add type 连接类型 选项 选项值
nmcli c a type 连接类型 选项 选项值通常用的type是802-3-ethernet(别名 ethernet)。

选项同之前修改连接的选项,其中有几个重要选项:
connection.id(别名 con-name):连接名;
connection.interface-name(别名 ifname):设备名;
connection.autoconnect(别名 autoconnect):是否开机自启,其值只能是 yes 或 no,默认 yes

举例
nmcli c a type ethernet con-name ens33 ifname ens33


10、删除连接
nmcli c delete ens33
nmcli c de ens33      # delete 不可简写为 d,否则与 down 冲突,但可以简写为 de


11、重新加载
nmcli c reload或
nmcli c r
nmcli c load ifcfg-ens33或
nmcli c l ifcfg-ens33
nmcli connectionload/etc/sysconfig/network-scripts/ifcfg-ens192   # 指定文件这里ifcfg网络配置文件默认保存在**/etc/sysnconfig/network-scripts**中,如果在其他位置,这里要写完整路径。

12、监控连接
nmcli connection   monitor ffb0dc33-75d6-42b7-8cd4-509c465448e8# 监控ens192


13、显示所有设备详细信息
nmcli d show
nmcli d sh         # show 不可简写为 s,否则与 status 冲突,但可以简写为 sh
nmcli d sh ens192# 显示指定设备详细信息


14、连接设备
nmcli d connect ens192或
nmcli d c ens33
15、断开设备
nmcli d disconnect ens192或
nmcli d d ens33
感谢您的阅读,服务器大本营-技术文章内容集合站,助您成为更专业的服务器管理员!
页: [1]
查看完整版本: CentOS7查看网络接口状态的命令,nmcli命令详解