使用 ip route del 命令删除静态路由需严格匹配添加时的参数(如目标网络、via 网关、dev 接口),默认路由须指定 via;删除前用 ip route show 或 ip route get 确认;持久化路由还需修改对应配置文件。

直接用 ip route del 命令即可删除指定的静态路由条目,关键是要和添加时的写法严格匹配(尤其是目标网络、下一跳、接口等字段),否则可能删不掉或误删其他条目。
按目标网络+网关精确删除
这是最常用也最稳妥的方式。例如你曾执行过:
ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0
那么删除时需完整复现除 add 外的所有参数:
ip route del 192.168.2.0/24 via 192.168.1.1 dev eth0
注意:如果添加时没写 dev,删除时也不应加;反之若添加时指定了 dev,删除时必须带上,否则命令会失败。
删除默认路由
默认路由的目标是 default 或 0.0.0.0/0,删除时需明确指定网关:
ip route del default via 192.168.1.254- 或等价写法:
ip route del 0.0.0.0/0 via 192.168.1.254
不建议只写 ip route del default,因为系统可能有多个默认路由(比如多网卡场景),不带 via 容易误删或报错。
快速确认再删除,避免误操作
删除前先查看当前路由表,确认条目是否存在、格式是否一致:
ip route show | grep "192.168.2.0"-
ip route get 192.168.2.100(验证该网段实际走哪条路由)
如果发现有多条相同目标但不同网关的路由,ip route del 默认只删第一条匹配项;如需全部清除,可用 ip route flush 配合条件,例如:
-
ip route flush to 192.168.2.0/24(清空所有匹配该目标网络的路由)
永久配置的路由要同步清理配置文件
临时路由重启即失效,但如果你在 /etc/sysconfig/network-scripts/route-eth0(CentOS/RHEL)或 /etc/network/interfaces(Debian/Ubuntu)里写了持久化路由,仅执行 ip route del 不会影响下次启动——必须手动编辑对应文件,删掉那行路由定义,否则重启后又会出现。



















