您现在的位置是:首页> 操作系统> Linux> CentOS 7

linux中nmcli命令使用及网络配置包含无线

  • 5612人已阅读
  • 时间:2018-11-15 08:06:34
  • 分类:CentOS 7
  • 作者:祥哥

祥哥之前讲过在Centos6.2里命令行无线网卡的管理命令iwconfig,和wpa_supplicant,点击前往

由于iwconfig只支持WEP加密的连接,所以wpa_supplicant显得更为重要。但在CentOS7中默认的网络服务由NetworkManager提供,这是动态控制配置网络的守护进程,它用于保持当前网络设备及连接处于工作状态,同时也支持传统的ifcfg类型的配置文件。

NetworkManager可以用于以下类型的连接:Ethernet、VLANS,Bridges、bonds、Teams、Wi-Fi、mobile boradband(如移动3G)以及IP-over-InfiniBand。针对与这些网络的类型,NetworkManager可以配置他们的网络别名,IP地址,静态路由,DNS,连接以及很多其它的特殊参数。

在CentOS /RHEL 7中网络配置我们尽量不要使用ifconfig了,应该用nmcli,他更强大。

命令与语法

 nmcli [OPTIONS] OBJECT { COMMAND | help }

OBJECT和COMMAND可以用全称,也可以用简称,最少可以只用一个字母,建议用三个字母。而OBJECT里面我们常用的就是connetction和device,这里需要简单区分一下connection 和device。

device叫网络接口,是物理设备

[root@localhost ~]# nmcli device help

Usage: nmcli device { COMMAND | help }

COMMAND := { status | show | set | connect | reapply | modify | disconnect | delete | monitor | wifi | lldp }

  status

  show [<ifname>]

  set [ifname] <ifname> [autoconnect yes|no] [managed yes|no]

  connect <ifname>

  reapply <ifname>

  modify <ifname> ([+|-]<setting>.<property> <value>)+

  disconnect <ifname> ...

  delete <ifname> ...

  monitor <ifname> ...

  wifi [list [ifname <ifname>] [bssid <BSSID>]]

  wifi connect <(B)SSID> [password <password>] [wep-key-type key|phrase] [ifname <ifname>]

                         [bssid <BSSID>] [name <name>] [private yes|no] [hidden yes|no]

  wifi hotspot [ifname <ifname>] [con-name <name>] [ssid <SSID>] [band a|bg] [channel <channel>] [password <password>]

  wifi rescan [ifname <ifname>] [[ssid <SSID to scan>] ...]

  lldp [list [ifname <ifname>]]

connection 是连接 ,偏重于逻辑设置

[root@localhost ~]# nmcli connection help

Usage: nmcli connection { COMMAND | help }

COMMAND := { show | up | down | add | modify | clone | edit | delete | monitor | reload | load | import | export }

  show [--active] [--order <order spec>]

  show [--active] [id | uuid | path | apath] <ID> ...

  up [[id | uuid | path] <ID>] [ifname <ifname>] [ap <BSSID>] [passwd-file <file with passwords>]

  down [id | uuid | path | apath] <ID> ...

  add COMMON_OPTIONS TYPE_SPECIFIC_OPTIONS SLAVE_OPTIONS IP_OPTIONS [-- ([+|-]<setting>.<property> <value>)+]

  modify [--temporary] [id | uuid | path] <ID> ([+|-]<setting>.<property> <value>)+

  clone [--temporary] [id | uuid | path ] <ID> <new name>

  edit [id | uuid | path] <ID>

  edit [type <new_con_type>] [con-name <new_con_name>]

  delete [id | uuid | path] <ID>

  monitor [id | uuid | path] <ID> ...

  reload

  load <filename> [ <filename>... ]

  import [--temporary] type <type> file <file to import>

  export [id | uuid | path] <ID> [<output file>]

多个connection可以应用到同一个device,但同一时间只能启用其中一个connection。这样的好处是针对一个网络接口,我们可以设置多个网络连接,比如静态IP,动态IP,再根据需要UP相应的connection.第一个connection都生成一个对应的配置文件在/etc/sysconfig/network-scripts

nmcli常用命令总结:

nmcli device status #显示设备状态
nmcli connection show #显示所有的连接包括不活动的链接
nmcli connection up "<ID>" # 启用配置文件接口
nmcli connection down "<ID>" #关闭配置文件接口
nmcli device wifi  #打描无线网络
nmcli device wifi connect "无线网络名称” password "无线网络密码“ name "任意名称” (删除,修改时用) #配置无线网卡连接
nmcli device disconnect "接口名“  #断开硬件接口链接
nmcli con del "配置文件的name" #删除配置文件
nmcli con #获取当前设备所有连接过的UUID号码和name
#设置静态IP网关及DNS,也可以直接去配置文件修改,也可以通过命令来配置
nmcli con mod "配置文件name" ipv4.dns 223.5.5.5 #设置DNS
nmcli con mod "配置文件name" ipv4.gateway 192.168.1.1 #设置网关
nmcli con mod "配置文件name" ipv4.addr 192.168.1.240/24 #设置IP及子网掩码
nmcli con mod "配置文件name" ipv4.method manual #设置BOOTPROTO=none

修改链接配置后,需要重新加载配置

nmcli con reload #重新加载配置
nmcli con down "配置文件name"断开链接
nmcli con up "配置文件name" 开启链接


Top