跳转到内容
搜索文档

SonicWall

最后更新 查看 MarkdownAgent 设置

本教程介绍如何将 Cloudflare WAN(原 Magic WAN)与以下版本的 SonicWall 设备配合使用:

  • 已测试硬件
    • SonicWall NSv 470
    • SonicWall 3700
  • 已测试软件版本
    • SonicOS 7.0.1

您可以通过 IPsec 隧道将 SonicWall 设备连接到 Cloudflare WAN。SonicWall 不支持通用路由封装 (GRE)。

拓扑

拓扑图,展示如何将 SonicWall 设备连接到 Cloudflare WAN

注意:此图片中的标签可能反映的是之前的产品名称。

以下说明介绍如何在 SonicWall 设备上设置 IPsec 连接。我们将使用上述拓扑示例中的 IP 范围来创建所需的连接。未明确提及的设置可保持默认值。

1. 在您的 Cloudflare 账户上创建 IPsec 隧道

  1. 首先在 Cloudflare 上 创建 IPsec 隧道。根据需要命名和描述隧道,并添加以下设置:

    • Interface address(接口地址):输入 IPsec 隧道 Cloudflare 侧的内部隧道 IP。在本示例中,它是 10.200.1.0/31
    • Customer endpoint(客户端点):输入 SonicWall 设备的 WAN IP 地址。在我们的示例中,这是 198.51.100.2
    • Cloudflare endpoint(Cloudflare 端点):输入分配给您账户的 Cloudflare anycast IP 地址之一,可在 Leased IPs 中查看。在我们的示例中,这是 1.2.3.4
    • Pre-shared key(预共享密钥):选择 Use my own pre-shared key(使用我自己的预共享密钥) 并粘贴您自己的安全密钥。
  2. 完成后选择 Add tunnels(添加隧道)

  3. 创建隧道后,Cloudflare 仪表板将加载为您的账户设置的隧道列表。选择箭头展开刚刚创建的隧道,并检查以下设置:

    • Customer endpoint(客户端点):指 VPN 策略绑定的 SonicWall WAN IP(红色)。
    • Cloudflare endpoint(Cloudflare 端点):指 Cloudflare anycast IP 地址(蓝色)。
    • FQDN ID(FQDN 标识):在 SonicWall 的 VPN 策略中用于本地 IKE ID 的 ID。复制并保存此 ID,在 SonicWall 上配置隧道时需要用到(绿色)。
    IPsec 隧道示例外观

2. 在 Cloudflare 仪表板上创建静态路由

任何通过 IPsec 隧道到达的网络都需要配置静态路由。在我们的示例中,有两个网络:172.31.3.0/24 和隧道网络 10.200.1.0/31

  1. 创建静态路由。根据需要命名和描述路由,并添加以下设置:

    • 第一条隧道:按照我们的示例,添加 10.200.1.0/31 作为 Prefix(前缀)10.200.1.1 作为 Tunnel/Next hop(隧道/下一跳)
    • 第二条隧道:按照我们的示例,添加 172.31.3.0/24 作为 Prefix(前缀)10.200.1.1 作为 Tunnel/Next hop(隧道/下一跳)
  2. 完成后选择 Add routes(添加路由)

3. 在 SonicWall 中添加 VPN 配置

  1. 前往 Network(网络) > IPsec VPN > Rules and Settings(规则和设置)
  2. 选择 Add(添加)
  3. General(常规) > Security Policy(安全策略) 组中,添加以下设置:
    • Authentication Method(身份验证方法)IKE Using Preshared Secret
    • IPsec Primary Gateway Name or Address(IPsec 主网关名称或地址):输入主网关的 Cloudflare anycast IP 地址(蓝色)。
  4. IKE Authentication(IKE 身份验证) 组中,添加以下设置:
    • Shared secret(共享密钥):粘贴您在步骤 1 中用于创建 IPsec 隧道的预共享密钥(紫色)。
    • Local IKE ID(本地 IKE ID):从下拉菜单中选择 Domain name,并粘贴您在步骤 1 中创建 IPsec 隧道后保存的 FQDN ID(绿色)
    • Peer IKE ID(对端 IKE ID):从下拉菜单中选择 IPv4 Address,并输入 Cloudflare anycast IP 地址(蓝色)。
