AWS Site-to-Site VPN
用户指南

AWS Site-to-Site VPN 是什么?

默认情况下,您在 Amazon VPC 中启动的实例无法与您自己的(远程)网络进行通信。通过在 VPC 中附加虚拟专用网关、创建自定义路由表、更新您的安全组规则并创建 AWS Site-to-Site VPN (Site-to-Site VPN) 连接,您可以启用从 VPC 访问您远程网络的权限。

尽管术语 VPN 连接 是一项泛指性术语,但是在此文档中,“VPN 连接”是指在您的 VPC 和您自己的内部网络之间的连接。Site-to-Site VPN 支持 Internet 协议安全 (IPsec) VPN 连接。

您的 Site-to-Site VPN 连接可以是 AWS Classic VPN 或 AWS VPN。有关更多信息,请参阅 AWS Site-to-Site VPN 类别

重要

我们目前不支持通过 Site-to-Site VPN 连接的 IPv6 流量。

Site-to-Site VPN 的组成部分

Site-to-Site VPN 连接由以下部分组成。有关 Site-to-Site VPN 限制的更多信息,请参阅 Amazon VPC 用户指南 中的 Amazon VPC 限制

虚拟专用网关

虚拟专用网关是 Site-to-Site VPN 连接在 Amazon 一端的 VPN 集线器。您可以创建虚拟专用网关,并将其附加到要从中创建 Site-to-Site VPN 连接的 VPC。

创建虚拟专用网关时,可以为网关的 Amazon 端指定专用自治系统编号 (ASN)。如果不指定 ASN,则会使用默认 ASN (64512) 创建虚拟专用网关。创建虚拟专用网关后,无法更改 ASN。要检查虚拟专用网关的 ASN,请在 Amazon VPC 控制台中的虚拟专用网关屏幕上查看其详细信息,或者使用 describe-vpn-gateways AWS CLI 命令。

注意

如果您在 2018-06-30 以前创建虚拟专用网关,则默认 ASN 在 亚太区域(新加坡) 区域中是 17493,在 亚太区域(东京) 区域中是 10124,在 欧洲(爱尔兰) 区域中是 9059,在所有其他区域中是 7224。

AWS Transit Gateway

您可以将 AWS Site-to-Site VPN 连接的目标网关从虚拟专用网关修改为 中转网关。中转网关 是一个中转中心,您可用它来互连 Virtual Private Cloud (VPC) 和本地网络。有关更多信息,请参阅修改Site-to-Site VPN 连接的目标网关

客户网关

客户网关是指 Site-to-Site VPN 连接在您这一端的实体设备或软件应用程序。

要创建 AWS 连接,您必须在 Site-to-Site VPN 中创建一个客户网关资源,用以向 AWS 提供有关您的客户网关设备的信息。下表描述了创建客户网关资源所需的信息。

项目 描述

客户网关外部接口的 Internet 可路由 IP 地址 (静态)

公有 IP 地址值必须是静态地址。如果您的客户网关位于为 NAT 遍历 (NAT-T) 而启用的网络地址转换 (NAT) 设备后面,请使用您的 NAT 设备的公有 IP 地址,并调整防火墙规则以取消阻止 UDP 端口 4500。

路由类型 — 静态或动态。

有关更多信息,请参阅 Site-to-Site VPN 路由选项

(仅动态路由) 客户网关的边界网关协议 (BGP) 自治系统编号 (ASN)。

您可以使用指定给您的网络的现有 ASN。如果您没有 ASN,您可以使用专用 ASN (在 64512–65534 范围内)。

如果您在控制台中使用 VPC 向导来设置您的 VPC,我们会自动使用 65000 作为 ASN。

如需通过 Site-to-Site VPN 连接使用 Amazon VPC,您或您的网络管理员还必须配置远程网络中的客户网关设备或应用程序。当您创建 Site-to-Site VPN 连接时,我们会为您提供所需的配置信息,您的网络管理员通常会执行此配置。有关客户网关要求和配置的信息,请参阅 AWS 站点到站点 VPN 网络管理员指南中的您的客户网关

当流量从您的 Site-to-Site VPN 连接端生成时,VPN 隧道出现。虚拟专用网关不是启动程序;您的客户网关必须启动隧道。如果 Site-to-Site VPN 连接经历一段空闲时间(通常为 10 秒,具体取决于配置),隧道就会关闭。为防止发生这种情况,您可以使用网络监控工具(如使用 IP SLA)来生成保持连接 Ping 信号。

有关已经过 Amazon VPC 测试的客户网关的列表,请参阅 Amazon Virtual Private Cloud 常见问题

AWS Site-to-Site VPN 类别

您的 Site-to-Site VPN 连接可以是 AWS Classic VPN 连接或 AWS VPN 连接。您新建的所有 Site-to-Site VPN 连接都是 AWS VPN 连接。仅有 AWS VPN 连接支持以下功能:

  • Internet 密钥交换版本 2 (IKEv2)

  • NAT 遍历

  • 4 字节 ASN (除 2 字节 ASN 之外)

  • CloudWatch 指标

  • 您的客户网关的可重用 IP 地址。

  • 其他加密选项,包括 AES 256 位加密、SHA-2 哈希,以及其他 Diffie-Hellman 组

  • 可配置的隧道选项

  • BGP 会话的 Amazon 端的自定义专用 ASN

您可以通过使用 Amazon VPC 控制台或命令行工具,查明 Site-to-Site VPN 连接的类别。

