Nmcli 网络管理命令行工具基础

介绍

在本教程中,我们会在CentOS / RHEL 7中讨论网络管理命令行工具NetworkManager command line tool,也叫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
  2. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  3. inet 127.0.0.1/8 scope host lo
  4. valid_lft forever preferred_lft forever
  5. inet6 ::1/128 scope host
  6. valid_lft forever preferred_lft forever
  7. 2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
  8. link/ether 00:0c:29:67:2f:4c brd ff:ff:ff:ff:ff:ff
  9. inet 192.168.1.51/24 brd 192.168.1.255 scope global eno16777736
  10. valid_lft forever preferred_lft forever
  11. inet6 fe80::20c:29ff:fe67:2f4c/64 scope link
  12. valid_lft forever preferred_lft forever
检索与已连接的接口相关的数据包统计
 
 
  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
  2. 192.168.1.0/24 dev eno16777736 proto kernel scope link src 192.168.1.51 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
  2. eno16777736 ethernet connected eno1
  3. lo loopback unmanaged --
使用“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

你会看见,设置生效了。

完结。

本文来自云栖社区合作伙伴“Linux中国”,原文发布日期:2015-09-17

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值