路由器和交换机完全讲解:从原理到实战配置

2024-09-17 后端

一、网络基础回顾

在学习路由器和交换机之前,先回顾几个核心网络概念。

1.1 OSI 七层模型

层级 名称 功能 设备
7 应用层 HTTP、FTP、SMTP、DNS —
6 表示层 数据加密、压缩、格式转换 —
5 会话层 建立、管理、终止会话 —
4 传输层 TCP/UDP、端口 —
3 网络层 IP 寻址、路由 路由器
2 数据链路层 MAC 地址、帧转发 交换机
1 物理层 比特流、网线、光纤 集线器、中继器

核心区分:

  • 路由器工作在网络层(第3层),根据 IP 地址转发数据包
  • 交换机工作在数据链路层(第2层),根据 MAC 地址转发数据帧

1.2 TCP/IP 四层模型

应用层   ← HTTP、FTP、SSH、DNS
传输层   ← TCP、UDP
网络层   ← IP、ICMP、ARP
网络接口层 ← 以太网、Wi-Fi

1.3 关键概念

概念 说明
MAC 地址 48位硬件地址,出厂烧录,用于局域网通信
IP 地址 32位(IPv4)逻辑地址,用于跨网络通信
子网掩码 区分网络位和主机位,如 255.255.255.0
网关 连接本地网络与外部网络的出口
ARP 地址解析协议,IP → MAC 映射
NAT 网络地址转换,内网 IP ←→ 公网 IP
DHCP 动态主机配置协议,自动分配 IP 地址

二、路由器(Router)

2.1 路由器是什么

路由器是一种连接多个网络、并根据 IP 地址选择最佳路径转发数据包的网络设备。

核心功能:

  1. 路径选择 — 根据路由表决定数据包的最佳路径
  2. 数据转发 — 将数据包从一个网络接口转发到另一个
  3. 隔离广播域 — 路由器不转发广播包,广播域止于路由器
  4. NAT 转换 — 将内网私有 IP 转换为公网 IP
  5. 防火墙 — ACL 访问控制列表过滤流量

2.2 路由转发原理

当数据包到达路由器时,处理流程如下:

① 接收数据包
   ↓
② 检查目标 IP 地址
   ↓
③ 查询路由表
   ├─ 匹配 → 根据下一跳/出接口转发
   └─ 不匹配 → 丢弃并返回 ICMP 不可达
   ↓
④ 修改 TTL(减1)、重算校验和
   ↓
⑤ 封装新的帧头(源/目标 MAC 更新)
   ↓
⑥ 从出接口发送

关键细节:

  • 每经过一个路由器,TTL(Time To Live)减1,TTL=0 时丢弃
  • 源和目标 MAC 地址在每个跳点都会被改写
  • 源和目标 IP 地址在整个传输过程中保持不变(除非经过 NAT)

2.3 路由表

路由表是路由器工作的核心,记录了到达目标网络的路径信息。

# 查看路由表(华为设备)
display ip routing-table

# 查看路由表(Cisco 设备)
show ip route

# Linux 路由表
ip route show
route -n

路由表条目示例:

目标网络 掩码 下一跳 出接口 协议 度量值
0.0.0.0 0.0.0.0 192.168.1.1 eth0 Static 0
10.0.1.0 255.255.255.0 直连 eth1 Direct 0
172.16.0.0 255.255.0.0 10.0.1.2 eth1 OSPF 20

路由来源优先级(华为):

直连路由(Direct) > 静态路由(Static) > RIP > OSPF > ISIS > BGP

2.4 路由协议

2.4.1 静态路由

手动配置的路由,适合小型网络。

# 华为 VRP 配置
ip route-static 192.168.2.0 255.255.255.0 10.0.1.2

# Cisco IOS 配置
ip route 192.168.2.0 255.255.255.0 10.0.1.2

# Linux 配置
ip route add 192.168.2.0/24 via 10.0.1.2

默认路由:

ip route-static 0.0.0.0 0.0.0.0 192.168.1.1  # 华为
ip route 0.0.0.0 0.0.0.0 192.168.1.1          # Cisco

2.4.2 RIP(路由信息协议)

距离矢量协议,以跳数为度量值,最大15跳。

特点:
- 基于 UDP 端口 520
- 每30秒广播完整路由表
- 最大跳数15(16为不可达)
- 收敛慢(路由环路问题)
- 仅适合小型网络

配置示例:

# 华为 VRP
rip
 network 10.0.0.0
 version 2

# Cisco IOS
router rip
 version 2
 network 10.0.0.0
 no auto-summary

