admin 发表于 7 天前

GRE VPN 原理配置案例

GRE over IPSec VPN 原理与配置案例

GRE VPN 原理

GRE (Generic Routing Encapsulation) 是一种通用路由封装协议,它允许将一种协议的数据包封装在另一种协议的数据包中传输。GRE VPN 的主要特点:

[*]隧道技术:在两个网络之间建立虚拟点对点连接
[*]协议无关性:可以封装各种协议(IP、IPX等)
[*]简单性:配置相对简单,但缺乏加密等安全特性


通常 GRE 会与 IPSec 结合使用(GRE over IPSec),既利用 GRE 的多协议支持能力,又通过 IPSec 提供加密和认证。

典型配置案例

拓扑结构

[*]总部(HQ):192.168.1.0/24
[*]分支机构(Branch):192.168.2.0/24
[*]两端通过公网互联


配置步骤(Cisco IOS 示例)

1. 配置 GRE 隧道接口

总部路由器配置:
interface Tunnel0
ip address 10.0.0.1 255.255.255.252
tunnel source GigabitEthernet0/0# 公网接口
tunnel destination 203.0.113.5    # 分支公网IP
!
interface GigabitEthernet0/1
ip address 192.168.1.1 255.255.255.0

分支路由器配置:
interface Tunnel0
ip address 10.0.0.2 255.255.255.252
tunnel source GigabitEthernet0/0# 公网接口
tunnel destination 198.51.100.3   # 总部公网IP
!
interface GigabitEthernet0/1
ip address 192.168.2.1 255.255.255.0

2. 配置路由

# 总部
ip route 192.168.2.0 255.255.255.0 Tunnel0

# 分支
ip route 192.168.1.0 255.255.255.0 Tunnel0

3. 添加 IPSec 保护(可选但推荐)

定义感兴趣流量:
access-list 100 permit gre host 198.51.100.3 host 203.0.113.5

配置 IPSec 变换集:
crypto ipsec transform-set MY_SET esp-aes 256 esp-sha-hmac

配置加密映射:
crypto map MY_MAP 10 ipsec-isakmp
set transform-set MY_SET
match address 100

应用加密映射到公网接口:
interface GigabitEthernet0/0
crypto map MY_MAP

验证配置

[*]检查隧道状态:

   show interface tunnel0

[*]检查路由:

   show ip route

[*]测试连通性:

   ping 192.168.2.1 source 192.168.1.1# 从总部ping分支

[*]检查 IPSec SA:

   show crypto isakmp sa
   show crypto ipsec sa

常见问题排查

[*]隧道无法建立:
[*]检查公网可达性
[*]验证隧道源/目的地址配置
[*]检查ACL是否允许GRE流量
[*]隧道建立但无法通信:
[*]检查路由配置
[*]验证隧道接口IP地址配置
[*]检查MTU设置(GRE会增加封装开销)
[*]IPSec不生效:
[*]检查加密ACL是否匹配流量
[*]验证IKE阶段是否成功
[*]检查变换集是否兼容


优化建议

[*]启用隧道接口的keepalive功能
[*]考虑使用动态路由协议(如OSPF或EIGRP)通过隧道
[*]调整MTU和MSS以避免分片
[*]实施适当的QoS策略


GRE VPN 提供了灵活的网络扩展方案,结合IPSec可以满足大多数企业对安全性和功能的需求。
页: [1]
查看完整版本: GRE VPN 原理配置案例