NetworkManager 基础命令与网络配置指南(参数详解)
目录
基础命令
操作 | 命令 | 说明 |
---|---|---|
查看网络设备状态 | nmcli device status | 列出所有网络接口及状态(connected, disconnected, unavailable) |
查看连接配置 | nmcli connection show | 列出所有连接配置文件及详情 |
激活连接 | nmcli connection up <连接名> | 激活指定连接,例如 nmcli connection up eth0 |
禁用连接 | nmcli connection down <连接名> | 停用指定连接 |
创建新以太网连接 | nmcli connection add type ethernet con-name <名字> ifname <接口> | 创建新以太网连接,type 为连接类型,con-name 为连接名称,ifname 为网络接口名 |
删除连接 | nmcli connection delete <连接名> | 删除指定连接 |
列出 Wi-Fi 热点 | nmcli device wifi list | 列出可用的 Wi-Fi 网络 |
连接 Wi-Fi | nmcli device wifi connect "SSID名称" password "密码" ifname <接口> | 连接指定 Wi-Fi,SSID名称 为热点名称,password为密码,ifname 为无线网卡接口 |
重启 NetworkManager 服务 | systemctl restart NetworkManager | 重启 NetworkManager 服务,使配置生效 |
网络配置示例
1. 静态 IP 配置
nmcli connection add type ethernet con-name eth0-static ifname eth0 ipv4.method manual ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns "8.8.8.8 8.8.4.4" autoconnect yes
nmcli connection up eth0-static
参数说明:
-
type ethernet:指定连接类型为以太网
-
con-name eth0-static:连接名称
-
ifname eth0:指定使用的网卡接口
-
ipv4.method manual:使用手动分配 IP
-
ipv4.addresses 192.168.1.100/24:IP 地址及子网掩码
-
ipv4.gateway 192.168.1.1:网关地址
-
ipv4.dns "8.8.8.8 8.8.4.4":DNS 服务器
-
autoconnect yes:开机自动连接
2. DHCP 配置
nmcli connection modify eth0 ipv4.method auto
nmcli connection up eth0
参数说明:
-
ipv4.method auto:使用 DHCP 自动获取 IP
3. Wi-Fi 配置
nmcli device wifi connect "SSID名称" password "密码" ifname wlan0
参数说明:
-
SSID名称:Wi-Fi 热点名
-
password:Wi-Fi 密码
-
ifname wlan0:无线接口名
服务管理
-
启动服务: systemctl start NetworkManager
-
停止服务: systemctl stop NetworkManager
-
查看状态: systemctl status NetworkManager 查看 NetworkManager 服务运行状态
-
开机自启: systemctl enable NetworkManager
故障排查
- 接口未激活:
nmcli device status
nmcli connection up eth0
- IP 异常或获取失败:
nmcli connection show eth0
nmcli connection modify eth0 ipv4.method auto
nmcli connection up eth0
- DNS 问题:
nmcli connection modify eth0 ipv4.dns "8.8.8.8 8.8.4.4"
nmcli connection up eth0
-
Wi-Fi 连接不上:
- 检查无线设备: lspci | grep -i network
- 查看 NetworkManager 日志: journalctl -u NetworkManager -f