学习一个linux命令-nmcli

744人浏览   2024-04-17 10:34:43

nmcli是一个RedHat 7或CentOS 7之后的一个网络配置命令,用于完成网卡的配置工作,在8之后都默认使用nmcli了,因此学习使用它还是很有必要的。

我们最常使用的方法是修改/etc/sysconfig/network-scripts/ifcfg-*文件,采用手工方式,而使用nmcli则是将使用命令的方式来修改网卡,更加便捷或方便使用脚本来批量管理。

nmcli命令与配置文件的对应关系

下面将演示nmcli命令一些常见的操作与应用。

查看网卡信息

在查看网卡信息时,可以使用nmcli connection show或简写为nmcli con show来查看,可看到我的计算机上分别有两块网卡eth0与eth1。

[root@localhost ~]# nmcli connection show
NAME  UUID                                  TYPE      DEVICE
eth0  adf11feb-6cf6-4b65-929b-1bdfeb8cf155  ethernet  eth0
eth1  7ce24459-44b8-4340-b270-9702c6b27ba9  ethernet  eth1

#或者将connection简写为con也是同样的结果
[root@localhost ~]# nmcli con show
NAME  UUID                                  TYPE      DEVICE
eth0  adf11feb-6cf6-4b65-929b-1bdfeb8cf155  ethernet  eth0
eth1  7ce24459-44b8-4340-b270-9702c6b27ba9  ethernet  eth1
[root@localhost ~]#

查看网卡的状态

在linux下想要查看网卡的连接或断开状态也可以很方便。采用nmcli device status可以观察到eth0是处于连接状态,eth1处于断开状态,lo为回环网络,这里可以不用管。

[root@localhost ~]# nmcli device status
DEVICE  TYPE      STATE   CONNECTION
eth0    ethernet  连接的  eth0
eth1    ethernet  不可用  --
lo      loopback  未托管  --
[root@localhost ~]#

建立或删除新网卡

如一个服务器上有多个网卡的情况,可根据情况删除或添加网卡。在建立一块网卡时ifname和con-name建议修改与相同的名字,方便管理。

#删除一块不需要的网卡
nmcli connection delete ens33
#建立一块新网卡eth0
nmcli connection add type ethernet ifname eth0 con-name eth0
#查看建立好的网卡
nmcli con show

配置IP地址

采用命令的方式配置网卡为自动获取IP地址或配置为静态IP

#自动获取dhcp
nmcli connection modify eth0 ipv4.method  auto 

#手动配置为静态IP
nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.4.7/47 ipv4.gateway 192.168.4.254 connection.autoconnect yes
#激活
nmcli connection up eth0


相关推荐