Nmcli 网络管理命令行工具基础
作者:
Rajneesh Upadhyay
译者:
geekpi
| 2015-09-17 10:57:00 评论: 5
介绍
在本教程中,我们会在CentOS / RHEL 7中讨论 网络管理命令行工具 ,也叫nmcli。那些使用ifconfig的用户应该在CentOS 7中避免使用ifconfig 了。
让我们用nmcli工具配置一些网络设置。
要得到系统中所有接口的地址信息
[root@localhost ~]# ip addr show
示例输出:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:67:2f:4c brd ff:ff:ff:ff:ff:ff
inet 192.168.1.51/24 brd 192.168.1.255 scope global eno16777736
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe67:2f4c/64 scope link
valid_lft forever preferred_lft forever
检索与已连接的接口相关的数据包统计
[root@localhost ~]# ip -s link show eno16777736
示例输出:
得到路由配置
[root@localhost ~]# ip route
示例输出:
default via 192.168.1.1 dev eno16777736 proto static metric 100
192.168.1.0/24 dev eno16777736 proto kernel scope link src 192.168.1.51 metric 100
分析主机/网站路径
[root@localhost ~]# tracepath unixmen.com
输出像traceroute,但是更加完整。
nmcli 工具
nmcli 是一个非常丰富和灵活的命令行工具。nmcli使用的情况有:
- 设备 – 正在使用的网络接口
- 连接 – 一组配置设置,对于一个单一的设备可以有多个连接,可以在连接之间切换。
找出有多少连接服务于多少设备
[root@localhost ~]# nmcli connection show
得到特定连接的详情
[root@localhost ~]# nmcli connection show eno1
示例输出:
得到网络设备状态
[root@localhost ~]# nmcli device status
- 来自四川成都的 Chrome 45.0|GNU/Linux 用户 2015-09-18 10:15
- 现在 GNU 包的很多软件都同时支持短参数和长参数格式,甚至部分参数只有长的没有短的。长参数格式有一个好处是,具有一定的自解释功能,方便用户了解命令具体执行什么操作。而且像 nmcli 这些较新的命令,也支持参数缩写。比如 nmcli connection 可以缩写为 nmcli co。
- linux [Chrome 45.0|Mac 10.10] 2015-09-18 09:27
- 我是觉得,这么冗长的命令和参数,其实对于英语国家来说,毫无感觉,而对于非英语国家,总是不太友好。
- 来自四川成都的 Chrome 45.0|GNU/Linux 用户 2015-09-17 22:38
- 没觉得,nmcli 可以一站式完成几乎所有网络配置。而 firewall-cmd 也很方便。不是所有人都精通 iptables。
- 来自湖北武汉的 Firefox 40.0|Fedora 用户 2015-09-17 21:54
- 老实说我觉得nmcli和firewall-cmd都是灾难。
- 来自四川成都的 Chrome 45.0|GNU/Linux 用户 2015-09-17 13:19
- # 看 IP
nmcli dev show eno????
# 设 DNS
nmcli connection modify "static" ipv4.dns "1.2.3.4, 5.6.7.8"