Linux系统中配置静态路由的完整指南
在Linux网络管理中,静态路由是一项基础而重要的技能。本文将详细介绍三种主流配置方法,并通过实际案例演示如何永久保存路由配置。
一、为什么要配置静态路由?
静态路由通常用于以下场景:
- 连接多个子网或VLAN
- 访问特定网络而不通过默认网关
- 建立点到点的专用网络连接
- 临时测试网络连通性
二、临时静态路由配置方法
方法1:使用route命令
# 添加路由 sudo route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.1 # 删除路由 sudo route del -net 192.168.2.0 netmask 255.255.255.0
方法2:使用ip命令(推荐)
# 添加路由 sudo ip route add 192.168.2.0/24 via 192.168.1.1 # 删除路由 sudo ip route del 192.168.2.0/24
注意:上述方法在系统重启后会失效
三、永久静态路由配置
1. Debian/Ubuntu系统
编辑/etc/network/interfaces文件:
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
up route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.2
2. RHEL/CentOS系统
创建/etc/sysconfig/network-scripts/route-eth0文件:
192.168.2.0/24 via 192.168.1.1 10.0.0.0/8 via 192.168.1.2
3. 通用方法(systemd-networkd)
创建/etc/systemd/network/10-static-route.network文件:
[Route] Destination=192.168.2.0/24 Gateway=192.168.1.1
四、实际配置案例
场景:服务器需要同时访问互联网(通过eth0)和内部研发网络(通过eth1)
- 确认当前路由表:
ip route show - 添加研发网络路由:
sudo ip route add 172.16.0.0/16 via 10.0.0.1 dev eth1 - 永久保存配置(以CentOS为例):
echo "172.16.0.0/16 via 10.0.0.1 dev eth1" >> /etc/sysconfig/network-scripts/route-eth1
- 验证路由:
ping 172.16.1.1
五、常见问题排查
- 路由不生效:检查网关是否可达,使用
ping 网关IP测试 - 网络接口未启用:使用
ip link show检查接口状态 - 配置未保存:确认配置文件路径正确,重启网络服务
systemctl restart network - 路由冲突:使用
ip route get 目标IP检查实际路由路径
通过本文介绍的多种方法,您应该已经掌握了Linux系统中配置静态路由的技能。建议在生产环境中优先使用ip命令和永久配置方法,并做好配置文档记录。
