三、路由基础与静态路由

目录

🎯 这节课为什么重要?

作为工程师,您会遇到这些场景:

  • 🔧 "两个网段的设备无法通信"
  • 🔧 "如何配置路由器实现网段互通?"
  • 🔧 "为什么我的服务器无法访问外网?"
  • 🔧 "路由表中有这么多条目,分别是什么意思?"

路由基础必修课,因为:

  • ✅ 实现不同网段之间的通信
  • ✅ 理解互联网的工作原理
  • ✅ 路由器配置的基础
  • ✅ 网络故障排查必备

📦 核心概念:路由就像"快递中转站"

什么是路由?

定义:路由(Routing)是将数据包从源主机通过最佳路径转发到目的主机的过程。

类比 :路由就像快递中转站

复制代码
您(上海)要寄快递给朋友(北京)

流程:
1. 您 → 上海快递站(收件)
2. 上海快递站 → 分拣中心(中转)
3. 分拣中心 → 北京快递站(中转)
4. 北京快递站 → 朋友(派件)

网络中的路由器就像"快递中转站":
  - 接收数据包
  - 查看目的地地址
  - 转发到下一个中转站
  - 最终到达目标设备

路由器的作用

核心功能

  1. 最佳路径选择:选择最快的路线
  2. 数据包转发:将数据包发往下一跳
  3. 协议转换:不同网络之间的桥梁

类比

复制代码
路由器 = 快递分拣中心

输入:来自不同地方的包裹(数据包)
处理:查看地址(目标IP)
输出:发往不同的方向(下一跳)

📚 一、路由基础

1.1 为什么需要路由?

场景:两个不同网段的设备需要通信

复制代码
网段A:192.168.1.0/24(办公区)
  PC1:192.168.1.10

网段B:192.168.2.0/24(服务器区)
  服务器:192.168.2.100

问题:PC1如何访问服务器?

没有路由器

复制代码
PC1查看服务器IP:192.168.2.100
发现:不在同一网段(192.168.1.0 vs 192.168.2.0)
结果:无法通信(不知道往哪里发)

有路由器

复制代码
PC1 → 发送给网关(192.168.1.1)
路由器 → 查看路由表
       → 192.168.2.0/24 从接口2出去
       → 转发到服务器

1.2 路由表的结构

路由表:路由器内部的"地图",记录如何到达各个网段

路由表的组成

复制代码
目标网段      子网掩码        下一跳        出接口
192.168.1.0   255.255.255.0  0.0.0.0      G0/0/0
192.168.2.0   255.255.255.0  192.168.1.2  G0/0/1
10.0.0.0      255.0.0.0      192.168.1.254 G0/0/0
0.0.0.0       0.0.0.0        192.168.1.254 G0/0/0

字段解释

字段 作用 类比
目标网段 要去哪里 目的地城市
子网掩码 网段范围 城市辖区
下一跳 下一个路由器IP 下一个中转站
出接口 从哪个接口发出去 哪条高速公路

1.3 路由的类型

直连路由(Direct Connected)
复制代码
自动生成,无需配置

条件:接口配置了IP地址,接口状态UP

示例:
interface G0/0/0
 ip address 192.168.1.1 24

路由表自动生成:
  目标网段:192.168.1.0/24
  出接口:G0/0/0
静态路由(Static Route)
复制代码
手动配置,固定不变

优点:
  - 管理员完全控制路径
  - 不占用路由器资源
  - 安全性高

缺点:
  - 网络拓扑变化需要手动更新
  - 大型网络配置复杂

适用场景:
  - 小型网络
  - 固定拓扑结构
动态路由(Dynamic Route)
复制代码
通过路由协议自动学习

常见协议:
  - RIP(距离矢量)
  - OSPF(链路状态)
  - BGP(路径矢量)

优点:
  - 自动适应网络变化
  - 适合大型网络

缺点:
  - 占用路由器资源
  - 配置复杂
  - 可能产生路由环路

📖 二、静态路由配置

2.1 静态路由配置语法

华为设备

shell 复制代码
# 基本语法
ip route-static [目标网段] [掩码] [下一跳IP] | [出接口]

# 示例1:指定下一跳IP
ip route-static 192.168.2.0 255.255.255.0 192.168.1.2

# 示例2:指定出接口(点对点链路)
ip route-static 192.168.2.0 255.255.255.0 G0/0/1