RIP 防环机制:

  • 最大跳数限制(16跳不可达)
  • 水平分割(从某接口学到的路由不从此接口通告)
  • 毒性逆转(通告不可达路由)
  • 抑制计时器

2.4.3 OSPF(开放最短路径优先)

链路状态协议,基于 SPF 算法(Dijkstra),适合中大型网络。

特点:
- 基于 IP 协议号 89
- 没有跳数限制
- 收敛速度快
- 支持 VLSM/CIDR
- 基于带宽计算度量值(Cost = 10^8 / 带宽)
- 区域划分减少路由计算量

OSPF 概念:

概念 说明
Router ID 路由器唯一标识(通常是最大环回口 IP)
Area 区域,骨干区域为 Area 0
DR/BDR 指定路由器/备份指定路由器(广播网络)
LSA 链路状态通告(1~7类)
LSDB 链路状态数据库
SPF Tree 最短路径树

OSPF 配置示例:

# 华为
ospf 1 router-id 1.1.1.1
 area 0.0.0.0
  network 10.0.1.0 0.0.0.255
  network 192.168.1.0 0.0.0.255

# Cisco
router ospf 1
 router-id 1.1.1.1
 network 10.0.1.0 0.0.0.255 area 0
 network 192.168.1.0 0.0.0.255 area 0

OSPF 邻居状态机:

Down → Init → 2-Way → ExStart → Exchange → Loading → Full

调试命令:

display ospf peer                    # 查看邻居
display ospf routing                 # 查看 OSPF 路由
display ospf lsdb                    # 查看 LSDB
debugging ospf packet                # 调试 OSPF 报文

2.4.4 BGP(边界网关协议)

路径矢量协议,互联网核心路由协议。

特点:
- 基于 TCP 端口 179(可靠传输)
- 使用 AS(自治系统)号
- eBGP(AS 之间) vs iBGP(AS 内部)
- 路径属性(AS Path、Next Hop、Local Preference、MED)
- 策略驱动而非算法驱动
- 互联网路由表已超过 90 万条

配置示例:

# Cisco
router bgp 65001
 neighbor 10.0.1.2 remote-as 65002
 network 192.168.1.0 mask 255.255.255.0

# 华为
bgp 65001
 peer 10.0.1.2 as-number 65002
 network 192.168.1.0 255.255.255.0

2.5 NAT 网络地址转换

NAT 解决 IPv4 地址枯竭问题,将内网私有 IP 映射为公网 IP。

私有 IP 地址范围:

A类:10.0.0.0/8       (10.0.0.0 – 10.255.255.255)
B类:172.16.0.0/12     (172.16.0.0 – 172.31.255.255)
C类:192.168.0.0/16    (192.168.0.0 – 192.168.255.255)

NAT 类型:

类型 说明 配置
静态 NAT 一对一映射(内网IP ↔ 公网IP) nat static global 公网IP inside 内网IP
动态 NAT 从地址池中分配 nat address-group 1 ...
PAT(端口复用) 多对一,最常用 acl 2000; nat outbound 2000
端口映射 暴露内网服务 nat server protocol tcp global ... inside ...

PAT 配置示例(华为):

acl number 2000
 rule 5 permit source 192.168.1.0 0.0.0.255

nat address-group 1 100.64.0.1 100.64.0.10

interface GigabitEthernet0/0/1
 nat outbound 2000 address-group 1
 nat server protocol tcp global 100.64.0.1 8080 inside 192.168.1.100 80

2.6 家用路由器

家用路由器本质上是多合一设备:

  • 路由器(NAT + DHCP)
  • 交换机(4口 LAN)
  • 无线 AP(Wi-Fi)
  • 防火墙(基本 ACL)
  • 有时还带 Modem 功能

选购要点:

参数 说明
无线标准 Wi-Fi 6(802.11ax)vs Wi-Fi 5(802.11ac)
频段 2.4GHz(穿墙好) + 5GHz(速度快)
MU-MIMO 多用户多入多出,同时服务多个设备
CPU 双核/四核,影响 NAT 转发性能
内存 128MB+,影响并发连接数
端口 千兆 LAN/WAN 是标配,2.5G 口更好

三、交换机(Switch)

3.1 交换机是什么

交换机是一种连接局域网内多个设备、并根据 MAC 地址转发数据帧的网络设备。

核心功能:

  1. MAC 地址学习 — 记录设备 MAC 对应的端口
  2. 帧转发/过滤 — 根据 MAC 表有目的转发
  3. 环路避免 — STP(生成树协议)防止广播风暴
  4. VLAN 隔离 — 划分逻辑网络,隔离广播域
  5. 链路聚合 — 捆绑多条链路增加带宽和冗余

