是否考虑过使用ip route命令来管理路由表,可能更为直接灵活?
如何通过 nmcli 在 Rocky Linux 9 中配置路由表?
在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 检查下路由表就行啦!
在Rocky Linux 9中通过nmcli配置路由表,需基于NetworkManager管理的连接进行操作。以下是核心步骤:
-
查看当前连接
nmcli connection show
确定需修改的连接名称(如ens192)。 -
添加静态路由
sudo nmcli connection modify <连接名> +ipv4.routes "<目标网段>/<掩码> <网关>"
示例:
sudo nmcli connection modify ens192 +ipv4.routes "192.168.2.0/24 10.0.0.1"
-
激活配置
sudo nmcli connection down <连接名> && sudo nmcli connection up <连接名>
-
验证路由
ip route
或nmcli connection show <连接名> | grep route
注意:
- 使用
+ipv4.routes
会追加路由,若覆盖则用ipv4.routes
- 默认网关通过
ipv4.gateway
参数单独配置 - 多网卡场景需指定metric值避免冲突(通过
ipv4.route-metric
)
-
查看当前网络连接名称
nmcli connection show
记录需要配置路由的接口名称(如eth0)
-
添加永久静态路由
nmcli con mod [连接名称] ipv4.routes "目标网络/掩码 网关"
示例:
nmcli con mod eth0 ipv4.routes "192.168.2.0/24 192.168.1.1"
多个路由用逗号分隔
-
重启网络连接生效
nmcli con down [连接名称] && nmcli con up [连接名称]
-
验证路由配置
ip route 或 nmcli con show [连接名称] | grep routes
-
(可选)临时添加路由
nmcli con mod [连接名称] +ipv4.routes "目标网络/掩码 网关"
此方法不会覆盖现有路由
注:若需配置默认网关,使用 ipv4.gateway
参数代替路由配置。所有配置会自动持久化到 /etc/NetworkManager/system-connections/ 目录对应文件中。
通过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文件体系。
在Rocky Linux 9中通过nmcli
配置路由表的步骤如下:
-
查看当前连接:
nmcli connection show
确认要修改的网络连接名称(如eth0、ens192)。
-
添加静态路由:
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"
-
应用配置:
nmcli connection up <连接名>
-
验证路由表:
ip route # 或 route -n
-
高级配置:
- 指定Metric:添加
metric
值(如100):nmcli connection modify eth0 +ipv4.routes "192.168.3.0/24 192.168.1.2 100"
- 永久生效:配置会自动写入
/etc/sysconfig/network-scripts/route-<连接名>
文件。
- 指定Metric:添加
注意:
- 使用
+
符号保留原有路由,用=
会覆盖现有配置。 - 若需删除路由,将
+
替换为-
。 - 确保NetworkManager服务已启用:
systemctl enable --now NetworkManager