如何通过 nmcli 在 Rocky Linux 9 中配置路由表?

问题浏览数Icon
45
问题创建时间Icon
2025-03-12 00:49:00
回答 | 共 6 个
作者头像
dreamwei88

是否考虑过使用ip route命令来管理路由表,可能更为直接灵活?

作者头像
jingling00

在Rocky Linux 9用nmcli配路由的话,先开终端,用 nmcli connection show 找到你的网卡连接名称(比如eth0)。然后执行 nmcli connection modify 你的连接名 +ipv4.routes "目标网段/掩码 网关",比如配个192.168.2.0/24走网关10.0.0.1就写 +ipv4.routes "192.168.2.0/24 10.0.0.1"。改完别忘 nmcli connection down 连接名 再 up 生效,最后用 ip route 检查下路由表就行啦!

作者头像
feiyun99

在Rocky Linux 9中通过nmcli配置路由表,需基于NetworkManager管理的连接进行操作。以下是核心步骤:

  1. 查看当前连接
    nmcli connection show
    确定需修改的连接名称(如ens192)。

  2. 添加静态路由

    sudo nmcli connection modify <连接名> +ipv4.routes "<目标网段>/<掩码> <网关>"

    示例:

    sudo nmcli connection modify ens192 +ipv4.routes "192.168.2.0/24 10.0.0.1"
  3. 激活配置

    sudo nmcli connection down <连接名> && sudo nmcli connection up <连接名>
  4. 验证路由
    ip routenmcli connection show <连接名> | grep route

注意

  • 使用+ipv4.routes会追加路由,若覆盖则用ipv4.routes
  • 默认网关通过ipv4.gateway参数单独配置
  • 多网卡场景需指定metric值避免冲突(通过ipv4.route-metric
作者头像
dreamgear99
  1. 查看当前网络连接名称

    nmcli connection show

    记录需要配置路由的接口名称(如eth0)

  2. 添加永久静态路由

    nmcli con mod [连接名称] ipv4.routes "目标网络/掩码 网关"

    示例:

    nmcli con mod eth0 ipv4.routes "192.168.2.0/24 192.168.1.1"

    多个路由用逗号分隔

  3. 重启网络连接生效

    nmcli con down [连接名称] && nmcli con up [连接名称]
  4. 验证路由配置

    ip route 或 nmcli con show [连接名称] | grep routes
  5. (可选)临时添加路由

    nmcli con mod [连接名称] +ipv4.routes "目标网络/掩码 网关"

    此方法不会覆盖现有路由

注:若需配置默认网关,使用 ipv4.gateway 参数代替路由配置。所有配置会自动持久化到 /etc/NetworkManager/system-connections/ 目录对应文件中。

作者头像
hongyan77

通过nmcli在Rocky Linux 9中配置路由表,可先使用nmcli connection modify <连接名> +ipv4.routes "目标网段/掩码 下一跳"添加路由,再通过nmcli connection up <连接名>激活。

延伸知识点:路由持久化原理 NetworkManager通过将路由规则写入/etc/sysconfig/network-scripts/route-<连接名>文件实现持久化。该文件采用CIDR格式(如192.168.2.0/24 via 10.0.0.1),与临时route add命令不同,重启后仍会通过接口的配置文件重新加载路由表。在Rocky Linux 9中若使用keyfile格式(默认),路由信息会存储在/etc/NetworkManager/system-connections/目录的对应连接配置文件中,而非传统ifcfg文件体系。

作者头像
luckyli520

在Rocky Linux 9中通过nmcli配置路由表的步骤如下:

  1. 查看当前连接

    nmcli connection show

    确认要修改的网络连接名称(如eth0、ens192)。

  2. 添加静态路由

    nmcli connection modify <连接名> +ipv4.routes "<目标网络>/<掩码> <网关>"

    示例:添加目标网络192.168.2.0/24,网关192.168.1.1

    nmcli connection modify eth0 +ipv4.routes "192.168.2.0/24 192.168.1.1"
  3. 应用配置

    nmcli connection up <连接名>
  4. 验证路由表

    ip route  # 或 route -n
  5. 高级配置

    • 指定Metric:添加metric值(如100):
      nmcli connection modify eth0 +ipv4.routes "192.168.3.0/24 192.168.1.2 100"
    • 永久生效:配置会自动写入/etc/sysconfig/network-scripts/route-<连接名>文件。

注意

  • 使用+符号保留原有路由,用=会覆盖现有配置。
  • 若需删除路由,将+替换为-
  • 确保NetworkManager服务已启用:systemctl enable --now NetworkManager