3.2 交换原理

交换机通过 MAC 地址表(也称 CAM 表)进行帧转发。

转发决策流程:

① 接收帧,提取源 MAC 和源端口
   ↓
② 学习:将源 MAC + 端口写入 MAC 表
   ↓
③ 查询目标 MAC:
   ├─ 已知单播(MAC 表中有记录)→ 从对应端口转发
   ├─ 未知单播(MAC 表中无记录)→ 广播到所有端口(除源端口)
   ├─ 广播帧(FF:FF:FF:FF:FF:FF)→ 广播到所有端口
   └─ 组播帧 → 根据 IGMP Snooping 转发

示例:

PC-A (MAC: AA:AA) 接端口1
PC-B (MAC: BB:BB) 接端口2

PC-A 发帧给 PC-B:
1. 交换机从端口1收到帧,学习 AA:AA → 端口1
2. 查询目标 MAC BB:BB,未学习到 → 广播到端口2、3、4...
3. PC-B 响应:学习 BB:BB → 端口2
4. 后续通信 → 直接从端口2转发,不再广播

查看 MAC 表:

display mac-address            # 华为
show mac address-table         # Cisco

3.3 交换机工作模式

模式 延迟 错误检测 说明
直通转发(Cut-through) 低 无 读到目标 MAC 即转发
存储转发(Store-and-forward) 高 完整 收完整帧校验后转发
碎片隔离(Fragment-free) 中 前64字节 检查冲突碎片

企业交换机通常使用存储转发。

3.4 VLAN(虚拟局域网)

VLAN 将一个物理交换机划分为多个逻辑交换机,隔离广播域。

为什么需要 VLAN:

  • 减少广播流量
  • 提高安全性(不同部门隔离)
  • 灵活组网(不受物理位置限制)

VLAN 划分方式:

方式 说明 适用场景
基于端口 端口固定属于某个 VLAN 最常用,简单可靠
基于 MAC 根据设备 MAC 划分 VLAN 移动设备频繁插拔
基于协议 根据 IP 子网/协议划分 复杂网络环境
基于策略 结合多种条件 大规模灵活组网

配置示例:

# 华为
vlan batch 10 20 30                     # 批量创建 VLAN
interface GigabitEthernet0/0/1
 port link-type access                  # Access 口(连接终端)
 port default vlan 10

interface GigabitEthernet0/0/10
 port link-type trunk                   # Trunk 口(连接交换机)
 port trunk allow-pass vlan 10 20 30

# Cisco
vlan 10
 name Sales
vlan 20
 name Engineering

interface FastEthernet0/1
 switchport mode access
 switchport access vlan 10

interface FastEthernet0/24
 switchport mode trunk
 switchport trunk allowed vlan 10,20,30

Access vs Trunk vs Hybrid:

端口类型 用途 接收处理 发送处理
Access 连接终端 打上 PVID 标签 剥离标签
Trunk 连接交换机 允许列表内带标签通过 保持标签
Hybrid 混合场景 灵活配置 可带标签或不带

3.5 VLAN 间路由

默认情况下 VLAN 之间不能通信,需要三层设备转发。

方式一:单臂路由(Router-on-a-Stick)

# 路由器子接口配置
interface GigabitEthernet0/0/1.10
 dot1q termination vid 10
 ip address 192.168.10.1 255.255.255.0

interface GigabitEthernet0/0/1.20
 dot1q termination vid 20
 ip address 192.168.20.1 255.255.255.0

方式二:三层交换机(SVI)

# 华为
interface Vlanif10
 ip address 192.168.10.1 255.255.255.0

interface Vlanif20
 ip address 192.168.20.1 255.255.255.0

# Cisco
interface Vlan10
 ip address 192.168.10.1 255.255.255.0

interface Vlan20
 ip address 192.168.20.1 255.255.255.0

ip routing    # 启用三层交换

三层交换机 VS 路由器:

对比项 三层交换机 路由器
转发速度 硬件转发(ASIC),线速 软件转发,较慢
路由协议 支持基本路由协议 全功能路由协议
WAN 接口 少,通常是电口 丰富(Serial、POS、4G/5G)
NAT/防火墙 弱或不支持 强大
价格 性价比高 较高
适用场景 园区网核心/汇聚 广域网出口/骨干

3.6 STP(生成树协议)

STP 用来防止交换机环路导致的广播风暴。

环路问题:

