
介绍
在本教程中,我们会在CentOS / RHEL 7中讨论 网络管理命令行工具 ,也叫nmcli。那些使用ifconfig的用户应该在CentOS 7中避免使用ifconfig 了。
让我们用nmcli工具配置一些网络设置。
要得到系统中所有接口的地址信息
1 | [root@localhost ~]# ip addr show |
示例输出:
1 | 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN |
检索与已连接的接口相关的数据包统计
1 | [root@localhost ~]# ip -s link show eno16777736 |
示例输出:

得到路由配置
1 | [root@localhost ~]# ip route |
示例输出:
1 | default via 192.168.1.1 dev eno16777736 proto static metric 100 |
分析主机/网站路径
1 | [root@localhost ~]# tracepath unixmen.com |
输出像traceroute,但是更加完整。

nmcli 工具
nmcli 是一个非常丰富和灵活的命令行工具。nmcli使用的情况有:
- 设备 – 正在使用的网络接口
- 连接 – 一组配置设置,对于一个单一的设备可以有多个连接,可以在连接之间切换。
找出有多少连接服务于多少设备
1 | [root@localhost ~]# nmcli connection show |

得到特定连接的详情
1 | [root@localhost ~]# nmcli connection show eno1 |
示例输出:

得到网络设备状态
1 | [root@localhost ~]# nmcli device status |
1 | DEVICE TYPE STATE CONNECTION |
使用“dhcp”创建新的连接
1 | [root@localhost ~]# nmcli connection add con-name "dhcp" type ethernet ifname eno16777736 |
这里,
- connection add – 添加新的连接
- con-name – 连接名
- type – 设备类型
- ifname – 接口名
这个命令会使用dhcp协议添加连接
示例输出:
1 | Connection 'dhcp' (163a6822-cd50-4d23-bb42-8b774aeab9cb) successfully added. |
不通过dhcp分配IP,使用“static”添加地址
1 | [root@localhost ~]# nmcli connection add con-name "static" ifname eno16777736 autoconnect no type ethernet ip4 192.168.1.240 gw4 192.168.1.1 |
示例输出:
1 | Connection 'static' (8e69d847-03d7-47c7-8623-bb112f5cc842) successfully added. |
更新连接:
1 | [root@localhost ~]# nmcli connection up eno1 |
再检查一遍,ip地址是否已经改变
1 | [root@localhost ~]# ip addr show |

添加DNS设置到静态连接中
1 | [root@localhost ~]# nmcli connection modify "static" ipv4.dns 202.131.124.4 |
添加更多的DNS
1 | [root@localhost ~]# nmcli connection modify "static" +ipv4.dns 8.8.8.8 |
注意:要使用额外的**+符号,并且要是+ipv4.dns,而不是ip4.dns**。
添加一个额外的ip地址
1 | [root@localhost ~]# nmcli connection modify "static" +ipv4.addresses 192.168.200.1/24 |
使用命令刷新设置:
1 | [root@localhost ~]# nmcli connection up eno1 |

你会看见,设置生效了。
完结。
via: http://www.unixmen.com/basics-networkmanager-command-line-tool-nmcli/