为什么我无法与另一个 AWS 账户中的 VPC 创建 Amazon VPC 对等连接?

上次更新日期:2022 年 4 月 15 日

我尝试在我的 Amazon VPC 以及与另一个 AWS 账户关联的 VPC 之间创建 Amazon Virtual Private Cloud(Amazon VPC)对等连接。但是,我收到了以下错误消息:“The connection failed due to incorrect VPC-ID, Account ID, or overlapping CIDR range.(由于 VPC-ID、账户 ID 不正确或 CIDR 范围重叠,连接失败。)”

解决方法

检查 Amazon VPC 设置

与另一个 AWS 账户中的 VPC 创建 VPC 对等连接时,确保检查以下设置 :

  • 正确输入了 VPC(接受方)的账户 ID。
  • 选择了 VPC(接受方)的正确 VPC ID。
  • 所选 VPC(请求方)VPC(接受方)的主 CIDR 块或辅助 CIDR 块均没有重叠。
    注意:如果您的 VPC 存在重叠的 CIDR 块,您将无法创建 VPC 对等连接。您必须删除重新创建一个具有非重叠 CIDR 块的 VPC。

实施重叠 CIDR 块的最佳实践

通过 AWS Transit Gateway 使用私有 NAT 网关和 Application Load Balancer,在具有重叠 CIDR 块的两个 VPC 之间建立私有通信

完成以下步骤。

第一个 VPC:

  1. 添加一个不相同的辅助 CIDR。
  2. 在 CIDR 的主数据块和辅助数据块中创建其他私有子网。
  3. 在辅助 CIDR 子网中创建私有 NAT 网关,以在子网范围内建立私有 IP 地址。

第二个 VPC:

  1. 将辅助 CIDR 添加到主重叠 CIDR。
  2. 在主 CIDR 中创建另一个相同的私有子网。
  3. 在新创建的私有子网中,启动托管 Amazon Elastic Compute Cloud(Amazon EC2)实例的应用程序。
  4. 在不同的可用区中再创建两个私有子网。
  5. 创建内部 Application Load Balancer,然后从步骤 4 中选择子网。
  6. 配置 Application Load Balancer,然后通过选择已启动的实例作为 Target(目标)来注册实例。注意:Application Load Balancer 的目标必须是主 CIDR 私有子网中的工作负载,第一个 VPC 的工作负载需要访问这些工作负载。另外,请确保已注册的目标运行正常。

Transit Gateway:

  1. 创建 Transit Gateway,然后为默认路由表传播选择 Disabled(已禁用)。
  2. 通过在每个可用区中关联相应的子网,为每个 VPC 创建 Transit Gateway VPC 附件。
  3. 在 Transit Gateway 路由表中输入路由,以将目标 CIDR 路由到 VPC 附件。

VPC 路由表:

对于第一个 VPC:

  1. 编辑私有子网中工作负载的路由表。
  2. 通过私有 NAT 网关为辅助目标 CIDR 添加静态路由。
  3. 创建或修改启动私有 NAT 网关的 NAT 子网路由表。
  4. 通过 Transit Gateway 向目标 VPC 的辅助 CIDR 添加路由条目。

对于第二个 VPC:

  1. 编辑 Application Load Balancer 子网的路由表。
  2. 通过 Transit Gateway 为第一个 VPC 的辅助 CIDR 的返回流量添加路由。

连接检查:

  1. 使用 SSH 连接到第一个 VPC 的工作负载实例。
  2. 通过 Application Load Balancer 测试第二个 VPC 中目标实例的连接。

重要提示:确保可用区或 VPC 附件中的子网与 NAT 网关的可用区或子网一致。

限制:

  • 将流量路由到私有 NAT 网关和另一个 VPC 使本地部署网络成为单向网络。如果本地部署网络是单向的,则连接另一端的资源无法使用 NAT 网关。
  • 您只能将 NAT 网关路由到 Transit Gateway,以便在两个 VPC 或一个 VPC 与本地部署网络之间进行出站私有通信。
  • 由于 NAT 网关仅执行源 NAT,因此前面的设置仅允许源发起与目标 VPC 的连接。如果您需要从第二个重叠 VPC 到第一个 VPC 的双向流量,则必须撤消设置。在第二个 VPC 中创建 NAT 网关,并让 Application Load Balancer 以第一个 VPC 中的实例为目标。

这篇文章对您有帮助吗?


您是否需要账单或技术支持?