广播帧在环路中无限转发
MAC 表不停抖动(Flapping)
交换机 CPU 100%,网络瘫痪

STP 原理:

  1. 选择根桥(Root Bridge) — 桥 ID 最小的交换机
  2. 选择根端口(RP) — 每个非根桥到达根桥最优路径的端口
  3. 选择指定端口(DP) — 每条链路上到达根桥最优的端口
  4. 阻塞剩余端口 — 备用端口进入 Blocking 状态

STP 端口状态:

Blocking  →  Listening  →  Learning  →  Forwarding
  20s           15s           15s

总共约 30~50 秒收敛时间。

STP 演进:

协议 标准 收敛时间 特点
STP 802.1D 30-50s 原始标准
RSTP 802.1w 1-3s 快速收敛
MSTP 802.1s 1-3s 多生成树,不同 VLAN 负载分担

配置示例:

# 华为(MSTP)
stp region-configuration
 region-name HUAWEI
 instance 1 vlan 10 20
 instance 2 vlan 30 40
 active region-configuration

stp instance 1 root primary         # 设为实例1的根桥
stp instance 2 root secondary       # 设为实例2的备用根桥

# Cisco(PVST+)
spanning-tree vlan 10 root primary
spanning-tree vlan 20 root secondary

将多条物理链路捆绑成一条逻辑链路,增加带宽和冗余。

模式:

模式 协议 说明
静态聚合 无 双方手工配置
LACP(动态) 802.3ad 自动协商,推荐使用

配置示例:

# 华为 Eth-Trunk
interface Eth-Trunk1
 trunkport GigabitEthernet0/0/1 to 0/0/4
 mode lacp-static
 load-balance src-dst-ip

# Cisco Port-Channel
interface Port-channel1
 switchport trunk allowed vlan 10,20,30

interface GigabitEthernet0/1
 channel-group 1 mode active
interface GigabitEthernet0/2
 channel-group 1 mode active

负载均衡算法:

  • 源 MAC
  • 目标 MAC
  • 源 IP(默认)
  • 源 + 目标 IP
  • 源 + 目标 TCP/UDP 端口

3.8 DHCP Snooping 与安全

DHCP Snooping 防止私接 DHCP 服务器:

# 华为
dhcp enable
dhcp snooping enable

interface GigabitEthernet0/0/1
 dhcp snooping trusted            # 信任端口(接合法 DHCP 服务器)

interface GigabitEthernet0/0/2
 dhcp snooping check dhcp-server  # 检测非法 DHCP 响应

端口安全:

# 限制端口最大 MAC 地址数
interface GigabitEthernet0/0/1
 port-security enable
 port-security max-mac-num 3
 port-security protect-action shutdown  # 违规时关闭端口

四、交换机 vs 路由器对比

对比项 交换机 路由器
工作层级 数据链路层(L2) 网络层(L3)
转发依据 MAC 地址 IP 地址
广播域 不隔离(同一 VLAN 内) 隔离
冲突域 每个端口独立 每个端口独立
转发速度 硬件线速转发 相对较慢
NAT 不支持 支持
路由协议 三层交换机支持部分 全功能支持
主要用途 局域网内部连接 网络间互联
接口类型 以太网口 以太网+广域网口
典型位置 接入层/汇聚层 核心层/出口

五、典型网络拓扑

5.1 家庭网络

Internet
    │
  光猫(Modem)
    │
  路由器(NAT + Wi-Fi + 4口交换)
    │     │     │     │
  PC1   PC2   电视  手机(Wi-Fi)

5.2 小型企业网络

Internet
    │
  路由器(出口 NAT + 防火墙)
    │
  核心交换机(三层交换)
    │     │     │
 汇聚1  汇聚2  服务器区
    │     │     │
 接入1   接入2  DB/WEB
  │││    │││
 PC机    PC机

5.3 三层网络架构

                   核心层(Core)
               高速路由交换
              │           │
          汇聚层(Distribution)
         VLAN 终结、策略控制
           │             │
        接入层(Access)
       终端设备接入
      │    │    │    │
    PC   PC   AP   IP Phone

各层职责:

层级 功能 设备
核心层 高速 IP 转发,不做过量策略 高端三层交换机/路由器
汇聚层 VLAN 终结、路由聚合、ACL、QoS 三层交换机
接入层 终端接入、VLAN 划分、端口安全 二层交换机

六、实际场景配置示例

6.1 场景:中小企业组网

需求:

  • 两个部门:财务(VLAN 10)、办公(VLAN 20)
  • 出口路由器连接互联网
  • 三层交换机实现 VLAN 间路由
  • DHCP 自动分配 IP

