Linux系统nmcli命令详解

发布时间:2022-02-02 12:58:45 作者:小新
来源:亿速云 阅读:882
# Linux系统nmcli命令详解

## 一、nmcli简介

`nmcli`(NetworkManager Command Line Interface)是Red Hat开发的NetworkManager命令行管理工具,用于替代传统的`ifconfig`、`route`等网络配置命令。作为Linux网络管理的新标准,它具有以下优势:

1. 统一的网络配置接口
2. 支持动态网络配置(有线/无线/VPN等)
3. 提供Tab补全功能(bash-completion)
4. 完善的帮助文档系统

## 二、基本命令结构

```bash
nmcli [OPTIONS] OBJECT { COMMAND | help }

常用OBJECT类型:

三、核心功能详解

1. 网络状态查看

# 查看NetworkManager状态
nmcli general status

# 显示所有连接概要
nmcli connection show

# 详细显示所有网络设备
nmcli device show

2. 连接管理

创建新连接(以静态IP为例):

nmcli connection add con-name "eth0-static" ifname eth0 type ethernet \
ip4 192.168.1.100/24 gw4 192.168.1.1 \
dns4 8.8.8.8

修改现有连接:

# 修改IP地址
nmcli connection modify "eth0-static" ipv4.addresses "192.168.1.200/24"

# 添加DNS服务器
nmcli connection modify "eth0-static" +ipv4.dns "8.8.4.4"

连接控制:

# 启用连接
nmcli connection up "eth0-static"

# 断开连接
nmcli connection down "eth0-static"

# 删除连接
nmcli connection delete "eth0-static"

3. 设备管理

# 查看设备状态
nmcli device status

# 连接WiFi(需先扫描)
nmcli device wifi connect SSID password PASSWORD

# 显示WiFi热点
nmcli device wifi list

# 重启网络接口
nmcli device reapply eth0

四、高级用法

1. 绑定多网卡(Bonding)

nmcli connection add type bond ifname bond0 mode active-backup
nmcli connection add type bond-slave ifname eth1 master bond0
nmcli connection add type bond-slave ifname eth2 master bond0

2. VLAN配置

nmcli connection add type vlan con-name vlan10 dev eth0 id 10 \
ip4 10.0.10.2/24 gw4 10.0.10.1

3. 连接测速

# 测试网络连通性(类似ping)
nmcli networking connectivity check

# 查看详细连接信息
nmcli -p device show eth0

五、常见问题处理

1. 网络服务未启动

systemctl start NetworkManager
systemctl enable NetworkManager

2. 连接失败排查

# 查看日志
journalctl -u NetworkManager -f

# 详细调试模式
nmcli general logging level DEBUG

3. 恢复默认配置

nmcli connection reload

六、实用技巧

  1. Tab补全:安装bash-completion后支持参数补全
  2. 颜色输出nmcli -c yes 启用彩色输出
  3. 批量操作:支持同时操作多个对象
    
    nmcli connection up id "conn1" "conn2"
    
  4. 导出配置:可导出为ifcfg格式
    
    nmcli connection export "eth0-static" > eth0-static.conf
    

七、总结

nmcli作为现代Linux网络管理的核心工具,相比传统命令具有更强大的功能和更一致的语法结构。通过熟练掌握nmcli,管理员可以: - 快速配置复杂网络环境 - 实现网络配置的版本控制 - 编写自动化运维脚本 - 统一管理不同网络接口类型

建议结合man nmclinmcli help查阅更详细的参数说明,实际环境中可通过--show-secrets参数查看密码等敏感信息(需root权限)。 “`

注:本文档基于NetworkManager 1.40版本,部分参数在不同发行版中可能存在差异。生产环境建议先进行测试验证。

推荐阅读:
  1. chmod命令详解
  2. id命令详解

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux nmcli

上一篇:Linux中怎么对环境变量文件进行备份

下一篇:Linux pyDash怎么使用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》