# 示例3:配置默认路由
ip route-static 0.0.0.0 0.0.0.0 192.168.1.254

Cisco设备

shell 复制代码
# 基本语法
ip route [目标网段] [掩码] [下一跳IP] | [出接口]

# 示例
ip route 192.168.2.0 255.255.255.0 192.168.1.2
ip route 0.0.0.0 0.0.0.0 192.168.1.254

2.2 静态路由配置示例

场景:两个网段通过路由器互联

网络拓扑

复制代码
      网段A              路由器RTA              网段B
[192.168.1.0/24]  ←→ [G0/0/0] ←→ [G0/0/1] ←→ [192.168.2.0/24]
                      192.168.1.1    192.168.2.1

配置步骤

步骤1:配置路由器接口IP

shell 复制代码
[RTA] system-view
[RTA] interface G0/0/0
[RTA-G0/0/0] ip address 192.168.1.1 24
[RTA-G0/0/0] quit
[RTA] interface G0/0/1
[RTA-G0/0/1] ip address 192.168.2.1 24
[RTA-G0/0/1] quit

步骤2:查看路由表

shell 复制代码
[RTA] display ip routing-table

# 应该看到两条直连路由:
Destination/Mask    Proto   Pre  Cost        Flags NextHop         Interface
      192.168.1.0/24  Direct  0    0             D   0.0.0.0         GigabitEthernet0/0/0
      192.168.2.0/24  Direct  0    0             D   0.0.0.0         GigabitEthernet0/0/1

步骤3:配置PC和服务器

复制代码
PC1(网段A):
  IP地址:192.168.1.10
  子网掩码:255.255.255.0
  默认网关:192.168.1.1

服务器(网段B):
  IP地址:192.168.2.100
  子网掩码:255.255.255.0
  默认网关:192.168.2.1

步骤4:测试连通性

shell 复制代码
# 在PC1上ping服务器
C:\> ping 192.168.2.100

# 应该能ping通!

2.3 默认路由

什么是默认路由?

定义:当路由表中没有匹配的路由条目时,使用的最后一条路由。

类比:默认路由就像"快递公司的总部分拣中心"

复制代码
具体地址路由:
  发往北京 → 北京分拣中心
  发往上海 → 上海分拣中心

默认路由(其他所有地址):
  发往其他地方 → 总部分拣中心(再转发)

配置语法

shell 复制代码
# 华为设备
ip route-static 0.0.0.0 0.0.0.0 [下一跳IP]

# 示例
ip route-static 0.0.0.0 0.0.0.0 192.168.1.254

# 思科设备
ip route 0.0.0.0 0.0.0.0 [下一跳IP]

# 示例
ip route 0.0.0.0 0.0.0.0 192.168.1.254

为什么需要默认路由?

复制代码
场景1:访问互联网

公司网络:192.168.1.0/24
互联网:无数个公网IP

问题:不可能为每个公网网段配置一条路由

解决:配置默认路由指向ISP网关
  ip route-static 0.0.0.0 0.0.0.0 202.100.1.1

效果:
  访问192.168.2.0 → 匹配具体路由
  访问其他所有IP → 使用默认路由

默认路由的特点

复制代码
1. 优先级最低(最后匹配)
2. 目标网段:0.0.0.0/0(匹配所有IP)
3. 通常只有一个默认路由
4. 访问互联网必须配置

💼 三、实际应用场景

场景1:三个网段互联

网络拓扑

复制代码
      [网段A]              [路由器RTA]              [网段B]
  [192.168.1.0/24]  ←→ [G0/0/0] ←→ [G0/0/1] ←→ [192.168.2.0/24]
                        192.168.1.1    192.168.2.1

                           [G0/0/2]
                             ↓
      [网段C]              [路由器RTB]              互联网
  [192.168.3.0/24]  ←→ [G0/0/1] ←→ [G0/0/0] ←→ [ISP]
                        192.168.3.1    202.100.1.1

RTA配置

shell 复制代码
system-view
interface G0/0/0
 ip address 192.168.1.1 24
 quit

interface G0/0/1
 ip address 192.168.2.1 24
 quit

interface G0/0/2
 ip address 192.168.3.2 24
 quit

# 配置到网段C的静态路由
ip route-static 192.168.3.0 255.255.255.0 192.168.3.1

# 配置默认路由指向RTB
ip route-static 0.0.0.0 0.0.0.0 192.168.3.1

