您可以按照以下工作流,在 PCG 和远程端点之间创建 VPN 隧道。这些说明特定于在云原生实施模式下管理的工作负载虚拟机。

前提条件

  • 在 AWS 中:确认您已在云原生实施模式下部署了 VPC。这必须是一个转换或自我管理的 VPC。AWS 中的计算 VPC 不支持 VPN。
  • 在 Microsoft Azure 中:确认您已在云原生实施模式下部署了 VNet。您可以同时使用转换 VNet 和计算 VNet。
  • 确认远程端点与 PCG 对等互连,并具有基于路由的 IPSec VPN 和 BGP 功能。

过程

  1. 在公有云中,找到 PCG 的由 NSX 分配的本地端点,并根据需要为其分配公共 IP 地址:
    1. 转到公有云中的 PCG 实例,然后导航到“标记”。
    2. 记下 nsx.local_endpoint_ip 标记的值字段中的 IP 地址。
    3. (可选) 如果您的 VPN 隧道需要公共 IP,例如,如果要将 VPN 设置为另一个公有云或内部部署的 NSX-T Data Center 部署,请执行以下操作:
      1. 导航到 PCG 实例的上行链路接口。
      2. 将公共 IP 地址附加到您在步骤 b 中记录的 nsx.local_endpoint_ip IP 地址。
    4. (可选) 如果您具有 PCG 实例的 HA 对,请重复执行步骤 ab,并根据需要附加公共 IP 地址(如步骤 c 中所述)。
  2. 在 NSX Manager 中,为显示为 Tier-0 网关(名称类似于 cloud-t0-vpc/vnet-<vpc/vnet-id>)的 PCG 启用 IPSec VPN,并在此 Tier-0 网关的端点与所需 VPN 对等项的远程 IP 地址之间创建基于路由的 IPSec 会话。有关其他详细信息,请参见添加 IPSec VPN 服务
    1. 转到网络 > VPN > VPN 服务 > 添加服务 > IPSec。提供以下详细信息:
      选项 描述
      名称 输入 VPN 服务的描述性名称,例如 <VPC-ID>-AWS_VPN<VNet-ID>-AZURE_VPN
      Tier-0/Tier-1 网关 在公有云中选择 PCG 的 Tier-0 网关。
    2. 转到网络 > VPN > 本地端点 > 添加本地端点。提供以下信息,并查看添加本地端点以了解其他详细信息:
      注: 如果您具有 PCG 实例的 HA 对,请在公有云中使用已附加到每个实例的相应本地端点 IP 地址为每个实例创建一个本地端点。
      选项 描述
      名称 输入本地端点的描述性名称,例如 <VPC-ID>-PCG-preferred-LE<VNET-ID>-PCG-preferred-LE
      VPN 服务 选择您在步骤 2a 中创建的 PCG Tier-0 网关的 VPN 服务。
      IP 地址 输入您在步骤 1b 中记录的 PCG 本地端点 IP 地址的值。
    3. 转到网络 > VPN > IPSec 会话 > 添加 IPSec 会话 > 基于路由。提供以下信息,并查看添加基于路由的 IPSec 会话以了解其他详细信息:
      注: 如果要在 VPC 中部署的 PCG 与 VNet 中部署的 PCG 之间创建 VPN 隧道,则必须为 VPC 中每个 PCG 的本地端点和 VNet 中 PCG 的远程 IP 地址创建一个隧道,相反,从 VNet 中的 PCG 到 VPC 中 PCG 的远程 IP 地址亦是如此。您必须为活动 PCG 和备用 PCG 创建单独的隧道。这将在两个公有云之间生成全网状 IPSec 会话。
      选项 描述
      名称 输入 IPSec 会话的描述性名称,例如 <VPC--ID>-PCG1-to-remote_edge
      VPN 服务 选择在步骤 2a 中创建的 VPN 服务。
      本地端点 选择在步骤 2b 中创建的本地端点。
      远程 IP 输入要与其创建 VPN 隧道的远程对等项的公共 IP 地址。
      注: 远程 IP 可以是专用 IP 地址,前提是您能够访问该专用 IP 地址,例如使用 DirectConnect 或 ExpressRoute 进行访问。
      隧道接口 以 CIDR 格式输入隧道接口。必须对远程对等方使用同一子网才能建立 IPSec 会话。
  3. 在您在步骤 2 中建立的 IPSec VPN 隧道接口上设置 BGP 邻居。有关更多详细信息,请参见配置 BGP
    1. 导航到网络 > Tier-0 网关
    2. 选择为其创建 IPSec 会话的自动创建的 Tier-0 网关,然后单击编辑
    3. 单击 BGP 部分下 BGP 邻居旁边的编号或图标,并提供以下详细信息:
      选项 描述
      IP 地址

      使用在 IPSec 会话中的隧道接口上为 VPN 对等项配置的远程 VTI 的 IP 地址。

      远程 AS 编号 此编号必须与远程对等项的 AS 编号相匹配。

  4. 重要说明: 该步骤仅适用于 NSX-T Data Center 3.0.0。如果您使用的是 NSX-T Data Center 3.0.1,请跳过该步骤。
    如果您使用的是 Microsoft Azure,请在 NSX Manager 中配置 VPN 和 BGP 后,在 PCG 实例的上行链路接口上 启用 IP 转发。如果您具有用于实现 HA 的活动 PCG 实例和备用 PCG 实例,则在这两个 PCG 实例上都启用 IP 转发。
  5. 使用重新分发配置文件通告要用于 VPN 的前缀。执行以下操作:

    1. 重要说明: 该步骤仅适用于 NSX-T Data Center 3.0.0。如果您使用的是 NSX-T Data Center 3.0.1,请跳过该步骤。
      为在 云原生实施模式下载入的 VPC/VNet 的 CIDR 添加静态路由以指向 Tier-0 网关的上行链路 IP 地址,即 PCG。有关说明,请参见 配置静态路由。如果您具有一个用于实现 HA 的 PCG 对,请将下一跃点设置为每个 PCG 的上行链路 IP 地址。
    2. 为在云原生实施模式下载入的 VPC/VNet CIDR 添加一个前缀列表,并在 BGP 邻居配置中将其添加为出站筛选器。有关说明,请参见创建 IP 前缀列表
    3. 设置路由重新分发配置文件,以便启用静态路由,并选择在步骤 b 中为 VPC/VNet CIDR 创建的路由筛选器。
  6. 在公有云中:
    1. 转到您工作负载虚拟机所在子网的路由表。
      注: 请勿使用 PCG 的上行链路或管理子网的路由表。
    2. 将标记 nsx.managed = true 添加到路由表中。

  7. 重要说明: 该步骤仅适用于 NSX-T Data Center 3.0.0。如果您使用的是 NSX-T Data Center 3.0.1,请跳过该步骤。
    NSX Cloud 将为具有源 0.0.0.0/0 和目标 Any 的 Tier-0 网关 (PCG) 创建一个 default-snat 规则。由于此规则,来自 云原生实施模式下的虚拟机的所有流量都将具有 PCG 的上行链路 IP 地址。如果要查看流量的真正源,请执行以下操作:
    1. 转到网络 > NAT,并为 Tier-0 网关 (PCG) 禁用 default-snat 规则。
    2. 如果您具有 NSX 实施模式下的虚拟机,请使用以下值创建新的 SNAT 规则,以继续为此类虚拟机提供 SNAT:
      选项 描述
      NSX 实施模式下 VPC/VNet 的 CIDR。
      目标 任意
      已转换 default-snat 规则内的已转换中的同一 IP 地址。
      应用对象 选择 PCG 的上行链路接口。
      不要编辑 default-snat 规则。在发生故障切换时将恢复该规则。

结果

确认已在管理的路由表中为远程端点通告的所有 IP 前缀创建路由,并已将下一跃点设置为 PCG 的上行链路 IP 地址。