做网络运维,经常遇到这样的场景:新上了一台测试服务器,想让它走特定出口访问外网;或者某条线路临时故障,需要快速把流量切到备用链路;又或者在客户现场调试时,不想动永久路由,只想先验证下连通性——这时候,临时加一条路由最省事。
为什么用临时配置?
永久写进配置文件(比如 /etc/sysconfig/network-scripts/route-eth0 或 /etc/network/interfaces)要重启网络或重载服务,还可能因格式错误导致断连。而临时路由只存在于内存中,重启就消失,改错也方便,特别适合调试、应急和一次性任务。
Linux 下怎么加?
主流 Linux 发行版都支持 ip route 和老一点的 route 命令。推荐用 ip,更直观:
ip route add 192.168.100.0/24 via 10.1.1.1 dev eth0意思是:去 192.168.100.0/24 网段的所有包,都交给网关 10.1.1.1 转发,出接口是 eth0。如果只是指定下一跳,不绑接口,可以省略 dev eth0。
加完用 ip route show 看一眼,确认已生效;用 ping -I eth0 192.168.100.5 指定源接口测试是否走对路径。
删掉也很简单
临时路由不是钉子户,删起来比加还快:
ip route del 192.168.100.0/24或者直接清空所有非默认路由(慎用,别在生产环境手抖):
ip route flush table main注意:这不会删默认路由(default via ...),但会清掉你手动加的所有非默认项。
Windows 用户别划走
Windows 同样支持临时路由,管理员权限打开 CMD 就行:
route add 192.168.100.0 mask 255.255.255.0 10.1.1.1删掉就换成 route delete,加 -p 参数才是永久(不加就是临时)。顺带一提,Windows 的路由表里如果出现多条相同目标的路由,它按“网络掩码最长匹配”选,这点和 Linux 一致。
几个实用小贴士
• 临时路由优先级高于默认路由,但低于直连路由;
• 如果加了路由后不通,先 ip route get 192.168.100.5 看系统打算怎么走;
• 多网卡机器要注意指定 dev,否则可能从错的口发出去;
• 有些云主机(如阿里云 ECS)限制自定义路由,加了也不生效,得看控制台或工单确认。
临时配置不是权宜之计,而是运维手里一把快刀——快、准、不留痕。用熟了,排查一个跨网段访问问题,三分钟就能定位是不是路由没配对。