路由管理是网络工程师日常工作中的基础环节,但许多用户可能只熟悉临时添加路由的方法,忽略了重启后的持久化配置。本文全面梳理路由查看与添加的常用技巧,重点解析不同场景下的永久路由配置方案,方便随时查阅与操作。
一、查看系统路由表
要了解当前系统的路由走向,可在命令行终端输入以下任一指令,实时显示生效的路由信息:
netstat -r
route
这两个命令输出的路由信息基本一致,其中 netstat -r 的排版更为清晰易读,而 route 命令则更加简洁直接。日常运维中可根据个人偏好选择使用。
二、添加路由的方法与区别
添加路由主要有临时生效与永久生效两种方式,其作用范围也可分为全局生效和针对特定网络接口。下面将详细介绍各种方法及其适用场景。
(1)命令行临时添加(重启失效)
route add -net 192.168.0.0/16 gw 10.1.1.254
这条命令能够立即生效,但仅在当前系统运行状态下有效,重启后路由将自动丢失。如需实现开机自动加载,可将该命令加入 /etc/rc.local 启动文件,但需注意确保该文件拥有可执行权限,因为部分现代Linux发行版默认不启用 rc.local 机制。
(2)全局默认网关配置
编辑系统全局网络配置文件 /etc/sysconfig/network,加入以下内容:
GATEWAY=192.168.0.1
这是配置Linux默认网关最常用的方法之一。设置完成后,重启网络服务或整个系统后依然有效。需要注意的是,此处配置的网关对系统中所有网络接口生效,除非为某个网卡单独指定了不同的网关。
(3)单网卡默认网关设置
如需为特定网卡单独设置网关,可修改其对应的网络配置文件,例如编辑 /etc/sysconfig/network-scripts/ifcfg-eth0 并添加:
GATEWAY=192.168.0.1
这种方法实现了路由配置的精细化控制。当服务器配备多块网卡且需要指向不同网关时,针对每个接口单独设置是最佳的解决方案。
(4)单网卡多路由静态配置
对于需要在同一网卡上配置多条静态路由的情况,可以在 /etc/sysconfig/network-scripts/ 目录下创建对应的路由配置文件,例如 route-eth0 或 eth0.route,并按照以下格式编写:
ADDRESS0=192.168.0.0
NETMASK0=255.255.0.0
GATEWAY0=10.1.1.254
ADDRESS1=172.16.0.0
NETMASK1=255.240.0.0
GATEWAY1=10.1.1.254
这种配置方式确保了多条静态路由在系统重启后依然保留。虽然临时测试时可以使用 ip route add 命令,但长久生效仍需依赖此类配置文件。
路由配置生效方式
根据修改的配置文件不同,重启网络服务的方式也有所差异:
- 若修改了全局配置文件
/etc/sysconfig/network,需重启整个网络服务:systemctl restart network或service network restart - 若仅修改单个网卡的配置文件或路由文件,则只需重启该网卡:
ifdown eth0 && ifup eth0或nmcli connection down eth0 && nmcli connection up eth0
重启单个网络接口的优势在于不影响服务器上其他网卡的现有连接,对于生产环境的稳定性至关重要,建议优先采用此种方式。
