第28篇:直连路由与静态路由对比

关键词:直连路由、静态路由、ip route-static、下一跳、出接口、默认路由


一、引言

直连路由和静态路由是最基础的两种路由类型。直连路由在接口配置 IP 后自动生成,不需要任何手动干预。静态路由需要管理员手动指定转发路径,是小型网络最常用的路由方式。本文将系统讲解这两种路由的配置方法和应用场景。

二、核心概念

2.1 直连路由

直连路由(Direct Route)指路由器直接连接到的网络路由。

维度 说明
生成条件 接口配置 IP + 接口 UP
消失条件 接口 DOWN 或 IP 删除
优先级 0(最高)
配置方式 自动生成(无需配置)

2.2 静态路由

静态路由(Static Route)是管理员手动配置的路由,指向下一跳或出接口。

静态路由的转发指针指定方式:

方式 命令格式 说明
指定下一跳 ip route-static X.X.X.X Y Z.Z.Z.Z 指定下一跳 IP 地址
指定出接口 ip route-static X.X.X.X Y interface-type X/X/X 只指定出接口(点对点链路使用)
同时指定 ip route-static X.X.X.X Y interface-type X/X/X Z.Z.Z.Z 同时指定出接口和下一跳 IP

2.3 静态路由的适用场景

场景 说明
小型网络 网络结构简单,路由变化少
默认路由 指向 ISP 的出口路由
路由备份 与动态路由配合实现备份
精确控制 需要精确控制某些流量的转发路径
Stub 网络 末端网络,只有一个出口

三、技术细节

3.1 静态路由的完整语法

# 命令格式
ip route-static <目标网络> <掩码> <下一跳IP | 出接口> [preference <优先级>] [description <描述>]

# 示例1:指定下一跳
ip route-static 192.168.20.0 24 10.0.0.2

# 示例2:指定出接口
ip route-static 192.168.20.0 24 GigabitEthernet 0/0/1

# 示例3:同时指定
ip route-static 192.168.20.0 24 GigabitEthernet 0/0/1 10.0.0.2

# 示例4:自定义优先级
ip route-static 192.168.20.0 24 10.0.0.2 preference 70

# 示例5:默认路由
ip route-static 0.0.0.0 0 10.0.0.2

3.2 指定下一跳 vs 指定出接口

对比项 指定下一跳 指定出接口
适用接口类型 广播型接口(以太网) 点对点接口(Serial、Tunnel 等)
ARP 行为 需解析下一跳 IP 的 MAC 点对点接口无需解析
以太网上的限制 正常工作 不推荐:以太网无明确下一跳,仅指定出接口时按目的 IP 解析 MAC,易造成报文黑洞
推荐场景 广播网络(以太网)推荐 点对点链路推荐

3.3 静态路由的递归查找

当静态路由指定下一跳 IP 时,路由器需要先查路由表找到到达该下一跳的路由:

静态路由的递归查找 - 图示

如果递归查找失败(路由表中找不到到达下一跳的路由),该静态路由不生效(Inactive),不会进入路由表,因此 display ip routing-table 中看不到它,也不会用于转发。

3.4 静态路由的负载分担

当存在多条去往同一目标网络的静态路由,且优先级和开销值相同时,可实现负载分担:

# 配置等价静态路由
[HUAWEI] ip route-static 192.168.30.0 24 10.0.0.2
[HUAWEI] ip route-static 192.168.30.0 24 10.0.0.3

# 验证负载分担
<HUAWEI> display ip routing-table 192.168.30.0 24
Destination/Mask    Proto  Pre  Cost      NextHop         Interface
192.168.30.0/24     Static 60   0         10.0.0.2        GigabitEthernet0/0/1
192.168.30.0/24     Static 60   0         10.0.0.3        GigabitEthernet0/0/2

四、实战配置/案例分析

4.1 案例一:小型企业网静态路由配置

网络拓扑:

案例一:小型企业网静态路由配置 - 图示

R1 配置:

[R1] interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0] ip address 192.168.10.1 24

[R1] interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1] ip address 10.0.0.1 30
[R1-GigabitEthernet0/0/1] quit

# 配置到达分支 B 的静态路由
[R1] ip route-static 192.168.20.0 24 10.0.0.2

# 验证
<R1> display ip routing-table
Destination/Mask    Proto  Pre  Cost      NextHop         Interface
10.0.0.0/30         Direct 0    0         10.0.0.1        GE0/0/1
192.168.10.0/24     Direct 0    0         192.168.10.1    GE0/0/0
192.168.20.0/24     Static 60   0         10.0.0.2        GE0/0/1   ← 静态路由

R2 配置:

[R2] interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0] ip address 10.0.0.2 30

[R2] interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1] ip address 192.168.20.1 24
[R2-GigabitEthernet0/0/1] quit

# 配置返回分支 A 的静态路由(必须配,否则单向不通)
[R2] ip route-static 192.168.10.0 24 10.0.0.1

4.2 案例二:单向静态路由导致的不通故障

故障现象:R1 能 Ping 通 R2,但 R1 上联的 PC 无法 Ping 通 R2 下联的 PC。

# R1 路由表
<R1> display ip routing-table
192.168.20.0/24     Static 60   0         10.0.0.2        GE0/0/1   ← 去程路由 OK

# R2 路由表
<R2> display ip routing-table
192.168.10.0/24     Static 60   0         10.0.0.1        GE0/0/0   ← 回程路由 OK
# 假设实际配置中 R2 没有回程路由
# R2 收到 PC1(192.168.10.x)的包后,无法回复到 192.168.10.0/24

# 修复:在 R2 上补充回程路由
[R2] ip route-static 192.168.10.0 24 10.0.0.1

核心原则:路由是双向的,配置路由时不仅要配去程,还要配回程。

4.3 案例三:静态路由递归查找失败

# 配置静态路由(下一跳 172.16.0.2 当前不可达)
[HUAWEI] ip route-static 192.168.30.0 24 172.16.0.2

# 查看路由表:递归查找失败,路由不进入路由表,无输出
<HUAWEI> display ip routing-table 192.168.30.0 24
# 无输出 → 该静态路由未生效(下一跳 172.16.0.2 不可达)

# 原因:路由表中没有到达 172.16.0.2 的路由,递归查找失败

# 解决方案 1:先添加到达下一跳的路由,递归查找成功后即可进入路由表
[HUAWEI] ip route-static 172.16.0.0 24 10.0.0.2

# 解决方案 2(适用于点对点链路):直接指定出接口,无需递归查找下一跳
[HUAWEI] ip route-static 192.168.30.0 24 GigabitEthernet 0/0/0

五、总结

路由类型 配置方式 优点 缺点
直连路由 自动生成 无需配置、优先级最高 仅限直连网络
静态路由 手动配置 精确控制、资源占用低 不能自动适应网络变化、大规模维护成本高
配置注意事项 说明
配置双向回程路由 双端通信需要双向路由
下一跳可达 下一跳 IP 必须在路由表中可达
保存配置 save 防止重启后配置丢失
验证路由表 配置后验证路由是否正确生效

思考

  1. 静态路由指定出接口与指定下一跳在以太网环境中有何区别?
  2. 如果静态路由的下一跳 IP 不可达,路由会从路由表中消失吗?
  3. 为什么静态路由的默认优先级是 60,比 OSPF 的 10 还大?静态路由还能生效吗?如果想让它生效如何配置?

下篇预告:第29篇:默认路由(0.0.0.0/0)的应用场景