中转网关工作原理 - Amazon VPC
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

中转网关工作原理

中转网关充当区域虚拟路由器,用于路由在您的 Virtual Private Cloud (VPC) 和本地网络之间流动的流量。中转网关根据网络流量的规模灵活地进行扩展。通过中转网关进行路由是在第 3 层运行的,其中,数据包根据其目的地 IP 地址发送到特定的下一个跃点挂载。

架构示意图

下图显示了一个具有三个 VPC 挂载的中转网关。其中每个 VPC 的路由表均包括本地路由以及会将指向另外两个 VPC 的流量发送到该中转网关的路由。

VPC 连接选项

以下是上图中所示挂载的原定设置中转网关路由表示例。每个 VPC 的 CIDR 块都将传播到该路由表。从而让每个挂载都可以将数据包路由到另外两个挂载。

目标位置 目标 路由类型
VPC A CIDR VPC A 的连接 传播
VPC B CIDR VPC B 的连接 传播
VPC C CIDR VPC C 的连接 传播

资源连接

中转网关连接同时是数据包的源和目的地。您可以将以下资源附加到中转网关:

  • 一个或多个 VPC。 Amazon Transit Gateway 在 VPC 子网中部署弹性网络接口,然后传输网关使用该接口来路由往返所选子网的流量。每个可用区必须至少有一个子网,以确保流量可以到达该可用区内每个子网中的资源。在创建挂载期间,只有在特定可用区内启用了某个子网时,才能确保同一可用区内的资源可到达该 Transit Gateway。如果子网路由表包含指向 Transit Gateway 的路由,则只有当 Transit Gateway 在同一可用区的子网中有挂载时,才会将流量转发到该 Transit Gateway。

  • 一个或多个 VPN 连接

  • 一个或多个 Amazon Direct Connect 网关

  • 一个或多个 Transit Gateway Connect 挂载

  • 一个或多个中转网关对等连接

  • 中转网关连接可同时是数据包的源和目的地。

等价多路径路由

Amazon Transit Gateway 支持大多数附件的等价多路径 (ECMP) 路由。对于 VPN 挂载,您可以在创建或修改中转网关时使用控制台启用或禁用 ECMP 支持。对于所有其他挂载类型,以下 ECMP 限制适用:

  • VPC - VPC 不支持 ECMP,因为 CIDR 块不能重叠。例如,您不能将 CIDR 为 10.1.0.0/16 的 VPC 与使用相同 CIDR 的另一个 VPC 挂载到中转网关,然后设置路由以对它们之间的流量进行负载均衡。

  • VPN - 禁用 VPN ECMP support(VPN ECMP 支持)选项后,当多条路径的前缀相等时,中转网关会使用内部指标来确定首选路径。有关为 VPN 挂载启用或禁用 ECMP 的更多信息,请参阅 中转网关

  • Amazon Transit Gateway Connec Amazon Transit Gateway t-Connect 附件自动支持 ECMP。

  • Amazon Direct Connect 网 Amazon Direct Connect 关-当网络前缀、前缀长度和 AS_PATH 完全相同时,网关附件会自动支持跨多个 Direct Connect 网关连接的 ECMP。

  • 中转网关对等 - 中转网关对等不支持 ECMP,因为它既不支持动态路由,也不能针对两个不同的目标配置相同的静态路由。

注意
  • 不支持 BGP 多路径 AS-Path Relax,因此您不能在不同的自治系统号 (ASN) 上使用 ECMP。

  • 不同挂载类型之间不支持 ECMP。例如,您无法在 VPN 和 VPC 挂载之间启用 ECMP。相反,将对中转网关路由进行评估,并根据评估的路径路由流量。有关更多信息,请参阅 路由评估顺序

  • 单个 Direct Connect 网关跨多个中转虚拟接口支持 ECMP。因此,建议您仅设置和使用单个 Direct Connect 网关,不要设置和使用多个网关来利用 ECMP。有关 Direct Connect 网关和公共虚拟接口的更多信息,请参阅如何设置从公共虚拟接口 Amazon 到的主动/主动或主动/被动 Direct Connect 连接? 。

可用区

当您将 VPC 连接到中转网关时,您必须启用要由中转网关使用的一个或多个可用区,以将流量路由到 VPC 子网中的资源。要启用每个可用区,您应指定确切一个子网。中转网关使用此子网中的一个 IP 地址将网络接口放入该子网中。在启用可用区之后,流量可路由到 VPC 中的所有子网,而不只是指定的子网或可用区。然而,只有驻留在拥有中转网关连接的可用区内的资源,才能到达中转网关。

如果流量来自目标附件不存在的可用区,则 Transit Gateway 将在内部将该流量路由到存在该附件的随机可用区。 Amazon 对于这种类型的跨可用区流量,无需支付额外的中转网关费用。

我们建议您启用多个可用区以确保可用性。

使用设备模式支持

如果您计划在 VPC 中配置有状态的网络设备,则可以为该设备所在的 VPC 挂载启用设备模式支持。这可以确保在源和目标之间传输流量的生命周期内,中转网关为该 VPC 挂载使用相同的可用区。它还允许中转网关将流量发送到 VPC 中的任何可用区,只要该区中存在子网关联。有关更多信息,请参阅 示例:共享服务 VPC 中的设备

路由

