在Rocky Linux中配置静态路由可通过ip route add
命令临时添加,或编辑/etc/sysconfig/network-scripts/route-<interface>
文件永久生效,使用nmcli
或ip route del
管理删除。
如何在 Rocky Linux 中配置和管理静态路由?
在Rocky Linux中配置静态路由可分为临时配置和永久配置两种方式,具体步骤如下:
-
临时配置(重启失效)
使用ip route
命令直接添加路由:ip route add 目标网络/掩码 via 网关IP dev 网卡名称 # 示例:将192.168.2.0/24流量通过10.0.0.1网关从eth0发出 ip route add 192.168.2.0/24 via 10.0.0.1 dev eth0
-
永久配置
方法一:通过NetworkManager配置nmcli connection modify 连接名称 +ipv4.routes "目标网络/掩码 网关IP" # 示例 nmcli connection modify eth0 +ipv4.routes "192.168.2.0/24 10.0.0.1" systemctl restart NetworkManager
方法二:配置文件方式
创建/编辑对应网卡的route文件(如/etc/sysconfig/network-scripts/route-eth0
):
ADDRESS0=192.168.2.0
NETMASK0=255.255.255.0
GATEWAY0=10.0.0.1
重启网络服务生效:
systemctl restart network
- 验证与维护
- 查看当前路由表:
ip route show
或route -n
- 测试连通性:
ping -I 出站网卡IP 目标IP
- 删除错误路由:
ip route del 目标网络/掩码
- 查看当前路由表:
注意事项
- 确认网关IP与本地接口在同一子网
- 多网卡环境需指定出口设备(dev)
- 配置文件格式错误可能导致网络服务启动失败
- 建议通过控制台操作避免远程连接中断
更多回答
在Rocky Linux中配置静态路由可通过ip route add
命令临时生效,或编辑/etc/sysconfig/network-scripts/route-<接口名>
文件永久生效。
延伸知识点:网络接口配置文件
Rocky Linux使用/etc/sysconfig/network-scripts/
目录下的route-<接口名>
文件定义静态路由。文件格式支持两种写法:
- 目标网络写法: 10.0.2.0/24 via 192.168.1.1 dev enp0s3
- 三行写法:
ADDRESS0=10.0.2.0
NETMASK0=255.255.255.0
GATEWAY0=192.168.1.1
配置后需执行
nmcli connection reload
和nmcli connection up <接口名>
生效。建议使用ip route
命令测试后再写入配置文件,避免网络中断。
在Rocky Linux中配置静态路由可通过以下方法实现:
-
临时路由(重启失效)
使用ip route add
命令,例如:
sudo ip route add 192.168.2.0/24 via 10.0.0.1 dev eth0
-
永久配置
方法一:NetworkManager
通过nmcli
修改连接配置:sudo nmcli connection modify <连接名> +ipv4.routes "192.168.2.0/24 10.0.0.1" sudo nmcli connection up <连接名>
方法二:配置文件
在 /etc/sysconfig/network-scripts/
下创建 route-<接口名>
,内容示例:
192.168.2.0/24 via 10.0.0.1 dev eth0
- 验证
执行ip route show
或route -n
检查路由表。
注意:
- 若需IP转发,需启用
net.ipv4.ip_forward=1
并配置防火墙 - 网关地址需与接口同网段
- Rocky Linux 9+ 建议优先使用NetworkManager
在Rocky Linux配静态路由分临时和永久两种。临时用命令:ip route add 目标网段/掩码 via 网关IP
,比如ip route add 192.168.2.0/24 via 192.168.1.1
,但重启就没了。要永久生效的话,进/etc/sysconfig/network-scripts/,找到对应网卡(比如ifcfg-eth0)的同名route文件(没有就新建),里面写ADDRESS0=目标网段
,NETMASK0=子网掩码
,GATEWAY0=网关IP
,保存后重启网络服务systemctl restart network
就行啦。用ip route
或route -n
随时看当前路由表~
在Rocky Linux中配置静态路由可通过以下两种方式实现:
-
临时静态路由(重启失效)
ip route add 目标网络/掩码 via 网关IP dev 接口名 # 示例:ip route add 192.168.2.0/24 via 10.0.0.1 dev eth0
验证:
ip route show
或route -n
-
永久静态路由
-
方法1:配置文件
创建/etc/sysconfig/network-scripts/route-接口名
(如route-eth0):192.168.1.0/24 via 10.0.0.1 dev eth0 172.16.0.0/16 via 10.0.0.2
重启网络:
nmcli connection reload && nmcli connection down/up 连接名
-
方法2:nmcli工具(推荐)
nmcli connection modify 连接名 +ipv4.routes "目标网络/掩码 网关" # 示例:nmcli connection modify eth0 +ipv4.routes "192.168.2.0/24 10.0.0.1" nmcli connection down/up eth0
-
DevOps扩展建议:
- 使用Ansible自动化配置:通过
lineinfile
模块修改路由文件,或使用nmcli
模块 - 通过systemd-networkd配置(适用于无GUI服务器)
- 在容器/K8s环境中优先通过CNI插件管理路由
验证:ip route get 目标IP
或 traceroute 目标IP