Skip to content

VPN 与 GRE

1. VPN:在公共道路上开辟私人通道

1.1 问题的提出:连接孤岛

想象一下,一个公司在北京和上海分别设有两个办公室。如何安全经济地连接这两个办公室的内网?

  • 方案 A:物理专线。修建私人专属高速公路。优点:极速、安全。缺点:昂贵、部署慢。
  • 方案 B:直接通过互联网。走公共道路。优点:低成本。缺点:不安全、私网地址无法在公网路由。

1.2 VPN 的解决方案

VPN (Virtual Private Network),虚拟专用网络,通过以下特性在公网上构建私有连接:

  1. 隧道技术 (Tunneling):建立虚拟的点对点路径。
  2. 封装 (Encapsulation):将原始私网包装入“保险箱”并贴上公网标签。
  3. 加密 (Encryption):为数据加锁,确保保密性。

2. GRE:通用封装协议

2.1 GRE 的核心思想:“包中包”

GRE (Generic Routing Encapsulation) 将完整的 IP 包(私网包)塞进另一个 IP 包(公网包)中进行传输。

2.2 GRE 封装过程可视化

GRE Encapsulation Stack (封装架构)
Public IP Header
Src: Tunnel Source (e.g. 12.1.1.1)Dst: Tunnel Dest (e.g. 23.1.1.3)Proto: 47 (GRE)
GRE Header
Protocol Type: 0x0800 (IPv4)
Original Private IP Packet
Src: 192.168.1.10Dst: 192.168.2.20
User Data (TCP/UDP/ICMP)...
Delivery HeaderGRE HeaderPayload Packet

2.3 GRE 的优势

  1. 通用性:支持多种协议封装。
  2. 支持组播和广播:允许在隧道上运行 OSPF 等动态路由协议。

3. GRE 的配置与实现

3.1 实验拓扑

Site 1
192.168.1.0/24
ISP / Public Internet
Site 2
192.168.2.0/24
GRE Tunnel (Logical)
💻
1.1
AR1Pub: 12.1.1.1
ISP
AR3Pub: 23.1.1.3
💻
2.2

3.2 配置步骤

  1. 创建虚拟隧道接口
Router Console (AR1)
[AR1] interface Tunnel 0/0/0
[AR1-Tunnel0/0/0] ip address 172.16.13.1 24
[AR1-Tunnel0/0/0] tunnel-protocol gre
[AR1-Tunnel0/0/0] source 12.1.1.1
[AR1-Tunnel0/0/0] destination 23.1.1.3
  1. 配置私网路由 (方案 A:静态路由)
Router Console (AR1)
# 告诉路由器去对端私网走隧道接口
[AR1] ip route-static 192.168.2.0 24 Tunnel 0/0/0
  1. 配置私网路由 (方案 B:动态路由 OSPF)
Router Console (AR1)
[AR1] ospf 1
[AR1-ospf-1] area 0
[AR1-ospf-1-area-0.0.0.0] network 192.168.1.0 0.0.0.255
[AR1-ospf-1-area-0.0.0.0] network 172.16.13.0 0.0.0.255

4. 安全性:GRE over IPsec

GRE 本身不提供加密。标准方案是 GRE over IPsec:先用 GRE 封装以获得路由能力,再用 IPsec 加密整个 GRE 包。

5. 总结

GRE 通过“包中包”机制实现了跨网传输,其对动态路由协议的支持使其在站点互联中极具价值。