您的中转网关使用中转网关路由表在挂载之间路由 IPv4 和 IPv6 数据包。您可以将这些路由表配置为传播所连接的 VPC、VPN 连接和 Direct Connect 网关的路由表中的路由。您还可以将静态路由添加到中转网关路由表中。当数据包来自一个连接时,会使用与目的地 IP 地址相符的路由,将该数据包路由到另一个连接。

中转网关对等连接仅支持静态路由。

路由表

您的中转网关自动附带默认路由表。默认情况下,此路由表是默认的关联路由表和默认的传播路由表。或者,如果您禁用路由传播和路由表关联, Amazon 不会为中转网关创建默认路由表。

您可以为中转网关创建其他路由表。这样,您就可以隔离连接的子网。每个连接可以与一个路由表相关联。一个挂载可以将其路由传播到一个或多个路由表。

您可以在中转网关路由表中创建丢弃与路由匹配的流量的黑洞路由。

将 VPC 附加到中转网关时,您必须向子网路由表添加路由,以使流量通过中转网关进行路由。有关更多信息,请参阅《Amazon VPC 用户指南》中的 Transit Gateway 的路由

路由表关联

您可以将中转网关连接与单个路由表相关联。每个路由表可以与零到多个连接关联,并可以将数据包转发到其他连接。

路由传播

每个挂载都附带可以安装到一个或多个中转网关路由表的路由。当挂载传播到中转网关路由表时,这些路由安装在路由表中。您无法根据通告的路由进行筛选。

对于 VPC 连接,VPC 的 CIDR 块将传播到中转网关路由表。

当动态路由与 VPN 挂载或 Direct Connect 网关挂载一起使用时,可以通过 BGP 将从本地路由器获知的路由传播到任何中转网关路由表中。

当动态路由与 VPN 挂载一起使用时,路由表中与 VPN 挂载关联的路由将通过 BGP 发布给客户网关。

对于 Connect 挂载,与 Connect 挂载关联的路由表中的路由会通过 BGP 向在 VPC 中运行的第三方虚拟设备(例如 SD-WAN 设备)公开。

对于 Direct Connect 网关连接,允许的前缀交互控制从哪些路由通告到客户网络。 Amazon

当静态路由和传播路由具有相同的目标时,静态路由具有更高的优先级,因此传播路由不包含在路由表中。如果移除静态路由,则重叠的传播路由将包含在路由表中。

对等连接的路由

您可以将两个中转网关对等连接并在它们之间路由流量。为此,您可以在中转网关上创建对等挂载,并指定要与其创建对等连接的对等中转网关。然后,您可以在中转网关路由表中创建静态路由,以将流量路由到中转网关对等挂载。路由到对等中转网关的流量随后可以路由到对等中转网关的 VPC 和 VPN 挂载。

有关更多信息,请参阅 示例:对等中转网关

路由评估顺序

中转网关路由是按以下顺序评估的:

  • 目标地址的最具体路由。

  • 对于 CIDR 相同、但来自不同连接类型的路由,路由优先级如下所示:

    • 静态路由(例如,Site-to-Site VPN 静态路由)

    • 前缀列表引用的路由

    • VPC 传播路由

    • Direct Connect 网关传播路由

    • Transit Gateway Connect 传播路由

    • Site-to-Site VPN 传播路由

    • 中转网关对等传播路由(Cloud WAN)

某些附件支持通过 BGP 进行路由通告。对于具有相同 CIDR 且来自相同连接类型的路由,路由优先级由 BGP 属性控制:

  • 缩短 AS 路径长度

  • 降低 MED 值

  • 如果附件支持,则首选 eBGP 而不是 iBGP 路由

    重要

    Amazon 无法保证具有与上面列出的 CIDR、连接类型和 BGP 属性相同的 BGP 路由的路由优先顺序一致。

Amazon Transit Gateway 仅显示首选路线。只有当不再通告备用路由时,该路由才会显示在 Transit Gateway 路由表中,例如,如果您通过 Direct Connect 网关和站点到站点 VPN 发布相同的路由。 Amazon Transit Gateway 将仅显示从 Direct Connect 网关路由(首选路由)收到的路由。Site-to-Site VPN 属于备份路由,仅在不再公布 Direct Connect 网关时才会显示。

VPC 和中转网关路由表的区别

无论您使用的是 VPC 路由表还是中转网关路由表,路由表评估都会有所不同。

以下示例显示了 VPC 路由表。VPC 本地路由具有最高的优先级,然后是最具体的路由。在静态路由和传播的路由具有相同的目标时,静态路由具有更高的优先级。

目的地 目标 优先级
10.0.0.0/16

本地

1
192.168.0.0/16 pcx-12345 2
172.31.0.0/16 vgw-12345(静态)或

tgw-12345(静态)

2
172.31.0.0/16 vgw-12345(传播) 3
0.0.0.0/0 igw-12345 4

以下示例显示了公交网关路由表。如果要选择 Amazon Direct Connect 网关连接而不是 VPN 连接,则使用 BGP VPN 连接并传播中转网关路由表中的路由。

目的地 连接(目标) 资源类型 路由类型 优先级
10.0.0.0/16 tgw-attach-123 | vpc-1234 VPC 静态或传播 1
192.168.0.0/16 tgw-attach-789 | vpn-5678 VPN 静态 2
172.31.0.0/16 tgw-attach-456 | dxgw_id Amazon Direct Connect 网关 传播 3
172.31.0.0/16 tgw-attach-789 | -123 tgw-connect-peer 连接 传播 4
172.31.0.0/16 tgw-attach-789 | vpn-5678 VPN 传播 5