# 保存配置
save

RTB配置

shell 复制代码
system-view
interface G0/0/1
 ip address 192.168.3.1 24
 quit

interface G0/0/0
 ip address 202.100.1.2 24
 quit

# 配置到三个网段的静态路由
ip route-static 192.168.1.0 255.255.255.0 192.168.3.2
ip route-static 192.168.2.0 255.255.255.0 192.168.3.2
ip route-static 192.168.3.0 255.255.255.0 192.168.3.2

# 保存配置
save

场景2:浮动静态路由(备用路径)

场景:主链路故障时,自动切换到备用链路

网络拓扑

复制代码
                        [主链路]
  [网段A] ←→ [RTA] ←→ [ISP] ←→ 互联网
            \    /
             \  / [备用链路]
              [RTB]

RTA配置

shell 复制代码
# 主路由(优先级60)
ip route-static 0.0.0.0 0.0.0.0 202.100.1.1 preference 60

# 备用路由(优先级100)
ip route-static 0.0.0.0 0.0.0.0 202.100.2.1 preference 100

工作原理

复制代码
正常情况:
  → 使用主路由(优先级60,数值越小优先级越高)

主链路故障:
  → 主路由失效
  → 自动切换到备用路由(优先级100)

主链路恢复:
  → 切换回主路由

场景3:负载分担

场景:两条链路同时使用,分担流量

网络拓扑

复制代码
        [链路1]
  [网段A] ←→ [RTA] ←→ [ISP1] ←→ 互联网
         \
          \ [链路2]
           → [ISP2] ←→ 互联网

RTA配置

shell 复制代码
# 两条等价路由
ip route-static 0.0.0.0 0.0.0.0 202.100.1.1
ip route-static 0.0.0.0 0.0.0.0 202.100.2.1

工作原理

复制代码
路由器执行负载均衡:
  第1个包 → ISP1
  第2个包 → ISP2
  第3个包 → ISP1
  第4个包 → ISP2
  ...

效果:
  - 带宽翻倍
  - 提高网络可用性
  - 一条链路故障不影响访问

⚙️ 四、配置命令详解

4.1 查看路由表

华为设备

shell 复制代码
# 查看IP路由表
display ip routing-table

# 查看路由表详细信息
display ip routing-table verbose

# 查看特定网段的路由
display ip routing-table 192.168.1.0

# 查看活动路由
display ip routing-table active

输出示例

复制代码
<RTA> display ip routing-table

Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Destination/Mask    Proto   Pre  Cost        Flags NextHop         Interface
      127.0.0.0/8   Direct  0    0             D  127.0.0.1       InLoopBack0
      192.168.1.0/24  Direct  0    0             D  0.0.0.0         GigabitEthernet0/0/0
      192.168.2.0/24  Static  60   0             RD 192.168.1.2     GigabitEthernet0/0/1
      192.168.3.0/24  Static  60   0             RD 192.168.1.2     GigabitEthernet0/0/1
       0.0.0.0/0    Static  60   0             RD 192.168.1.254   GigabitEthernet0/0/0
------------------------------------------------------------------------------

字段说明

  • Destination/Mask:目标网段和掩码
  • Proto:路由类型(Direct直连,Static静态,OSPF动态)
  • Pre:优先级(0-255,数值越小优先级越高)
  • Cost:开销(路由代价)
  • Flags:标志(R=中继,D=下载)
  • NextHop:下一跳IP地址
  • Interface:出接口

4.2 路由表查找过程

场景:PC1(192.168.1.10)访问服务器(192.168.2.100)

路由器RTA的处理过程

复制代码
步骤1:收到数据包
  源IP:192.168.1.10
  目标IP:192.168.2.100

步骤2:查找路由表
  匹配顺序:最长匹配原则

  尝试1:匹配192.168.2.0/24  # 命中!
  (不再继续匹配其他路由)

步骤3:转发数据包
  下一跳:直连(0.0.0.0)
  出接口:G0/0/1
  从G0/0/1接口发送出去

最长匹配原则

复制代码
路由表中有:
  192.168.2.0/24(匹配24位)
  192.168.2.0/26(匹配26位)
  192.168.2.0/32(匹配32位)

目标IP:192.168.2.100

匹配结果:
  192.168.2.0/24:匹配 ✅
  192.168.2.0/26:匹配 ✅(更精确)
  192.168.2.0/32:不匹配