在 SonicWall 设备上配置 VPN 策略
  1. 选择 Proposals(提议)。VPN 策略具有一定灵活性。调整这些设置以匹配您组织的首选安全策略。例如,您可以使用以下示例中的设置。
  2. IKE (Phase 1) Proposal(IKE(阶段 1)提议) 组中,选择以下设置:
    • Exchange(交换)IKEv2 Mode
    • DH Group(DH 组)Group 20
    • Encryption(加密)AES-256
    • Authentication(身份验证)SHA256
    • Life Time (seconds)(生存时间(秒))86400
  3. IPsec (Phase 2) Proposal(IPsec(阶段 2)提议) 组中,添加以下设置:
    • Protocol(协议)ESP
    • Encryption(加密)AESGCM16-256
    • Authentication(身份验证)None
    • Enable Perfect Forward Secrecy(启用完美前向保密):启用
    • DH Group(DH 组)Group 20
    • Life Time (seconds)(生存时间(秒))28800
  4. 选择 Advanced(高级)
  5. 启用 Disable IPsec Anti-Replay(禁用 IPsec 抗重放)
  6. VPN Policy bound to(VPN 策略绑定到) 中,从下拉菜单选择您的 WAN 接口,将其绑定到 VPN。
  7. 选择 Save(保存)
在 SonicWall 设备上启用防重放

4. 添加 VPN 隧道接口

SonicOS 需要 VPN 隧道接口才能通过 Cloudflare WAN 路由流量。创建接口时,使用前缀 10.200.1.1/31。这与此隧道的 Cloudflare 侧(10.200.1.0)匹配。

  1. 前往 Network(网络) > System(系统) > Interfaces(接口)
  2. 选择 Add interface(添加接口) > VPN Tunnel Interface(VPN 隧道接口)
  3. 对于 IP Address,使用 10.200.1.1
  4. 启用 Ping。这是确保接口可以被 ping 以进行调试和 Cloudflare WAN 健康检查所必需的。
启用 ping,以便接口可被 ping 用于调试和 Cloudflare WAN 健康检查
  1. 选择 Advanced(高级)
  2. 启用 Enable Asymmetric Route Support(启用非对称路由支持) 选项。这是 IPsec 隧道健康检查所必需的。
启用非对称路由支持,Cloudflare WAN 健康检查需要此功能
  1. 选择 OK(确定)

5. 添加地址对象

地址对象是路由策略所必需的。在我们的示例中,还有一个站点将通过 Cloudflare WAN 到达。首先,您需要为每个网络创建地址对象。然后,您需要创建一个包含所有远端网络的地址组。此地址组将在下一步中用于创建正确的路由策略。

添加地址对象:

  1. 选择 Object(对象) > Match Objects(匹配对象) > Addresses(地址)
  2. 选择 Address Objects(地址对象) > Add(添加)
  3. 输入地址对象的信息——请参阅拓扑图获取本教程使用的示例。由于地址位于 VPN 区域,请将对象的 Zone Assignment(区域分配) 设置为 VPN
  4. 选择 Save(保存)。窗口将保持打开以方便输入多个条目。选择 X 将其关闭。
为对象输入适当的设置
  1. 选择 Address Groups(地址组) > Add(添加) 添加新地址组。
  2. 为您的地址组输入 Name(名称)
  3. 在左侧菜单中选择您已创建的各个网络对象,然后选择中间列中的右向箭头将其添加到组中。
  4. 选择 Save(保存)
复制各个网络对象并将其添加到组中

6. 设置路由

使用刚创建的地址对象或组作为目标,添加路由。

  1. 选择 Policy(策略) > Rules and Policies(规则和策略) > Routing Rules(路由规则)
  2. 选择 Add(添加) 添加您的路由策略。
  3. Next Hop(下一跳) 应为之前在接口面板中创建的 VPN 隧道接口。

7. 为健康检查添加访问规则

Cloudflare WAN 健康检查正常工作需要额外的访问规则。这将使 WAN IP 能够通过隧道接收 ICMP ping,并通过 WAN 返回。

  1. 选择 Policy(策略) > Rules and Policies(规则和策略)
  2. 选择 Access Rules(访问规则) > Add(添加)
  3. 为您的策略输入描述性名称。
  4. Source / Destination(源/目标) > Destination > Port/Services(目标 > 端口/服务) 中,从下拉菜单选择 ICMP
  5. 选择 Optional Settings(可选设置)
  6. Others(其他) 中,启用 Allow Management traffic(允许管理流量)

8. 设置健康检查

您必须正确配置 Cloudflare WAN 健康检查。以下是设置健康检查的示例:

curl --request PUT \
https://api.cloudflare.com/client/v4/accounts/{account_id}/magic/ipsec_tunnels/{tunnel_id} \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>" \
--header "Content-Type: application/json" \
--data '{
  "health_check": {
    "direction": "bidirectional",
    "enabled": true,
    "type": "request",
    "rate": "low"
  }
}'

更改配置后,健康检查可能需要一些时间才能稳定。

9. 在 Cloudflare 仪表板上验证隧道状态

Cloudflare 仪表板监控您账户上所有 anycast 隧道的健康状况,这些隧道将流量从 Cloudflare 路由到您的源网络。有关更多信息,请参阅 在仪表板中检查隧道健康状况

这篇文档对您有帮助吗?