第213篇:分支与总部 IPsec VPN 组网
关键词
分支 VPN、Hub-Spoke、站点到站点、IPsec 隧道、动态 IP、策略模板、路由注入
一、Hub-Spoke 组网模型
1.1 组网拓扑
企业分支通过 IPsec VPN 接入总部的标准组网:
| 总部 (Hub) ┌──────────────┐ └──────┬───────┘ 内网:10.0.0.0/8 | 中心网关 202.1.1.1 | |
|---|---|---|
| │ Internet | ||
| --- | --- | --- |
| ┌──────┴───────┐ ┌───────┴───────┐ ┌───────┴───────┐ | ||
| 分支 A (Spoke) 上海 192.168.1.0/24 网关: 10.1.1.1 | 分支 B (Spoke) 北京 192.168.2.0/24 网关: 10.1.2.1 |
1.2 Hub-Spoke 的优点
Hub-Spoke 的优势:
1. 配置简化
每个分支只需配置到总部的 VPN
分支之间不需要互配
2. 流量汇聚
所有分支通过总部统一访问互联网
便于安全策略统一管理
3. 节省公网 IP
分支可以使用动态 IP(通过 4G/ADSL 拨号)
只有总部需要固定公网 IP
4. 扩展性强
增加分支只需在总部添加配置
不影响已有分支
二、总部(Hub)配置
2.1 策略模板
当分支数量多时,逐个配置对等体效率低。华为防火墙支持IPsec 策略模板,一个模板匹配所有分支:
# IPsec 策略模板(中心站点)
ipsec policy-template SPOKE 1
ike-peer SPOKE_PEER # 关联 IKE 对等体
proposal PROPOSAL_TUNNEL
!
# 动态 IKE 对等体(匹配所有分支)
ike peer SPOKE_PEER
ike-proposal 1
exchange-mode aggressive # 野蛮模式(分支动态 IP)
pre-shared-key Huawei@123
local-id-type name
local-id "headquarter"
remote-id-type name
remote-id "branch_*" # 通配符匹配所有分支 ID
!
# IPsec 提议
ipsec proposal PROPOSAL_TUNNEL
esp authentication-algorithm sha256
esp encryption-algorithm aes-256
encapsulation-mode tunnel
!
# 应用策略模板到接口
interface GigabitEthernet0/0/0
ipsec policy-template SPOKE # 应用模板(非固定策略)
2.2 路由注入
分支子网路由需要注入到总部的路由表:
# 分支子网通过 IPsec 自动注入路由(使用动态路由协议)
# 方式一:通过 IPsec 虚拟隧道接口运行 OSPF
interface Tunnel0/0/0
ip address 10.255.255.1 255.255.255.252 # Hub 侧隧道 IP
tunnel-protocol ipsec
ipsec policy POLICY_HUB
!
ospf 1
area 0.0.0.0
network 10.255.255.0 0.0.0.255 # 隧道接口宣告
network 10.0.0.0 0.255.255.255 # 总部内网宣告
# 方式二:静态路由 + NQA 联动
ip route-static 192.168.1.0 255.255.255.0 Tunnel0/0/0
ip route-static 192.168.2.0 255.255.255.0 Tunnel0/0/0
ip route-static 192.168.3.0 255.255.255.0 Tunnel0/0/0
三、分支(Spoke)配置
3.1 分支侧配置
# 分支侧(动态 IP 的公网口)
ike proposal 1
encryption-algorithm aes-256
dh group14
authentication-algorithm sha256
authentication-method pre-share
!
ike peer HEADQUARTER
ike-proposal 1
exchange-mode aggressive
pre-shared-key Huawei@123
local-id-type name
local-id "branch_shanghai" # 分支唯一 ID
remote-id-type name
remote-id "headquarter" # 总部 ID
remote-address 202.1.1.1 # 总部固定 IP
!
ipsec proposal PROPOSAL_TUNNEL
esp authentication-algorithm sha256
esp encryption-algorithm aes-256
encapsulation-mode tunnel
!
acl number 3001
rule 5 permit ip source 192.168.1.0 0.0.0.255 destination 10.0.0.0 0.255.255.255
!
ipsec policy POLICY_SPOKE 10 isakmp
security acl 3001
ike-peer HEADQUARTER
proposal PROPOSAL_TUNNEL
!
interface GigabitEthernet0/0/0
ipsec policy POLICY_SPOKE
!
# 默认路由指向总部
ip route-static 0.0.0.0 0.0.0.0 GigabitEthernet0/0/0
3.2 分支多链路备份
# 主链路:光纤宽带
# 备份链路:4G LTE
# 主 IPsec 策略
ipsec policy POLICY_SPOKE 10 isakmp
security acl 3001
ike-peer HEADQUARTER_MAIN
proposal PROPOSAL_TUNNEL
!
# 备份 IPsec 策略(优先级 20,高于 10 的优先级数字 = 低优先级)
ipsec policy POLICY_SPOKE 20 isakmp
security acl 3001
ike-peer HEADQUARTER_BACKUP
proposal PROPOSAL_TUNNEL
!
ike peer HEADQUARTER_MAIN
remote-address 202.1.1.1
pre-shared-key Huawei@123
!
ike peer HEADQUARTER_BACKUP
remote-address 202.1.1.1
local-address 10.10.10.2 # 4G 接口地址
pre-shared-key Huawei@123
!
# 策略路由:主链路故障时切换到 4G
policy-based-route PBR permit node 5
if-match acl 3001
apply ipsec-policy POLICY_SPOKE_MAIN
!
policy-based-route PBR permit node 10
if-match acl 3001
apply ipsec-policy POLICY_SPOKE_BACKUP
四、分支间互访
4.1 分支互访的流量路径
分支 A → 分支 B 的流量路径(通过总部转发):
分支 A (192.168.1.0/24)
│
│ IPsec 隧道
↓
总部 Hub (10.0.0.0/8)
│ 路由:192.168.2.0/24 → Tunnel→分支B
│
│ IPsec 隧道
↓
分支 B (192.168.2.0/24)
优点:无需分支间独立建隧道
缺点:流量经总部转发,增加总部带宽压力
分支间时延增加(一跳变两跳)
4.2 全互联(Full Mesh)方案
当分支间互访流量大时,可建立 Full Mesh:
┌──────────┐
│ 总部 Hub │
└────┬─────┘
│
| ┌────┴────┐ ┌────┴────┐ ┌────┴────┐ | ||||
| 分支 A | ════════ 直连隧道 | 分支 B | ══════════ 直连隧道 | 分支 C |
Full Mesh 的优点: - 分支间低时延(直连) - 总部带宽压力小
缺点: - 配置复杂度 O(N²) - 每个分支需要 N-1 条隧道 - 建议:分支数 > 10 时不使用 Full Mesh
五、VPN 监控与维护
5.1 查看 VPN 状态
# 查看 IPsec 隧道状态
display ipsec sa
Interface: GigabitEthernet0/0/0
Path MTU: 1500
Path MTU aging time: 10 min
# IPsec SA (tunnel mode)
SA index: 1
SPI: 12345678 (0x00bc614e)
Conn ID: 1
Encryption: aes-256
Authentication: sha256
Life time: 3600 seconds
Remaining: 2345 seconds
Anti-replay window: 64
# 查看 IKE SA
display ike sa
Conn-ID Peer VPN Flag Status Encr Hash
1 202.1.1.1 public RD ST AES256 SHA256
2 10.1.2.1 public RD ST AES256 SHA256
5.2 故障排查
# DPD(Dead Peer Detection)检测对端是否在线
display ike dpd
Peer: 202.1.1.1
DPD mode: on-demand
DPD retransmit interval: 10 seconds
DPD retry limit: 3 times
# 手动触发 DPD
reset ike sa peer 202.1.1.1
# 查看 VPN 隧道流量统计
display ipsec statistics
ESP Encrypted packets: 1567890
ESP Decrypted packets: 1543210
ESP Authentication errors: 0
ESP Replay errors: 0
六、配置案例汇总
6.1 中心站点简化配置
# 中心站点 Hub(100 个分支的简化配置)
#
ike proposal 1
authentication-method pre-share
encryption-algorithm aes-256
dh group14
authentication-algorithm sha256
!
# 一个模板匹配所有分支
ike peer BRANCH
exchange-mode aggressive
pre-shared-key CommonKey@Huawei
local-id-type name
local-id "HQ"
remote-id-type name
remote-id "branch_*"
!
ipsec proposal TUNNEL
esp authentication-algorithm sha256
esp encryption-algorithm aes-256
!
ipsec policy-template BRANCH_TEMPLATE 1
ike-peer BRANCH
proposal TUNNEL
!
interface GigabitEthernet0/0/0
ip address 202.1.1.1 255.255.255.0
ipsec policy-template BRANCH_TEMPLATE
6.2 分支站点配置
# 分支配置(以 192.168.1.0/24 为例)
#
ike proposal 1
authentication-method pre-share
encryption-algorithm aes-256
dh group14
authentication-algorithm sha256
!
ike peer HQ
exchange-mode aggressive
pre-shared-key CommonKey@Huawei
local-id-type name
local-id "branch_shanghai"
remote-id-type name
remote-id "HQ"
remote-address 202.1.1.1
!
ipsec proposal TUNNEL
esp authentication-algorithm sha256
esp encryption-algorithm aes-256
!
acl number 3001
rule 5 permit ip source 192.168.1.0 0.0.0.255 destination 10.0.0.0 0.255.255.255
!
ipsec policy 1 isakmp
security acl 3001
ike-peer HQ
proposal TUNNEL
!
interface GigabitEthernet0/0/0
ipsec policy 1
!
ip route-static 0.0.0.0 0.0.0.0 GigabitEthernet0/0/0
七、总结
| 知识点 | 核心要点 |
|---|---|
| Hub-Spoke | 所有分支通过总部 Hub 互联 |
| 策略模板 | 中心站点用模板匹配所有分支 |
| 动态 IP | 野蛮模式 + ID 匹配,分支可用动态 IP |
| 分支间互访 | 经总部转发或 Full Mesh |
| 多链路备份 | 主链路光纤 + 4G LTE 备份 |
| DPD | 对端状态检测,自动重建故障隧道 |
八、思考
- Hub-Spoke 组网中,为什么总部推荐使用策略模板而不是逐个配置对等体?
- 为什么分支到总部的 IPsec VPN 通常使用野蛮模式而非主模式?
- 如果分支侧的公网 IP 是动态变化的,对 VPN 隧道有什么影响?IKE 如何应对?
- 分支 A 和分支 B 互相访问时,流量路径是怎样的?这种方式有什么优缺点?
- 当总部新增一个分支机构时,总部和分支需要分别修改哪些配置?
下篇预告:第214篇《L2TP over IPsec 远程拨号》——结合 L2TP 和 IPsec 的远程接入方案,适用于移动办公和拨号场景。