最终选择:192.168.2.0/26(最长匹配)

4.3 路由维护命令

华为设备

shell 复制代码
# 删除静态路由
undo ip route-static 192.168.2.0 255.255.255.0 192.168.1.2

# 修改路由优先级
ip route-static 192.168.2.0 255.255.255.0 192.168.1.2 preference 100

# 刷新路由表
reset ip routing-table

# 清除路由计数
reset ip routing-table statistics protocol all

⚠️ 五、常见误区与易错点

误区1:忘记配置回程路由

错误认识

复制代码
"配置了A到B的路由,就能通信了"

正确理解

复制代码
路由是双向的!必须配置来回两个方向的路由

错误配置:
  RTA:192.168.1.0 → 192.168.2.0 ✅
  RTB:(未配置)
  结果:A能ping通B,但B无法ping通A

正确配置:
  RTA:192.168.1.0 → 192.168.2.0 ✅
  RTB:192.168.2.0 → 192.168.1.0 ✅
  结果:双向都能通信

误区2:下一跳不可达

错误认识

复制代码
"配置了路由就能工作"

正确理解

复制代码
路由生效的前提:下一跳必须可达

错误配置:
  ip route-static 192.168.2.0 255.255.255.0 192.168.1.254

  问题:192.168.1.254不可达
  结果:路由无效,数据包无法转发

正确配置:
  先确保192.168.1.254可达(如直连网段)
  再配置路由

误区3:子网掩码错误

错误认识

复制代码
"子网掩码差不多就行"

正确理解

复制代码
子网掩码必须精确匹配

错误示例:
  网段:192.168.1.0/24
  配置:255.255.0.0(错误!)
  结果:路由不精确,可能路由错误

正确配置:
  网段:192.168.1.0/24
  配置:255.255.255.0(正确)

误区4:重复配置相同路由

错误认识

复制代码
"多配置几次路由,备份一下"

正确理解

复制代码
相同路由重复配置:

第一次:
  ip route-static 0.0.0.0 0.0.0.0 192.168.1.1 preference 60

第二次:
  ip route-static 0.0.0.0 0.0.0.0 192.168.1.2 preference 60

结果:
  第二次会覆盖第一次
  或产生冲突

建议:
  配置前先查看现有路由
  删除旧路由再配置新路由

误区5:忽略默认路由的必要性

错误认识

复制代码
"公司内网互通就够了,不需要默认路由"

正确理解

复制代码
默认路由的作用:

1. 访问互联网:
   内网 → 默认路由 → ISP → 互联网

2. 访问VPN:
   内网 → 默认路由 → 防火墙 → VPN服务器

3. 访问其他分支机构:
   内网 → 默认路由 → 总部路由器 → 分支网络

没有默认路由:
  ✅ 内网互通正常
  ❌ 无法访问外部网络

📌 六、本节重点总结

核心要点

  1. 路由的本质

    • 数据包从源到目的地的转发过程
    • 类比:快递中转站
  2. 路由表的组成

    • 目标网段、子网掩码、下一跳、出接口
    • 直连路由自动生成
  3. 静态路由配置

    • 手动配置,固定不变
    • 适合小型、固定拓扑网络
  4. 默认路由

    • 0.0.0.0/0,匹配所有IP
    • 访问互联网必须配置
    • 优先级最低
  5. 路由是双向的

    • 配置来回两个方向
    • A→B 和 B→A 都需要路由

配置公式速查

复制代码
1. 静态路由配置:
   ip route-static [目标网段] [掩码] [下一跳]

2. 默认路由配置:
   ip route-static 0.0.0.0 0.0.0.0 [网关IP]

3. 查看路由表:
   display ip routing-table(华为)
   show ip route(思科)

4. 删除路由:
   undo ip route-static [目标网段] [掩码] [下一跳]

🎯 思考题与实操任务

思考题1:基础理解(必答)

题目

复制代码
场景:两个网段需要通过路由器互联

网络A:192.168.1.0/24,网关是192.168.1.1
网络B:192.168.2.0/24,网关是192.168.2.1

问题:
1. 路由器上需要配置什么路由才能让A访问B?
2. 路由器上需要配置什么路由才能让B访问A?
3. 如果网络A还需要访问互联网(网关202.100.1.1),需要配置什么?

思考题2:路由表分析(进阶)

题目

复制代码
查看路由器路由表:

