Citrix SD-WAN WANOP

配置数据中心和 AWS/Azure 之间的 Cloud Connector 隧道

您可以在数据中心和 AWS 或 Azure 云之间配置 Cloud Connector 隧道。

请考虑一个示例,其中在数据中心的 WCCP/PBR 单臂模式下部署的 Citrix SD-WAN WANOP 设备 CB_DC-1 和 AWS 云之间配置了 Citrix Cloud Connector 隧道。CB_DC-1 连接到路由器 R1。NAT 设备还连接到 R1,用于数据中心和 Internet 之间的连接。

注意:示例中的设置也适用于任何类型的 Citrix SD-WAN WANOP 部署。此示例中的此设置包括基于策略的路由,而不是 Netbridge,用于允许所需子网的流量通过 Citrix Cloud Connector 隧道。

如下图所示,Citrix Cloud Connector 隧道是在 Citrix SD-WAN WANOP 设备 CB_DC-1 上运行的 Citrix 虚拟设备 NS_VPX_CB-DC 和在 AWS 云上运行的 Citrix 虚拟设备 NS_VPX-AWS 之间建立的。为了优化 Citrix Cloud Connector 隧道上的流量流,NS_VPX_CB-DC 与在 CB_DC-1 上运行的 Citrix SD-WAN WANOP 实例配对,而在 AWS 端,运行在 AWS 上的 Citrix SD-WAN WANOP 虚拟设备 CB_VPX-AWS 配对。

本地化后的图片

下表列出了本示例中数据中心中的设置。

实体 名称 详细信息
客户端 CL1 的 IP 地址   10.10.6.90
NAT 设备 NAT-Dev-1 上的设置    
公共端的 NAT IP 地址   66.165.176.15 *
私有端的 NAT IP 地址   10.10.7.70
在 CB_DC-1 上的设置    
CB_DC-1 的管理服务 IP 地址   10.10.1.10
在 CB_DC-1 上运行的 NS_VPX_CB-DC 上的设置    
NSIP 地址   10.10.1.20
SNIP 地址   10.10.5.30
IPSec 配置文件 CBC_DC_AWS_IPSec_Profile IKE 版本 = v2,加密算法 = AES,哈希算法 = HMAC SHA1
Cloud Connector 隧道 CBC_DC_AWS Cloud Connector 隧道的本地端点节点 IP 地址 = 10.10.5.30,Cloud Connector 的远程端点节点 IP 地址 = 映射到 AWS 上的 NS_VPX-AWS 上的 Cloud Connector 端点节点地址 (SNIP) = 203.0.1.150*,隧道协议 = GRE 和 IPSEC,IPSec 配置文件名称 = CBC_DC_AWS_IPSec_Profile
基于策略的路由 CBC_DC_AWS_PBR 源 IP 范围 = 数据中心中的子网 = 10.10.6.0-10.10.6.255,目标 IP 范围 = AWS 中的子网 = 10.20.6.0-10.20.6.255,下一个跃点类型 = IP 隧道,IP 隧道名称 = CBC_DC_AWS

* 这些应该是公有 IP 地址。

下表列出了此示例中 AWS 云上的设置。

| 实体 | 名称 | 详细信息 | | —— | —- | ——- | | 服务器 S1 的 IP 地址 | | 10.20.6.90 | | **在 NS_VPX-AWS 上的设置** | | NSIP 地址 | | 10.20.1.20 | | 映射到 NSIP 地址的公共 EIP 地址 | | 203.0.1.120* | | SNIP 地址 | | 10.20.5.30 | | 映射到 SNIP 地址的公共 EIP 地址 | | 203.0.1.150* | | IPSec profile | CBC_DC_AWS_IPSec_Profile | IKE version = v2, Encryption algorithm = AES, Hash algorithm = HMAC SHA1 | | Cloud Connector tunnel | CBC_DC_AWS | Local endpoint IP address of the Cloud Connector tunnel =10.20.5.30, Remote endpoint IP address of the Cloud Connector tunnel = Public NAT IP address of NAT device NAT-Dev-1 in the datacenter = 66.165.176.15*, Tunnel protocol = GRE and IPSEC, IPSec profile name = CBC_DC_AWS_IPSec_Profile | | Policy based route | CBC_DC_AWS_PBR | Source IP range = Subnet in the AWS = 10.20.6.0-10.20.6.255, Destination IP range = Subnet in datacenter = 10.10.6.0-10.10.6.255, Next hop type = IP Tunnel, IP tunnel name = CBC_DC_AWS |

* 这些应该是公有 IP 地址。

在 CB_DC-1 上的 NS_VPX_CB-DC 和 NS_VPX-AWS 两者都可以在 L3 模式下运行。它们可以实现数据中心和 AWS 云中的私有网络之间的通信。NS_VPX_CB-DC 和 NS_VPX-AWS 可通过 Cloud Connector 隧道在数据中心的客户端 CL1 与 AWS 云中的服务器 S1 之间进行通信。客户端 CL1 和服务器 S1 位于不同的专用网络上。

注意:AWS 不支持 L2 模式。因此,必须在两个端点上只启用 L3 模式。

