组网第35课:静态路由——下一跳、出接口、默认路由、浮动静态与黑洞路由
会写静态路由只是入门,会用黑洞路由才算会玩
文章目录
一、开场:一条静态路由,把回包“送进了死胡同”
那次给一个小分支调网络,去程通了,回程却怎么都回不来。我 traceroute 一看,包到了分支路由器,回来的时候被一条静态路由指向了一个根本没人的方向,一头扎进去就没影了。
写这条路由的同事还挺委屈:“我就写了条静态路由,命令没报错啊?”
问题就在这——静态路由是个“老实人”,你怎么写它就怎么走,它不会自己判断对错,也不会告诉你下一跳是不是个死胡同。 你给它指个悬崖,它也照走。
很多人觉得静态路由简单,一条命令的事。但真正用起来,下一跳写地址还是写接口、默认路由怎么发、怎么做一条“平时不露面、断了才顶替”的浮动备份、以及那条听起来很玄的“黑洞路由”,里面全是门道。
这一课把静态路由一次讲透,从“会写”练到“会用”。
二、静态路由:你手动告诉设备“去哪、发给谁”
1. 类比:给新司机手写一张路线条
- 新来的司机不认识路,你递张纸条:“去 A 仓库,就把货交给门口的老王”;
- 司机不操心别的,照纸条走;
- 静态路由就是你写给设备的“路线条”:去某个网段,就把包发给指定的下一跳。
2. 静态路由怎么写

<R1> system-view
[R1] ip route-static 192.168.10.0 24 10.0.0.2
- 拆开看:
ip route-static+ 目的网段 + 掩码 + 下一跳; - 这条命令的意思是:去
192.168.10.0/24,就发给10.0.0.2(R2); - 掩码可以写长度(24),也可以写点分(255.255.255.0)。
3. 下一跳,还是出接口?
- 类比:指路时,说“交给门口老王”(下一跳),和说“走东边那条路”(出接口),都能到,但靠谱程度不同;
- 写下一跳(IP):最常用,设备知道“交给谁”,还能解析出该从哪个口出;
- 写出接口:在点到点链路上可以,但在以太网这类“多路访问”的口上,设备还得靠 ARP 去解析,容易出问题;
- 经验:除非很清楚,否则一律写下一跳地址,稳。
静态路由也能做负载分担
同一个目的,写两条下一跳不同、优先级相同的静态路由,设备会把它们当成等价路由,流量在两条路上分担:
[R1] ip route-static 192.168.10.0 24 10.0.0.2
[R1] ip route-static 192.168.10.0 24 10.0.2.2
- 两条优先级都是 60,形成等价双路径;
- 一条断了另一条继续,带宽也能叠加;
- 这种“静态等价”在小网络里很常见,比上动态协议简单。
但对端设备也得有回来的路由,否则单方向通,照样白搭。
三、默认路由:那条“兜底”的路由
1. 类比:大门口的“其他方向”指示牌
- 一个岔路口,牌子写着“去 A 楼往左、去 B 楼往右,其他方向直走”;
- 这个“其他方向直走”,就是默认路由;
- 设备查遍了表都没匹配上,就按默认路由走。
2. 默认路由怎么写

[R1] ip route-static 0.0.0.0 0 172.16.0.1
0.0.0.0/0表示“任意地址”,掩码最短、谁都能匹配;- 所以它是最后兜底,只有别的路由都不匹配才走它;
- 内网设备的默认路由一般指向出口(防火墙/路由器),让它带大家上网。
四、浮动静态:一条“平时不露面”的备胎
1. 类比:车上的备胎
- 正常开车用四个主胎,备胎放后备箱,主胎没坏它不露面;
- 一旦主胎爆了,备胎才顶上;
- 浮动静态就是这样:主路由在的时候,它藏在后面;主路由一失效,它自动顶替。
2. 怎么做:把备份路由的优先级“设大”

