本指南提供了关于如何配置 Cisco Meraki MX 设备以建立连接到 Cloudflare WAN 的 IPsec VPN 隧道的逐步说明。它适用于熟悉 Cisco Meraki 管理且拥有处于活动状态的 Cloudflare WAN 订阅的网络工程师。
| 字段 | 值 |
|---|---|
| 厂商 | Cisco Meraki |
| 型号 | MX68 |
| 版本 | MX 19.2.7 |
| 字段 | 值 |
|---|---|
| 流量选择标准 | 基于路由的 VPN |
| 路由 | 静态 |
| 冗余隧道 | 是 |
| 隧道负载均衡 | 主动/备用 |
| IKE 版本 | IKEv2 |
| 身份验证 | 预共享密钥 |
| 防重放保护 | 已启用 |
| NAT 穿越 (NAT-T) | 未测试 |
| NAT-T 端口 | 不适用 |
| 阶段 1 — DH 组 | 组 14 |
| 阶段 1 — 加密 | AES-256-CBC |
| 阶段 1 — 身份验证/完整性 | SHA-256 |
| 阶段 2 — DH 组 | 组 14 |
| 阶段 2 — 传输 | ESP |
| 阶段 2 — 加密 | AES-256-CBC |
请替换下面示例中的所有对象名称和 IP 地址以匹配您的环境。
| 属性 | 值/地址 |
|---|---|
| 名称(必填) | CF_WAN_TUN_01 |
| 描述 | — |
| IPv4 接口地址(必填) | 169.254.250.0/31 |
| IPv6 接口地址 | — |
| 客户方端点 | 203.0.113.100 |
| Cloudflare 端点 | 162.159.135.1 |
| 隧道健康检查 | 是 |
| 速率 | Low |
| 类型 | Request |
| 方向 | Bidirectional |
| 目标 | 自定义 (Custom) |
| 目标地址 | 192.168.125.1(MX LAN 接口 IP) |
| 开启重放保护 | 是 |
| 自动回程路由 | 是 |
创建隧道后获取 IKE 身份和预共享密钥:
| 属性 | 值/地址 |
|---|---|
| FQDN ID | bf6c493d03<REDACTED>.ipsec.cloudflare.com |
| 预共享密钥 | Cloudflare-WAN-T1-PSK-1234! |
| 属性 | 值/地址 |
|---|---|
| 名称(必填) | CF_WAN_TUN_02 |
| 描述 | — |
| IPv4 接口地址(必填) | 169.254.250.2/31 |
| IPv6 接口地址 | — |
| 客户方端点 | 203.0.113.100 |
| Cloudflare 端点 | 172.64.135.1 |
| 隧道健康检查 | 是 |
| 速率 | Low |
| 类型 | Request |
| 方向 | Bidirectional |
| 目标 | 自定义 (Custom) |
| 目标地址 | 192.168.125.1(MX LAN 接口 IP) |
| 开启重放保护 | 是 |
| 自动回程路由 | 是 |
创建隧道后获取 IKE 身份和预共享密钥:
| 属性 | 值/地址 |
|---|---|
| FQDN ID | 0287844e9d<REDACTED>.ipsec.cloudflare.com |
| 预共享密钥 | Cloudflare-WAN-T2-PSK-1234! |
模式:已路由 (Routed)
| WAN 接口(端口 1) | 隧道 1/2 | 隧道 2/2 |
|---|---|---|
| WAN 接口 | WAN 1 | WAN 1 |
| IP 地址 | 203.0.113.100/24 | 203.0.113.100/24 |
| LAN 接口(端口 3) | 隧道 1/2 | 隧道 2/2 |
|---|---|---|
| LAN 接口 | LAN | LAN |
| IP 地址 | 192.168.125.1/24 | 192.168.125.1/24 |
- 固件先决条件:此配置所需的最低固件版本为 MX 19.2.7。
- 硬件兼容性:较旧的 Meraki 硬件在物理上可能无法运行 19.2.7。此架构需要基于路由的 VPN (Route-Based VPN) 支持。请参阅产品固件限制 ↗以确定您的 MX 平台是否支持固件版本 19.2.7 或更高版本。
- Active/Standby(主动/备用) 配置:与非 Meraki VPN 连接相关联的冗余隧道是主动/备用的。两条隧道都已建立,但 Meraki 仅通过主 IPsec VPN 对端路由流量,并根据隧道监控探测动态地故障转移到备 IPsec VPN 对端。
- Anycast 和隧道冗余:尽管 MX 平台上的 IPsec VPN 隧道具有主动/备用特性,但高可用性仍维持在网络层,因为 Cloudflare 远程端点 IP 是通过 BGP Anycast 在 Cloudflare 全球网络中宣告的,提供了固有的地理和逻辑冗余。
- 基于路由的 VPN 支持:虽然通常与特定的云集成相关联,但 19.2.7 版本普遍支持适用于第三方设备(包括 Cloudflare WAN)的基于路由的 IPsec VPN。
- 冗余和多上行链路:本文件专门介绍主动/备用隧道配置。
- 多上行链路 IPsec VPN:Meraki 多上行链路 IPsec VPN ↗ 功能超出了本指南的范围。
- 防重放保护:Cloudflare 建议禁用防重放保护,以获得 Cloudflare WAN 的最佳性能。Cisco Meraki MX 平台不允许管理员禁用此功能。
- 这是 Meraki 平台的已知限制。
- 在底层网络(ISP 网络)上存在高抖动或无序分组递送的环境中,这可能会导致 IPsec VPN 隧道的 MX 侧间歇性丢包。
- MSS 夹紧(MSS Clamping):Cloudflare 建议使用特定的最大分段大小 (MSS)夹紧值,以适应 IPsec 开销并防止分段。
- Meraki 仪表板未提供用户可访问的字段来修改第三方 VPN 隧道的 MSS 夹紧值。
- 客户必须联系 Meraki 技术支持,请求针对特定网络或隧道手动对后端 MSS 值进行修改(大约为 1360;该值可能有所不同)。
- ISP 范围:提供的配置已针对单个互联网服务提供商 (ISP) 进行了验证。该逻辑可以扩展以适应冗余 ISP,但多宿主配置超出了本指南的范围。
- 此配置需要统一路由 (Unified Routing) 数据平面以支持自动回程路由 (Automatic Return Routing)。
- 您已在 Cloudflare 仪表板中配置了 IPsec 隧道和静态路由。
- 您已使用 Cloudflare 仪表板获取了本地标识符(FQDN/主机名)并为每个 IPsec 隧道生成了预共享密钥。
- 您了解MSS 夹紧的重要性,并能根据穿越 Cloudflare WAN IPsec 隧道的流量流向对其进行调整。
在继续进行 Meraki 配置之前,需要来自 Cloudflare 配置的以下详细信息:
- IPv4 接口地址值(采用无类别域间路由 (CIDR) 表示法)
- Cloudflare Anycast IP
- 本地 ID(FQDN/主机名)
- 预共享密钥
- 远程子网
| 属性 | 值/地址 | Meraki — 适用于 | 需要以 |
|---|---|---|---|
| IPv4 接口地址 | 169.254.250.0/31 | 私有子网 | 支持 Cloudflare 隧道健康检查 |
| Cloudflare 端点 | 162.159.135.1 | 公共 IP 或主机名 | 隧道对端 IP — 主 IPsec 对端 |
| 162.159.135.1 | 远程 ID | IKE 远程 ID — 主 IPsec 对端 | |
| FQDN ID | bf6c493d03<REDACTED>.ipsec.cloudflare.com |
本地 ID | IKE 本地 ID — 主 IPsec 对端 |
| 预共享密钥 | Cloudflare-WAN-T1-PSK-1234! |
共享密钥 | 共享密钥 — 主 IPsec 对端 |
| 远程子网 | 172.16.10.0/24, 172.16.11.0/24 | 私有子网 | 为东西向流量流添加路由 |
| 属性 | 值/地址 | Meraki 设置 | 需要以 |
|---|---|---|---|
| IPv4 接口地址 | 169.254.250.2/31 | 私有子网 | 支持 Cloudflare 隧道健康检查 |
| Cloudflare 端点 | 172.64.135.1 | 公共 IP 或主机名 | 隧道对端 IP — 备 IPsec 对端 |
| 172.64.135.1 | 远程 ID | IKE 远程 ID — 备 IPsec 对端 | |
| FQDN ID | 0287844e9d<REDACTED>.ipsec.cloudflare.com |
本地 ID | IKE 本地 ID — 备 IPsec 对端 |
| 预共享密钥 | Cloudflare-WAN-T2-PSK-1234! |
共享密钥 | 共享密钥 — 备 IPsec 对端 |
| 远程子网 | 172.16.10.0/24, 172.16.11.0/24 | 私有子网 | 为东西向流量流添加路由 |
在 MX 平台中,“私有子网”是指 MX 设备通过 IPsec 隧道路由的远程网络。
本文档假设以下子网为远程子网:
- 172.16.10.0/24
- 172.16.11.0/24
MX 平台使用隧道监控来实现主备 IPsec VPN 隧道之间的自动故障转移。隧道监控检测通过隧道的连接(启用 BGP 的隧道不支持此功能)。隧道监控独立于死对端检测(确定 IPsec 隧道状态)运行。
除死对端检测外,还使用隧道健康探测来确定 IPsec 隧道远程侧资源的整体可达性。
Meraki 保留 IP 地址 192.0.2.3/32(TEST-NET-1 的一部分,定义在 RFC 5737 ↗ 中)作为隧道监控探测的源 IP。详情请参阅 Primary and secondary IPsec tunnels ↗。
由于 192.0.2.3/32 超出了传统的 RFC 1918 ↗ 地址空间,您必须将其添加到与您的 Cloudflare 账户关联的统一路由 (Unified Routing) 数据平面中。
请联系 Cloudflare 以请求协助将 internal_authorized_prefixes 选项添加到您的账户,并包含 192.0.2.3/32。
定义一个 HTTP 策略,以允许隧道监控探测源 IP 地址到达 IP/URL(HTTP — 端口 80/tcp)。
在 Cloudflare 仪表板中,转到 Zero Trust > Traffic policies(流量策略) > Firewall policies(防火墙策略) > HTTP。
- 添加新规则。
- 对于 Policy Name(策略名称),输入
Meraki Tunnel Health Checks - HTTP Policy。 - 构建类型为 **Traffic(流量)**的表达式。
- 对于 Selector(选择器),输入
Source Internal IP is 192.0.2.3。 - 对于 Action(操作),选择 Do Not Inspect(不检测)。
将此策略置于 HTTP 策略规则库的顶部或靠近顶部的位置。
下图显示了来自隧道监控保留 IP (192.0.2.3/32) 的流量在穿过 IPsec 隧道到达 Cloudflare WAN,然后通过 Cloudflare Gateway 出口到互联网时的流量流向。响应路径是完全对称的。
flowchart LR
accTitle: Meraki tunnel monitoring with Cloudflare WAN
accDescr: Traffic flow from the tunnel monitoring source IP through the Meraki MX, IPsec tunnels, Cloudflare WAN, and Cloudflare Gateway to an HTTP target on the public internet.
subgraph CPE["Cisco Meraki (CPE) Active/Standby Model"]
direction TB
FW["Cisco Meraki MX
WAN: 203.0.113.100/24
---
LAN: 192.168.125.1/24
---
LAN Subnet: 192.168.125.0/24"]
L7_Health_Check["L7 Health Check
---
Internal Src IP: 192.0.2.3/32"]
end
subgraph T1["Active - IPsec Tunnel 1"]
direction LR
T1_CPE["CPE VTI 1
Internal to MX"]
T1_CF["Cloudflare VTI 1
169.254.250.0/31"]
end
subgraph T2["Standby - IPsec Tunnel 2"]
direction LR
T2_CPE["CPE VTI 2
Internal to MX"]
T2_CF["Cloudflare VTI 2
169.254.250.2/31"]
end
subgraph CF["Cloudflare WAN"]
direction TB
EP1["Anycast Endpoint 1
162.159.135.1"]
EP2["Anycast Endpoint 2
172.64.135.1"]
end
subgraph CF_GW["Cloudflare Gateway"]
direction TB
GW["Policy
Src IP 192.0.2.3
Allow"]
end
L7HCT["HTTP Target"]
T1_CPE === T1_CF
T2_CPE === T2_CF
FW <==> T1_CPE & T2_CPE
T1_CF <==> EP1
T2_CF <==> EP2
L7_Health_Check -.-> FW
FW -.-> T1_CPE
FW -.-> T2_CPE
T1_CPE -.-> T1_CF
T2_CPE -.-> T2_CF
T1_CF -.-> EP1
T2_CF -.-> EP2
EP1 -.-> GW
EP2 -.-> GW
GW -.-> L7HCT
FW@{ shape: stadium}
T1_CPE@{ shape: stadium}
T1_CF@{ shape: stadium}
T2_CPE@{ shape: stadium}
T2_CF@{ shape: stadium}
EP1@{ shape: stadium}
EP2@{ shape: stadium}
GW@{ shape: stadium}
Meraki 配置管理基于两层层次结构。对象及其关联设置被定义为:
- Organization-wide(组织范围):为整个租户定义一次的全局对象。
- Network-specific(网络特定):应用于单个站点或设备的设置。
非 Meraki VPN 配置是组织层级的对象。当特定 MX 设备与相应的网络标签 (Network Tag) 关联时,配置会被推送至这些设备。这种继承模型是一个关键因素:标签控制了哪些物理硬件尝试建立到 Cloudflare 的隧道。
Orbital Path Ventures 是整个配置中引用的一家虚拟公司,代表 Meraki 仪表板中定义的一个组织。
该公司在其德克萨斯州奥斯汀的分支机构管理着一台 Meraki MX 设备,该设备与名为 Orbital Path Ventures - Austin TX 的网络相关联。
名为 Orbital_Path_AUS_Office 的网络标签与 Orbital Path Ventures - Austin TX 网络相关联。
| 组织 | 网络 | 标签 |
|---|---|---|
| Orbit Path Ventures | Orbit Path Ventures - Austin TX | Orbital_Path_AUS_Office |
转到 Network(网络) > Networks(网络),然后选择该组织。
- Orbit Path Ventures(替换为您的组织名称)。
- Network(网络):
Orbit Path Ventures - Austin TX(替换为您的网络名称)。 - Tag(标签):
Orbital_Path_AUS_Office(替换为与网络名称关联的标签)。
在与 Cloudflare WAN 集成时,Meraki 网络标签决定了哪些设备继承 Cloudflare 隧道配置。
非 Meraki VPN 配置是一个全局对象:任何带有相关网络标签的 MX 设备都会尝试使用相同的 IPsec VPN 对端建立到 Cloudflare 的隧道。
为确保可预测的流量流向并防止路由冲突,Cloudflare 建议采用以下最佳实践:
- 严格的隧道关联:在 Cloudflare 中定义的冗余 IPsec 隧道对与发起这些隧道的特定 MX 设备之间保持 1 对 1 的映射关系。
- 站点特定的网络标签:使用细粒度的、站点特定的标签(例如
Orbital_Path_AUS_Office),而不是宽泛的、通用的标签,以确保只有预期的 MX 继承隧道配置。 - 唯一的 IPsec VPN 对端对象:在组织层级为不同的物理地理位置创建不同的非 Meraki VPN 对端对象。使用 **Availability(可用性)**选项来建立 1 对 1 映射。
来自 Cloudflare WAN 的回程流量是根据 Cloudflare 虚拟网络转发表进行引导的(详情请参阅 流量引导 (Traffic steering))。路由是基于 MX LAN 前缀和相应的 IPsec 隧道指定的。
基于源的默认路由 ↗允许管理员创建基于源的默认路由,并指定下一跳为通过 Auto VPN 连接的安全设备或 LAN 上的设备。
基于源的默认路由不能与非 Meraki VPN 端点(包括 Cloudflare WAN)结合使用。
在 IPsec VPN 对端配置中定义私有子网,以控制 MX 设备如何引导流量通过各自的隧道。
在 IPsec VPN 对端配置中定义为私有子网的任何 IP 前缀,都会控制哪些流量通过主备 VPN 隧道进行路由。它们在对应于给定 MX 设备的路由表中是可见的。
本文档考虑了三种路由拓扑结构:
- 仅限东西向:
- 私有流量通过 Cloudflare WAN。
- 互联网流量通过本地互联网。
- 仅限通过 Cloudflare Gateway 的互联网:
- 仅通过 Cloudflare WAN 路由互联网流量。
- 所有流量通过 Cloudflare WAN 和 Gateway:
- 东西向和互联网流量均通过 Cloudflare WAN 路由。
IPsec VPN 对端部分涵盖了所有这三种拓扑结构。
转到 Security & SD-WAN(安全与 SD-WAN) > Site-to-site VPN(站点到站点 VPN)。
选择 Hub (Mesh)(中心 (网状))。
为 MX 设备背后的本地网络启用 VPN 模式。
从:
| 名称 | VPN 模式 | 子网 | 上行链路 |
|---|---|---|---|
| Default | Disabled | 192.168.125.0/24 | — |
到:
| 名称 | VPN 模式 | 子网 | 上行链路 |
|---|---|---|---|
| Default | Enabled(已启用) | 192.168.125.0/24 | — |
转到 Security & SD-WAN(安全与 SD-WAN) > Site-to-site VPN(站点到站点 VPN) > Organization Wide Settings(组织范围设置)。
配置 Layer 7 健康检查 HTTP 探测,MX 平台会使用它来确定通过 IPsec VPN 隧道的资源可达性:
-
选择 Configure Health Checks(配置健康检查)。
-
提供以下值:
名称 端点 Google http://www.google.com -
选择 OK(确定)。
为以下拓扑结构提供了 IPsec VPN 对端配置:
- 仅限东西向流量
- 仅限通过 Cloudflare Gateway 的互联网流量
- 所有流量通过 Cloudflare WAN 和 Gateway
通过 Cloudflare WAN 路由东西向流量需要:
- 在 Cloudflare 侧,通过
CF_WAN_TUN_01和CF_WAN_TUN_02指定去往 MX 设备背后 LAN 子网 (192.168.125.0/24) 的路由。 - 在 Meraki 主备 IPsec VPN 对端上,将远程子网 (
172.16.10.0/24和172.16.11.0/24) 指定为私有子网。 - 在 Meraki 主备 IPsec VPN 对端上,将
CF_WAN_TUN_01和CF_WAN_TUN_02上指定的 IPv4 接口地址前缀 (169.254.250.0/31和169.254.250.2/31) 指定为私有子网。
这可确保:
- Cloudflare 通过
CF_WAN_TUN_01和CF_WAN_TUN_02路由去往 MX 设备背后 LAN 子网的流量。 - MX 设备分别通过主备 IPsec VPN 对端,显式路由去往远程子网 (
172.16.10.0/24和172.16.11.0/24) 的流量。 - MX 设备分别通过主备 IPsec VPN 对端,显式路由与 Cloudflare 隧道健康检查相关联的 ICMP 答复 (Reply) 数据包,去往
CF_WAN_TUN_01和CF_WAN_TUN_02上指定的 IPv4 接口地址 (169.254.250.0/31和169.254.250.2/31)。 - 来自 MX 设备背后 LAN 子网的互联网流量通过 WAN 上行链路进行路由。
- MX 设备通过 WAN 上行链路建立到 Cloudflare 端点 (
162.159.135.1和172.64.135.1) 的 IPsec 隧道。
配置以下内容:
Cloudflare IPsec 隧道 — 自动回程路由:
| 隧道 | 自动回程路由 |
|---|---|
| CF_WAN_TUN_01 | Disabled |
| CF_WAN_TUN_02 | Disabled |
Cloudflare 路由:
| 前缀 | 描述 | 下一跳 | 优先级 | 区域代码 | 类型 |
|---|---|---|---|---|---|
| 192.168.125.0/24 | CF_WAN_TUN_01 | CF_WAN_TUN_01 | 100 | 所有区域 | 静态 |
| 192.168.125.0/24 | CF_WAN_TUN_02 | CF_WAN_TUN_02 | 100 | 所有区域 | 静态 |
Meraki 私有子网:
| 私有子网 | 范围 |
|---|---|
| 172.16.10.0/24 | 远程站点 |
| 172.16.11.0/24 | 远程站点 |
| 169.254.250.0/31 | CF_WAN_TUN_01 — 隧道健康检查 ICMP 答复数据包 |
| 169.254.250.2/31 | CF_WAN_TUN_02 — 隧道健康检查 ICMP 答复数据包 |
-
选择 + Add a peer(添加对端)。
-
提供以下值:
属性 值 Name cf-wan-tun-01IKE Version IKEv2 Public IP or Hostname 162.159.135.1 Local ID bf6c493d03<REDACTED>.ipsec.cloudflare.comRemote ID — Shared Secret Cloudflare-WAN-T1-PSK-1234!Routing Static Private Subnets 169.254.250.0/31, 169.254.250.2/31, 172.16.10.0/24, 172.16.11.0/24 Availability Orbital_Path_AUS_OfficeTunnel Monitoring Google Health Check Failover directly to internet — IPsec Policy — Preset Custom Phase 1 — Encryption AES 256 Phase 1 — Authentication SHA256 Phase 1 — Pseudo-Random Function SHA256 Phase 1 — Diffie-Hellman group 14 Phase 1 — Lifetime (sec) 28800 Phase 2 — Encryption AES256 Phase 2 — Authentication SHA256 Phase 2 — PFS Group 14 Phase 2 — Lifetime (sec) 28800 -
选择 Save(保存)。
-
选择设置列中的
---图标。 -
选择 + Add secondary peer(添加次要对端)。
-
不要选择 Inherit primary peer configurations(继承主要对端配置)。这可确保 Public IP or Hostname、Local ID、Remote ID 和 Shared secret 配置有成功协商 IPsec 隧道
CF_WAN_TUN_02所需的设置。 -
提供以下值:
属性 值 Name cf-wan-tun-02IKE Version IKEv2 (继承) Public IP or Hostname 172.64.135.1 Local ID 0287844e9d<REDACTED>.ipsec.cloudflare.comRemote ID 172.64.135.1 Shared Secret Cloudflare-WAN-T2-PSK-1234!Routing Static (继承) Private Subnets 169.254.250.0/31, 169.254.250.2/31, 172.16.10.0/24, 172.16.11.0/24 (继承) Availability Orbital_Path_AUS_Office(继承)Tunnel Monitoring Google Health Check Failover directly to internet — IPsec Policy — Preset Custom Phase 1 — Encryption AES 256 Phase 1 — Authentication SHA256 Phase 1 — Pseudo-Random Function SHA256 Phase 1 — Diffie-Hellman group 14 Phase 1 — Lifetime (sec) 28800 Phase 2 — Encryption AES256 Phase 2 — Authentication SHA256 Phase 2 — PFS Group 14 Phase 2 — Lifetime (sec) 28800 -
选择 Save(保存)。
确认 MX 设备路由表包含了在主备 IPsec VPN 对端配置中定义的私有子网路由。
转到 Security & SD-WAN(安全与 SD-WAN) > Monitor(监控) > Route table(路由表)。
Meraki 路由表反映了通过 cf-wan-tun-01 和 cf-wan-tun-02 的路由,如下所示:
| 状态 | 版本 | 子网 | 名称 | VLAN | 下一跳 | 目的地 | 类型 |
|---|---|---|---|---|---|---|---|
| — | 4 | 0.0.0.0/0 | Default | — | — | WAN uplink | 默认 WAN 路由 |
| — | 4 | 169.254.250.0/31 | cf-wan-tun-01 | — | cf-wan-tun-01 | — | IPsec 对端 |
| — | 4 | 169.254.250.0/31 | cf-wan-tun-02 | — | cf-wan-tun-02 | — | IPsec 对端 |
| — | 4 | 169.254.250.2/31 | cf-wan-tun-01 | — | cf-wan-tun-01 | — | IPsec 对端 |
| — | 4 | 169.254.250.2/31 | cf-wan-tun-02 | — | cf-wan-tun-02 | — | IPsec 对端 |
| — | 4 | 172.16.10.0/24 | cf-wan-tun-01 | — | cf-wan-tun-01 | — | IPsec 对端 |
| — | 4 | 172.16.10.0/24 | cf-wan-tun-02 | — | cf-wan-tun-02 | — | IPsec 对端 |
| — | 4 | 172.16.11.0/24 | cf-wan-tun-01 | — | cf-wan-tun-01 | — | IPsec 对端 |
| — | 4 | 172.16.11.0/24 | cf-wan-tun-02 | — | cf-wan-tun-02 | — | IPsec 对端 |
| 🟢 | 4 | 192.168.125.0/24 | LAN | 1 | 192.168.125.1 | 192.168.125.1 | 本地 VLAN |
Meraki 使用隧道监控来确定何时自动故障转移到备 IPsec VPN 对端。Meraki 使用死对端检测 (Dead Peer Detection) 来确定 IPsec 隧道的整体健康状况。
非 Meraki VPN 对端支持主动/备用模式。流量通过 cf-wan-tun-01 发送,直到发生故障转移事件,此时 cf-wan-tun-02 变为活动状态。一旦 cf-wan-tun-01 的隧道重新连接,流量就会动态地切回 cf-wan-tun-01。
故障转移测试表明,流量可能会中断几秒钟。Cloudflare 观察到一些故障转移事件需要 15 到 20 秒,但这些情况很少见。
Cloudflare 隧道健康检查显示标记为备用的隧道上出现 100% 的失败。这可确保流量仅通过活动隧道进行引导。
| 活动对端 | 隧道健康状况 | |
|---|---|---|
| 主 IPsec VPN 对端 | CF_WAN_TUN_01: 🟢 0% | CF_WAN_TUN_02: 🔴 100% |
| 备 IPsec VPN 对端 | CF_WAN_TUN_01: 🔴 100% | CF_WAN_TUN_02: 🟢 0% |
使用 Meraki 仪表板确定 IPsec 隧道的状况:
- 转到 Security & SD-WAN(安全与 SD-WAN) > Monitor(监控) > VPN Status(VPN 状态)。
- 滚动到 **Overview(概览)**部分。
- 选择标记为 2 IPsec peers 的筛选器。
活动隧道:cf-wan-tun-01:
| 状态 | 名称 | 公共 IP | 子网 | 隧道监控 |
|---|---|---|---|---|
| 🟢 IPsec | cf-wan-tun-01 | 162.159.135.1 | 169.254.250.0/31 | Details(链接) |
| 🟢 健康检查 | 169.254.250.2/31 | |||
| 172.16.10.0/24 | ||||
| 172.16.11.0/24 | ||||
| 🟢 IPsec | cf-wan-tun-02 | 172.64.135.1 | 169.254.250.0/31 | Details(链接) |
| 🟢 健康检查 | 169.254.250.2/31 | |||
| 172.16.10.0/24 | ||||
| 172.16.11.0/24 |
活动隧道:cf-wan-tun-02:
| 状态 | 名称 | 公共 IP | 子网 | 隧道监控 |
|---|---|---|---|---|
| 🟢 IPsec | cf-wan-tun-01 | 162.159.135.1 | 169.254.250.0/31 | Details(链接) |
| 🔴 健康检查 | 169.254.250.2/31 | |||
| 172.16.10.0/24 | ||||
| 172.16.11.0/24 | ||||
| 🟢 IPsec | cf-wan-tun-02 | 172.64.135.1 | 169.254.250.0/31 | Details(链接) |
| 🟢 健康检查 | 169.254.250.2/31 | |||
| 172.16.10.0/24 | ||||
| 172.16.11.0/24 |
活动隧道:cf-wan-tun-01:
| 状态 | 名称 | 公共 IP | 子网 | 隧道监控 |
|---|---|---|---|---|
| 🟢 IPsec | cf-wan-tun-01 | 162.159.135.1 | 0.0.0.0/0 | Details(链接) |
| 🟢 健康检查 | ||||
| 🟢 IPsec | cf-wan-tun-02 | 172.64.135.1 | 0.0.0.0/0 | Details(链接) |
| 🟢 健康检查 |
活动隧道:cf-wan-tun-02:
| 状态 | 名称 | 公共 IP | 子网 | 隧道监控 |
|---|---|---|---|---|
| 🟢 IPsec | cf-wan-tun-01 | 162.159.135.1 | 0.0.0.0/0 | Details(链接) |
| 🔴 健康检查 | ||||
| 🟢 IPsec | cf-wan-tun-02 | 172.64.135.1 | 0.0.0.0/0 | Details(链接) |
| 🟢 健康检查 |
活动隧道:cf-wan-tun-01:
| 状态 | 名称 | 公共 IP | 子网 | 隧道监控 |
|---|---|---|---|---|
| 🟢 IPsec | cf-wan-tun-01 | 162.159.135.1 | 0.0.0.0/0 | Details(链接) |
| 🟢 健康检查 | ||||
| 🟢 IPsec | cf-wan-tun-02 | 172.64.135.1 | 0.0.0.0/0 | Details(链接) |
| 🟢 健康检查 |
活动隧道:cf-wan-tun-02:
| 状态 | 名称 | 公共 IP | 子网 | 隧道监控 |
|---|---|---|---|---|
| 🟢 IPsec | cf-wan-tun-01 | 162.159.135.1 | 0.0.0.0/0 | Details(链接) |
| 🔴 健康检查 | ||||
| 🟢 IPsec | cf-wan-tun-02 | 172.64.135.1 | 0.0.0.0/0 | Details(链接) |
| 🟢 健康检查 |
查看 MX 路由表以确定哪些流量是通过 IPsec 隧道路由的,哪些是直接进行互联网路由的。
转到 Security & SD-WAN(安全与 SD-WAN) > Monitor(监控) > Route Table(路由表)。
VPN 状态报告两条隧道上的健康检查均失败:
| 状态 | 名称 | 公共 IP | 子网 | 隧道监控 |
|---|---|---|---|---|
| 🟢 IPsec | cf-wan-tun-01 | 162.159.135.1 | 169.254.250.0/31 | Details(链接) |
| 🔴 健康检查 | 169.254.250.2/31 | |||
| 172.16.10.0/24 | ||||
| 172.16.11.0/24 | ||||
| 🟢 IPsec | cf-wan-tun-02 | 172.64.135.1 | 169.254.250.0/31 | Details(链接) |
| 🔴 健康检查 | 169.254.250.2/31 | |||
| 172.16.10.0/24 | ||||
| 172.16.11.0/24 |
检查 Cloudflare Gateway 日志和策略以确定是否阻止了源自 192.0.2.3/32 的 HTTP 请求。
如果被阻止,请创建一条规则以恢复隧道监控 HTTP 请求。详情请参阅 Cloudflare Gateway HTTP 策略。
可在以下位置获取:
IPsec 日志可以帮助诊断与 IPsec 隧道相关的各种问题,包括:
- 使用了不受支持的阶段 1 或阶段 2 加密或完整性设置 — 寻找显示
No proposal chosen的消息。- 确认定义的阶段 1 和阶段 2 加密或完整性值受 Cloudflare WAN 支持。
- 请参阅 支持的配置参数。
- IKE/IPsec 标识:未定义本地或远程标识,或值不正确。
- 请参阅 Palo Alto 第三方集成指南,以获取基于 FQDN 的本地标识的示例。
- 身份验证失败:预共享密钥错误。
请参阅 配置隧道端点以了解更多详情。
确保 CF_WAN_TUN_01 和 CF_WAN_TUN_02 的隧道健康检查配置了以下设置:
| 属性 | 值 | 说明 |
|---|---|---|
| Enabled | True | 确保指示器显示 🟢 Enabled。 |
| Type | Request | 状态防火墙会丢弃 ICMP 答复探测。 |
| Direction | Bidirectional | 确保通过隧道发送和接收探测。 |
| Target | Custom | MX 平台不支持 VTI,因此探测必须以备用 IP 为目标。 |
| Target address | 192.168.125.1 | 向 MX 设备上的 LAN 接口发送探测。 |