使用控制台确定 Site-to-Site VPN 类别

  1. 打开 Amazon VPC 控制台 https://console.aws.amazon.com/vpc/

  2. 在导航窗格中,选择 Site-to-Site VPN Connections (站点到站点 VPN 连接)

  3. 选择 Site-to-Site VPN 连接,在详细信息窗格中检查 Category (类别) 的值。值 VPN 表示 AWS VPN 连接。值 VPN-Classic 表示 AWS Classic VPN 连接。

使用命令行工具确定 Site-to-Site VPN 类别

  • 您可以使用 describe-vpn-connections AWS CLI 命令。在返回的输出中,记下Category 值。值 VPN 表示 AWS VPN 连接。值 VPN-Classic 表示 AWS Classic VPN 连接。

    在下面的示例中,Site-to-Site VPN 连接是 AWS VPN 连接。

    aws ec2 describe-vpn-connections --vpn-connection-ids vpn-1a2b3c4d
    { "VpnConnections": [ { "VpnConnectionId": "vpn-1a2b3c4d", ... "State": "available", "VpnGatewayId": "vgw-11aa22bb", "CustomerGatewayId": "cgw-ab12cd34", "Type": "ipsec.1", "Category": "VPN" } ] }

或者,使用以下命令之一:

从 AWS Classic VPN 迁移到 AWS VPN

如果您现有的 Site-to-Site VPN 连接是 AWS Classic VPN 连接,则可以通过创建新的虚拟专用网关和 Site-to-Site VPN 连接,将旧的虚拟专用网关从您的 VPC 中断开,并将新的虚拟专用网关连接到 VPC,来迁移到 AWS VPN 连接。

如果现有的虚拟专用网关与多个 Site-to-Site VPN 连接关联,则必须为新的虚拟专用网关重新创建各自的 Site-to-Site VPN 连接。如果有多个 AWS Direct Connect 专用虚拟接口连接到虚拟专用网关,您必须为新的虚拟专用网关重新创建各自的专用虚拟接口。有关更多信息,请参阅 AWS Direct Connect 用户指南 中的创建虚拟接口

如果现有的 Site-to-Site VPN 连接是 AWS VPN 连接,则您无法迁移到 AWS Classic VPN 连接。

注意

在此过程中,如果您禁用路由传播并将旧的虚拟专用网关与您的 VPC 分离,通过当前 VPC 连接进行的连接会中断。当新的虚拟专用网关连接到您的 VPC 并且新的 Site-to-Site VPN 连接处于活动状态时,将会恢复连接。确保您为预期的停机时间做了计划。

迁移到 AWS VPN 连接

  1. 打开 Amazon VPC 控制台 https://console.aws.amazon.com/vpc/

  2. 在导航窗格中,依次选择 Virtual Private Gateways (虚拟专用网关)Create Virtual Private Gateway (创建虚拟专用网关),然后创建虚拟专用网关。

  3. 在导航窗格中,依次选择 Site-to-Site VPN 连接创建 VPN 连接。指定以下信息,然后选择是,创建

    • 虚拟专用网关:选择您在上一步中创建的虚拟专用网关。

    • 客户网关:选择现有,然后选择当前 AWS Classic VPN 连接的现有客户网关。

    • 根据需要指定路由选项。

  4. 选择新的 Site-to-Site VPN 连接,然后选择下载配置。为您的客户网关设备下载适当的配置文件。

  5. 使用配置文件在客户网关设备上配置 VPN 隧道。例如,请参阅 AWS 站点到站点 VPN 网络管理员指南。还不要启用隧道。如果需要一直禁用新配置的隧道,请与供应商联系获得指导。

  6. (可选) 创建测试 VPC 并将虚拟专用网关连接到测试 VPC。根据需要更改加密域/源目标地址,并测试从本地网络中的主机到测试 VPC 中的测试实例的连接性。

  7. 如果您正在对路由表使用路由传播,请在导航窗格中选择 Route Tables。为您的 VPC 选择路由表,然后依次选择 Route PropagationEdit。清除旧的虚拟专用网关的复选框,然后选择保存

    注意

    从此步骤开始,连接将被中断,直到与新的虚拟专用网关连接,并且新的 Site-to-Site VPN 连接处于活动状态为止。

  8. 在导航窗格中,选择虚拟专用网关。选择旧的虚拟专用网关,然后依次选择 Actions (操作)Detach from VPC (与 VPC 分离)Yes, Detach (是,分离)。选择新的虚拟专用网关,然后选择操作附加到 VPC。为您的 Site-to-Site VPN 连接指定 VPC,然后选择是,请连接

  9. 在导航窗格中,选择路由表。为您的 VPC 选择路由表,然后执行下列操作之一:

    • 如果您正在使用路由传播,请依次选择 Route PropagationEdit。选择与 VPC 连接的新虚拟专用网关,然后选择 Save

    • 如果您正在使用静态路由,请依次选择 RoutesEdit。将路由修改为指向新的虚拟专用网关,然后选择 Save

  10. 在客户网关设备上启用新隧道,并禁用旧隧道。要开启隧道,则必须从本地网络启动连接。

    请检查路由表以确保路由正被传播 (如果适用)。当 VPN 隧道的状态为 UP 时,路由会传播到路由表。

    注意

    如果需要恢复到以前的配置,请断开新的虚拟专用网关,然后执行步骤 8 和 9 以重新连接旧的虚拟专用网关并更新您的路由。

  11. 如果您不再需要 AWS Classic VPN 连接,并且不想继续为其付费,请从客户网关设备中删除以前的隧道配置,然后删除该 Site-to-Site VPN 连接。要执行此操作,请转到 Site-to-Site VPN 连接,选择 Site-to-Site VPN 连接,然后选择删除

    重要

    删除 AWS Classic VPN 连接后,便不能将新的 AWS VPN 连接恢复为或迁移回 AWS Classic VPN 连接。