# 主路由:默认优先级 60
[R1] ip route-static 192.168.10.0 24 10.0.0.2
# 备份路由:优先级设成 80,比主路由大,平时不进表
[R1] ip route-static 192.168.10.0 24 10.0.1.2 preference 80
- 静态路由默认优先级 60;
- 把备份路由的优先级设成 80(比 60 大),主路由在时,备份因为不够优,不进路由表;
- 主路由一断,备份立刻“浮上来”进表,接替转发;
- 这就是“浮动”两个字的来历。
3. 优先级为什么不建议写 1?
- 静态默认是 60,如果你把备份设成 1,它比主路由(60)还优,结果“备份”反而抢了主路由,主次颠倒;
- 备份的正确思路是“比主路由更不优”,即数值要更大,而不是更小;
- 所以做浮动,备份的优先级一定要比主路由大(比如 70、80),别随手写个 1。
让浮动切换更快:静态路由配 BFD
靠设备自己发现主路由断了,可能要等一段时间(接口没及时 Down、下一跳还“活着”)。要求快速切换的场景,可以让静态路由和 BFD 联动:
- BFD 像一个“毫秒级心跳”,实时探测下一跳还在不在;
- 一旦检测到故障,立刻通知静态路由撤销,让备份瞬间顶上;
- 专线、营业网点这类对中断敏感的场景,常用它把切换时间压到秒级以内。
注意 BFD 要本端和对端都支持、一起配置,具体命令随设备版本而定,这里先理解原理,配置时以设备手册为准。
五、黑洞路由:把匹配的包“直接丢进黑洞”
1. 类比:邮筒上写“查无此地址,直接处理”
- 一个邮件,地址查不到、又不能让它在站点之间来回弹;
- 就在某个环节写“这种地址,直接收下、不再转发”;
- 黑洞路由就是:匹配这条路由的包,设备直接丢弃,不发给任何人。
2. 黑洞路由怎么写
[R1] ip route-static 192.168.0.0 16 NULL0
- 出接口写成
NULL0,这是个“虚拟的空接口”,包进去就被丢; - 这条路由的意思:去
192.168.0.0/16的包,直接丢; - 它看起来“浪费”,其实有两个很实用的用途。
3. 黑洞路由的两个用途
- 防止路由环路:当你汇总了一段大网段,但其中有些小网段实际并不存在,回包可能在设备之间反复弹;这时把汇总网段指向 NULL0,不存在的地址直接丢,不会绕圈;
- 配合汇总“兜底”:发布一条汇总路由的同时,本地配一条指向 NULL0 的黑洞,保证未使用的地址被干净丢弃,而不是被默认路由带得乱跑;
- 这就是为什么说“会用黑洞路由,才算真的会玩静态”。
讲个黑洞排障的小事
有个网点,汇总网段是 192.168.0.0/16,核心配了指向 NULL0 的黑洞。后来新增了 192.168.30.0/24,路由还没加,结果这个网段的人全上不了网——包一查,命中了 /16 黑洞,被直接丢了。
同事一开始以为是链路问题,折腾半天。我让他查具体地址,命中的是 NULL0,立刻定位:不是没路,是被黑洞“提前拦下”了。 补上 /24 的精确路由,最长匹配优先,立刻恢复。
这个案例说明:黑洞是“宁可错杀”,新增网段时一定先加精确路由,否则会被自己的汇总黑洞挡在门外。
静态路由的选择与兜底
六、验证与排查(华为 VRP)
配置验证无误后,记得保存,否则设备一重启就没了:
<R1> save
很多人命令写完、验证通过却忘了保存,结果第二天设备重启,路由全丢,又得重来。这是个低级但高频的坑。
1. 看静态路由有没有进表
<R1> display ip routing-table protocol static
Static Routing Table Summary:
192.168.10.0/24 [Preference 60] NextHop 10.0.0.2
关键看 Preference 和 NextHop。备份路由在主路由生效时不会出现在这里。
2. 看某地址走哪条
<R1> display ip routing-table 192.168.10.30
3. 异常与排查
| 现象 | 命令 | 看到什么 | 判断 | 动作 |
|---|---|---|---|---|
| 静态路由不生效 | 看路由表 | 没有该条目 | 下一跳不可达 | 查下一跳、接口 |
| 主备颠倒 | 比优先级 | 备份更优 | 备份优先级设小了 | 改大备份优先级 |
| 回包丢失 | traceroute | 断在某设备 | 指错方向/黑洞 | 核对路由方向 |
| 地址不通 | 看黑洞 | 命中 NULL0 | 被黑洞丢弃 | 核对汇总范围 |
| 主断了没切 | 看备份 | 备份没进表 | 备份配置有误 | 查下一跳和优先级 |
思科对照
| 动作 | 华为 | 思科 |
|---|---|---|
| 静态路由 | ip route-static 网 掩码 下一跳 | ip route 网 掩码 下一跳 |
| 默认路由 | ip route-static 0.0.0.0 0 下一跳 | ip route 0.0.0.0 0.0.0.0 下一跳 |
| 浮动备份 | ... preference 80 | ... 80(末尾跟 AD) |
| 黑洞 | 出接口 NULL0 | 出接口 Null0 |
| 看路由 | display ip routing-table | show ip route |
静态路由的优缺点,什么时候用
- 优点:不占带宽、不发协议报文、设备开销小、配置简单、行为完全可控;
- 缺点:不能自动适应变化,拓扑一改就得手工改,网络一大就维护不过来;
- 适用:拓扑简单、相对固定的小网络,或做出口默认、特定目的的指向和备份;
- 网络规模上去、链路经常变动,就该上动态路由(OSPF 等),这是后面的内容。
七、🔧 运维视角 & 📐 设计视角
🔧 运维视角:
- 静态路由不生效,先查下一跳是不是可达,设备不会替你判断对错;
- 做备份,备份优先级要比主路由大,否则备胎反而抢正位;
- 莫名丢包,记得查有没有命中 NULL0 黑洞路由。
📐 设计视角:
- 小网络、拓扑稳定,用静态 + 默认最省事,开销小、好维护;
- 出口或关键链路用浮动静态做低成本备份,配合 BFD 能更快检测;
- 发布汇总路由时,同步配黑洞路由,避免未使用地址引发环路。
八、小结与命令速查表
- 静态路由:手动指定“去哪个网、发给谁”,下一跳优先写 IP;
- 默认路由:0.0.0.0/0,最后兜底;
- 浮动静态:备份优先级设大,主路由断了才顶替;
- 黑洞路由:指向 NULL0,匹配即丢,防环路、配汇总。
本篇命令速查表:
| 目的 | 华为命令 | 思科对照 |
|---|---|---|
| 静态路由 | ip route-static 192.168.10.0 24 10.0.0.2 | ip route 192.168.10.0 255.255.255.0 10.0.0.2 |
| 默认路由 | ip route-static 0.0.0.0 0 172.16.0.1 | ip route 0.0.0.0 0.0.0.0 172.16.0.1 |
| 浮动备份 | ip route-static 网 掩码 下一跳 preference 80 | ip route 网 掩码 下一跳 80 |
| 黑洞路由 | ip route-static 192.168.0.0 16 NULL0 | ip route 192.168.0.0 255.255.0.0 Null0 |
| 看静态 | display ip routing-table protocol static | show ip route static |
九、思考题 & 评论区接招
💬 互动题(评论区接招):
浮动静态的优先级设多少?为什么不建议写 1?
假设主链路是默认优先级 60 的静态路由,现在要加一条备份:
1)备份路由的优先级应该比 60 大,还是小?为什么?
2)如果不小心写成 1,会发生什么?
3)再说说,黑洞路由为什么通常和“汇总路由”一起出现?把你的答案写在评论区,我会逐条看,帮你把静态路由的“主次、备份、兜底”彻底理顺。
系列导航:
- 上一课:第 34 课《路由原理与路由表》
- 下一课:第 36 课《DHCP 地址分配》
- 专栏主页:[网络工程师进阶:企业组网实战——从交换机配置到园区网交付])
我是你们的老网工。静态路由这一课,把“会写”和“会用”的差距补上了。下一课我们聊一个每天都在用、出问题却最容易被忽略的东西——DHCP。设备连上网络,地址是谁发的、地址池怎么规划、跨 VLAN 怎么靠中继发地址、租期和 Option 43 又是怎么回事,还有私接 DHCP 怎么防。下一课《DHCP 地址分配》,我们把“自动发地址”这一关彻底讲明白。下一课见。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)