打开终端,输入 sudo nmcli con mod 你的连接名 ipv4.addresses 192.168.1.100/24 设IP,接着 sudo nmcli con mod 你的连接名 ipv4.gateway 192.168.1.1 设网关,然后 sudo nmcli con mod 你的连接名 ipv4.dns 8.8.8.8 填DNS,最后 sudo nmcli con up 你的连接名 生效。记得把连接名换成你的网卡名比如ens192,IP参数按自己网络改哈!
在 Rocky Linux 中,如何使用 nmcli 设置静态 IP 地址?
-
查看可用网络接口:
nmcli device status -
创建新连接配置(以ens192为例):
nmcli con add con-name static-ip ifname ens192 type ethernet ip4 192.168.1.100/24 gw4 192.168.1.1 -
配置DNS服务器:
nmcli con mod static-ip ipv4.dns "8.8.8.8,8.8.4.4" -
激活配置并设置自动连接:
nmcli con up static-ip && nmcli con mod static-ip autoconnect yes -
验证配置:
nmcli con show static-ip | grep -E 'ipv4.addresses|ipv4.gateway|ipv4.dns'
注意:替换IP地址、子网前缀和网关为实际网络参数,操作需root权限。
更多回答
在Rocky Linux中使用nmcli配置静态IP地址的步骤如下:
-
查看当前网络连接
nmcli con show
记录目标连接的名称(如eth0、ens192)。 -
修改网络配置
sudo nmcli con mod <连接名称> ipv4.addresses <IP/掩码> sudo nmcli con mod <连接名称> ipv4.gateway <网关> sudo nmcli con mod <连接名称> ipv4.dns <DNS服务器> sudo nmcli con mod <连接名称> ipv4.method manual示例:
sudo nmcli con mod eth0 ipv4.addresses 192.168.1.10/24 -
激活配置
sudo nmcli con down <连接名称> && sudo nmcli con up <连接名称> -
验证配置
ip addr show <网卡名称>检查IP是否生效
ping 8.8.8.8测试外网连通性
nslookup google.com验证DNS解析
关键注意点:
- 若存在NetworkManager服务未启动,需先执行
sudo systemctl enable --now NetworkManager - 配置前建议备份连接配置:
sudo cp /etc/sysconfig/network-scripts/ifcfg-<连接名称> ~/ - 多网卡环境需确认物理接口与连接名称对应,避免误操作
- 企业级部署建议通过Ansible等工具实现批量配置
- 确认网卡信息:执行
nmcli con show获取当前连接名称(如 eth0),或通过ip a查看接口名称。 - 修改静态 IP(推荐方式):
nmcli con mod <CONNECTION_NAME> ipv4.addresses <IP/子网掩码>(如 192.168.1.100/24) nmcli con mod <CONNECTION_NAME> ipv4.gateway <网关IP> nmcli con mod <CONNECTION_NAME> ipv4.dns <DNS_IP>(多个DNS用逗号分隔) nmcli con mod <CONNECTION_NAME> ipv4.method manual nmcli con down <CONNECTION_NAME> && nmcli con up <CONNECTION_NAME> - 或创建新连接配置(适用于多IP场景):
nmcli con add type ethernet con-name <NEW_NAME> ifname <INTERFACE_NAME> ipv4.address <IP/掩码> ipv4.gateway <网关> ipv4.dns <DNS_IP> ipv4.method manual nmcli con up <NEW_NAME> - 验证:执行
ip addr show <INTERFACE_NAME>检查IP,ping 网关测试连通性,nslookup example.com验证DNS。
有没有考虑过使用nmtui工具,它提供了更直观的文本界面来配置网络设置呢?
使用nmcli设置静态IP:nmcli con mod 连接名 ipv4.addresses IP/掩码 ipv4.gateway 网关 ipv4.dns DNS ipv4.method manual,然后nmcli con up 连接名激活配置。
在Rocky Linux中使用nmcli设置静态IP的步骤如下:
- 执行
nmcli connection modify <连接名> ipv4.addresses <IP/掩码>设置IP; - 使用
ipv4.gateway <网关>指定网关; - 通过
ipv4.dns <DNS>配置DNS; - 最后用
ipv4.method manual和connection.autoconnect yes激活配置。
延伸知识点【DNS配置细节】:
通过nmcli设置的DNS会直接写入NetworkManager的配置文件(/etc/NetworkManager/system-connections/),且优先级高于系统默认的resolv.conf。可以同时指定多个DNS(如8.8.8.8,1.1.1.1),并支持ipv4.ignore-auto-dns yes参数禁止从DHCP获取DNS。建议使用nmcli connection reload重载配置,并使用resolvectl status验证最终生效的DNS服务器。