拓扑:

Internet → 路由器 (192.168.0.1) → 三层交换机 → 财务 PC (VLAN 10)
                                        → 办公 PC (VLAN 20)

路由器配置:

interface GigabitEthernet0/0/0
 ip address dhcp                    # WAN 口自动获取

interface GigabitEthernet0/0/1
 ip address 192.168.0.1 255.255.255.0

ip route 192.168.10.0 255.255.255.0 192.168.0.254
ip route 192.168.20.0 255.255.255.0 192.168.0.254

nat outbound 2000                   # PAT

三层交换机配置:

vlan batch 10 20

interface Vlanif10
 ip address 192.168.10.254 255.255.255.0
 dhcp select interface
 dhcp server dns-list 8.8.8.8 114.114.114.114

interface Vlanif20
 ip address 192.168.20.254 255.255.255.0
 dhcp select interface
 dhcp server dns-list 8.8.8.8 114.114.114.114

interface GigabitEthernet0/0/24
 port link-type trunk
 port trunk allow-pass vlan 10 20

ip route-static 0.0.0.0 0.0.0.0 192.168.0.1

6.2 场景:多区域 OSPF 网络

        Area 0(骨干)
    R1 —————— R2
    │           │
 Area 1      Area 2
    │           │
   R3          R4
    │           │
 192.168.1.0  192.168.2.0

R1 配置:

ospf 1 router-id 1.1.1.1
 area 0.0.0.0
  network 10.0.1.0 0.0.0.3
 area 0.0.0.1
  network 10.0.2.0 0.0.0.3
  stub                          # 末梢区域

R3 配置:

ospf 1 router-id 3.3.3.3
 area 0.0.0.1
  network 10.0.2.0 0.0.0.3
  network 192.168.1.0 0.0.0.255
  stub

七、故障排查常用命令

7.1 连通性测试

# ICMP 测试
ping 192.168.1.1                  # 测试连通性
ping -c 10 -s 1500 192.168.1.1    # 测试大包/长测试
tracert 8.8.8.8                   # 追踪路径(Windows)
traceroute 8.8.8.8                # 追踪路径(Linux/华为)

7.2 设备排查

# 通用
display interface brief           # 查看接口状态
display ip interface brief        # 查看三层接口
display current-configuration     # 查看当前配置

# 路由
display ip routing-table          # 查看路由表
display ospf peer                 # OSPF 邻居
display bgp peer                  # BGP 邻居

# 交换
display mac-address               # MAC 地址表
display vlan                      # VLAN 信息
display stp                       # STP 状态
display vlan statistics           # VLAN 流量统计

# 故障
display logbuffer                 # 查看日志
terminal monitor                  # 开启实时日志
debugging ip packet               # IP 包调试(慎用)

7.3 常见问题

问题 可能原因 排查命令
无法上网 网关不对、NAT 未配置 ping 网关 → ping 公网 IP → ping 域名
VLAN 不通 Trunk 未放行、SVI 未创建 display vlan, display ip interface brief
网络慢 环路、带宽不足、错误包 display interface, display logbuffer
路由丢失 邻居中断、配置错误 display ospf peer, display ip routing-table
MAC 漂移 环路、双接同一交换机 display mac-address flapping record

八、选购指南

8.1 交换机选购

场景 推荐配置 品牌
家庭 8口千兆 + 2口 SFP TP-Link、H3C Mini
小型企业 24口千兆 + 4口 SFP+ 三层 H3C、华为、Cisco CBS
中型企业 48口千兆 + 万兆上行 华为 S5735、Cisco Catalyst
数据中心 万兆/25G/100G 华为 CE、Cisco Nexus

8.2 路由器选购

场景 推荐型号
家用 TP-Link AX6000、小米 AX9000
小企业(<50人) H3C ER5200G3、华为 AR161
中企业(50-200人) 华为 AR2220、Cisco ISR4321
大型/分支 华为 AR6510、Cisco ISR4451X

九、总结

知识点 一句话概括
路由器 根据 IP 地址选路,连接不同网络
交换机 根据 MAC 地址转发,连接局域网设备
VLAN 虚拟局域网,隔离广播域
STP 防止环路,保障冗余链路
路由协议 OSPF 用于内网,BGP 用于互联网
NAT 内网私有 IP 映射公网 IP
三层交换 交换机具备路由功能

掌握路由器和交换机的工作原理、配置方法和故障排查技巧,是网络工程师和运维工程师的核心技能。无论是家庭网络优化还是企业级组网,这些知识都是必备基础。