在 Rocky Linux 中,如何使用 nmcli 设置静态 IP 地址?

问题浏览数Icon
26
问题创建时间Icon
2025-05-18 19:33:00
作者头像
fogchun66
  1. 确认网卡信息:执行 nmcli con show 获取当前连接名称(如 eth0),或通过 ip a 查看接口名称。
  2. 修改静态 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>
  3. 或创建新连接配置(适用于多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>
  4. 验证:执行 ip addr show <INTERFACE_NAME> 检查IP,ping 网关 测试连通性,nslookup example.com 验证DNS。

更多回答

作者头像
凌霄1126
  1. 查看可用网络接口: nmcli device status

  2. 创建新连接配置(以ens192为例): nmcli con add con-name static-ip ifname ens192 type ethernet ip4 192.168.1.100/24 gw4 192.168.1.1

  3. 配置DNS服务器: nmcli con mod static-ip ipv4.dns "8.8.8.8,8.8.4.4"

  4. 激活配置并设置自动连接: nmcli con up static-ip && nmcli con mod static-ip autoconnect yes

  5. 验证配置: nmcli con show static-ip | grep -E 'ipv4.addresses|ipv4.gateway|ipv4.dns'

注意:替换IP地址、子网前缀和网关为实际网络参数,操作需root权限。

作者头像
yanxi66

打开终端,输入 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参数按自己网络改哈!

作者头像
dongfang77

在Rocky Linux中使用nmcli配置静态IP地址的步骤如下:

  1. 查看当前网络连接
    nmcli con show
    记录目标连接的名称(如eth0、ens192)。

  2. 修改网络配置

    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

  3. 激活配置
    sudo nmcli con down <连接名称> && sudo nmcli con up <连接名称>

  4. 验证配置
    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等工具实现批量配置
作者头像
smalljon

有没有考虑过使用nmtui工具,它提供了更直观的文本界面来配置网络设置呢?

作者头像
linxiaoliang7

在Rocky Linux中使用nmcli设置静态IP的步骤如下:

  1. 执行nmcli connection modify <连接名> ipv4.addresses <IP/掩码>设置IP;
  2. 使用ipv4.gateway <网关>指定网关;
  3. 通过ipv4.dns <DNS>配置DNS;
  4. 最后用ipv4.method manualconnection.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服务器。