为了在 CL1 和 S1 之间进行正确通信,在 NS_VPX_CB-DC 和 NS_VPX-AWS 上启用 L3 模式,路由配置如下:

  • R1 具有通过 NS_VPX_CB-DC 到达 S1 的路径。

  • NS_VPX_CB-DC 具有通过 R1 到达 NS_VPX-AWS 的路由。

  • S1 应该有一条通过 NS_VPX-AWS 到达 CL1 的路径。

  • NS_VPX-AWS 具有通过上游路由器到达 NS_VPX_CB-DC 的路由。

以下是在数据中心的各种网络设备上配置的路由,以便 Cloud Connector 隧道正常工作:

路由 网络 网关
路由器 R1 上的路由    
到达服务器 S1 的路由 10.20.6.X/24 NS_VPX_CB-DC 的通道端点 SNIP 地址 = 10.10.5.30
到达 Cloud Connector 隧道远端端点的路径 映射到 NS_VPX-AWS 的 Cloud Connector SNIP 地址的 EIP 地址 = 203.0.1.50 NAT 设备的专用 IP 地址 = 10.10.7.70
NS_VPX_CB-DC 上的路线    
到达 NS_VPX-AWS 的路径 映射到 NS_VPX-AWS 的 Cloud Connector SNIP 地址的 EIP 地址 = 203.0.1.50 R1 的 IP 地址 = 10.10.5.1

以下是在 AWS 云上的各种网络设备上配置的路由,以便 Cloud Connector 隧道正常工作:

路由 网络 网关
服务器 S1 上的路由    
到达客户端 CL1 的路由 10.10.6.X/24 NS_VPX-AWS 的隧道端点 SNIP 地址 = 10.10.6.1
Citrix 虚拟设备 NS_VPX-AWS 上的路由    
到达 NS_VPX_CB-DC 的路线 数据中心中的 NAT_Dev-1 的公有 IP 地址 = 66.165.176.15 * AWS 上上游路由器的 IP 地址

以下是 Cloud Connector 隧道中客户端 CL1 请求数据包的流量:

  1. 客户端 CL1 向服务器 S1 发送请求。

  2. 请求到达在 Citrix SD-WAN WANOP 设备 CB_DC-1 上运行的 Citrix 虚拟设备 NS_VPX_CB-DC。

  3. NS_VPX_CB-DC 会将数据包转发到在 Citrix SD-WAN WANOP 设备 CB_DC-1 上运行的一个 Citrix SD-WANOP 实例以进行广域网优化。处理数据包后,Citrix SD-WAN WANOP 实例将数据包返回到 NS_VPX_CB-DC。

  4. 请求数据包与 PBR 实体 CBC_DC_AWS_PBR(在 NS_VPX_CB-DC 中配置)中指定的条件匹配,因为请求数据包的源 IP 地址和目标 IP 地址分别属于 CBC_DC_AWS_PBR 中设置的源 IP 范围和目标 IP 范围。

  5. 由于 Cloud Connector 隧道 CBC_DC_AWS 绑定到 CBC_DC_AWS_PBR,设备会准备要通过 CBC_DC_AWS 隧道发送的数据包。

  6. NS_VPX_CB-DC 使用 GRE 协议通过向数据包添加 GRE 标头和 GRE IP 标头来封装每个请求数据包。GRE IP 标头的目标 IP 地址设置为 AWS 端的 Cloud Connector 隧道 (CBC_DC-AWS) 端点的 IP 地址。

  7. 对于 Cloud Connector 隧道 CBC_DC-AWS,NS_VPX_CB-DC 会根据 NS_VPX_CB-AWS 和 NS_VPX-AWS 之间的协议,检查存储的 IPSec 安全关联 (SA) 参数以处理出站数据包。NS_VPX_CB-DC 中的 IPSec 封装安全有效负载 (ESP) 协议将这些 SA 参数用于出站数据包,以加密 GRE 封装数据包的有效负载。

  8. ESP 协议通过使用 HMAC 哈希函数和为 Cloud Connector 隧道 CBC_DC-AWS 指定的加密算法来确保数据包的完整性和机密性。ESP 协议, 在加密 GRE 有效载荷和计算 HMAC 后, 生成 ESP 头和 ESP 拖车,并插入它们之前和加密 GRE 有效载荷的末尾, 分别.

  9. NS_VPX_CB-DC 将生成的数据包发送到 NS_VPX-AWS。

  10. NS_VPX-AWS 会根据 CB_DC-1 与适用于 Cloud Connector 通道 CBC_DC-AWS 的 NS_VPX-AWS 之间的协议,检查存储的 IPSec 安全关联 (SA) 参数以处理入站数据包。NS_VPX-AWS 上的 IPSec ESP 协议将这些 SA 参数用于入站数据包,并使用请求数据包的 ESP 标头来解密数据包。

  11. NS_VPX-AWS 然后通过删除 GRE 标头来解压数据包。

  12. NS_VPX-AWS 将生成的数据包转发到 CB_VPX-AWS,后者将 WAN 优化相关的处理应用于数据包。然后,CB_VPX-AWS 将生成的数据包返回到 NS_VPX-AWS。

  13. 生成的数据包与 CB_DC-1 在步骤 2 中接收的数据包相同。此数据包的目标 IP 地址设置为服务器 S1 的 IP 地址。NS_VPX-AWS 将此数据包转发到服务器 S1。

  14. S1 处理请求数据包并发送响应数据包。响应数据包中的目标 IP 地址是客户端 CL1 的 IP 地址,源 IP 地址是服务器 S1 的 IP 地址。

配置数据中心和 AWS/Azure 之间的 Cloud Connector 隧道