Destination/Mask    Proto   Pre  Cost  NextHop      Interface
192.168.1.0/24      Direct  0    0     0.0.0.0       G0/0/0
192.168.2.0/24      Direct  0    0     0.0.0.0       G0/0/1
192.168.3.0/24      Static  60   0     192.168.2.2   G0/0/1
0.0.0.0/0           Static  60   0     192.168.2.254 G0/0/1

问题:
1. 路由器有几个接口?IP地址分别是多少?
    路由器有2个接口    IP地址分别是:192.168.1.1和192.168.1.2
2. 数据包要发往192.168.3.100,从哪个接口出去?
    从 G0/0/1出去的
3. 数据包要发往8.8.8.8,从哪个接口出去?
    从 G0/0/1出去的
4. 如果192.168.2.2宕机,会影响哪些网段的通信?
    去往 192.168.3.0/24 的流量中断,192.168.1.0网段访问192.168.3.0网段会访问不到
bash 复制代码
# 解析

# 1. 路由器有几个接口?IP地址分别是多少?

- 接口数量:从路由表看,有 2 个直连(Direct)网段 → 对应 2 个活跃接口(G0/0/0 和 G0/0/1)。
- IP 地址:
    - 接口 G0/0/0 的 IP 属于 192.168.1.0/24 网段(通常是 .1,如 192.168.1.1)
    - 接口 G0/0/1 的 IP 属于 192.168.2.0/24 网段(通常是 .1,如 192.168.2.1)

> - 2 个接口
> - IP 分别在 192.168.1.0/24 和 192.168.2.0/24 网段中(具体如 192.168.1.1 / 192.168.2.1)


# 2. 数据包要发往 192.168.3.100,从哪个接口出去?

- 查路由表:匹配 192.168.3.0/24 → 下一跳 192.168.2.2,出接口 G0/0/1
- 所以数据包从 G0/0/1 发出,送往下一跳 192.168.2.2

> 从 G0/0/1 接口出去


# 3. 数据包要发往 8.8.8.8,从哪个接口出去?

- 匹配默认路由 0.0.0.0/0** → 下一跳 192.168.2.254,出接口 G0/0/1
- 所以从 G0/0/1 发出

从 G0/0/1 接口出去


# 4. 如果 192.168.2.2 宕机,会影响哪些网段的通信?

- 192.168.3.0/24 的静态路由依赖下一跳 192.168.2.2
- 所以 去往 192.168.3.0/24 的流量中断
- 192.168.1.0/24 是直连网段,不受影响
- 但注意:192.168.1.0 网段访问 192.168.3.0 会失败,而本地通信正常

192.168.3.0/24 网段的通信会中断(其他网段访问它,或它访问外网若回程依赖此路径)


# 解题思路总结

1. 直连路由(Direct) → 表示本路由器接口所在的网段,接口数 = Direct 条目数。
2. 接口 IP 不是网络地址(如 .0),而是该网段中的某个主机地址(通常 .1)。
3. 数据包出口 = 路由表中匹配条目的 Interface 列,不是 NextHop。
4. NextHop 是下一跳设备的 IP,用于非直连网络。
5. 故障影响:只影响依赖该下一跳的路由条目,直连网段不受影响。
相关推荐
皮皮学姐分享-ppx5 小时前
政府绿色采购数据库(2015-2024.3)
大数据·网络·数据库·人工智能·制造
W_chuanqi5 小时前
联想M7615DNA网络打印方法
网络·联想·打印机网络连接
HavenlonLabs8 小时前
硬件 + SaaS 产品的工程化路径:从系统架构、PCB 设计到工程样机
网络·安全·架构·系统架构·安全架构
sweet丶11 小时前
MQTT消息通道-基础篇
网络协议
yychen_java12 小时前
当算法成为武器:AI泛滥时代的多维危机透视与治理路径
网络·人工智能·ai
漫途科技12 小时前
精准盯防危房隐患,智守人居安全|MTB46-4-2A 4G数据采集终端专项应用方案
网络·安全
奥利奥夹心脆芙13 小时前
辅助排查 HTTP 接口代码报错,实操完整案例分享
http
Misnearch13 小时前
抓包Packet Capture
网络·抓包
zhangfeng113313 小时前
ps aux讲解,结合国家超算中心 hpc apptainer
linux·服务器·网络
吠品14 小时前
一次 Nginx 报错 unexpected end of file 的排查记录
网络协议·https·ssl