跳至内容

为什么我无法通过 Transit Gateway 对等连接连接到我的资源?

3 分钟阅读
0

我在源虚拟私有云 (VPC) 和目标 VPC 之间设置了 AWS Transit Gateway 对等连接。但是,我无法通过对等连接连接我的 VPC 资源。

解决方法

验证源和目标 VPC 的 VPC 中转网关连接

完成以下步骤:

  1. 打开 Amazon Virtual Private Cloud (Amazon VPC) 控制台
  2. 在导航窗格中,选择 Transit gateway attachments(中转网关连接)。
  3. 确认 VPC 连接的中转网关 ID 与用于对等连接的 ID 一致。
  4. 确认源 VPC 与其中转网关位于同一 AWS 区域。
  5. 确认目标 VPC 与其中转网关位于同一区域。

检查包含 VPC 和对等连接的中转网关路由表

完成以下步骤:

  1. Amazon VPC 控制台上,选择 Transit gateway attachments(中转网关连接)。
  2. 选择 VPC 连接。然后,记下 Associated route table ID(关联的路由表 ID)列中的中转网关路由表 ID。
  3. 选择对等连接。然后,记下 Associated route table ID(关联的路由表 ID)列中的中转网关路由表 ID。

对源和目标中转网关重复这些步骤。

验证源 VPC 连接的路由配置

完成以下步骤:

  1. Amazon VPC 控制台上,选择 Transit gateway route tables(中转网关路由表)。
  2. 选择您记下的源 VPC 连接的路由表。
  3. 选择 Routes(路由)选项卡。
  4. 检查目标 VPC 的 CIDR 数据块是否存在路由,及其是否指向中转网关对等连接。

**注意:**对等互连的中转网关之间的流量需要在中转网关路由表中有一条指向中转网关对等连接的静态路由。

检查源对等连接的路由配置

完成以下步骤:

  1. Amazon VPC 控制台上,选择 Transit gateway route tables(中转网关路由表)。
  2. 选择您记下的源 VPC 连接的路由表。
  3. 选择 Routes(路由)选项卡。
  4. 检查源 VPC 的 CIDR 数据块是否存在路由,及其是否指向源 VPC 连接。

验证目标 VPC 连接的路由配置

完成以下步骤:

  1. Amazon VPC 控制台上,选择 Transit gateway route tables(中转网关路由表)。
  2. 选择您记下的目标 VPC 连接的路由表。
  3. 选择 Routes(路由)选项卡。
  4. 检查源 VPC 的 CIDR 数据块是否存在路由,及其是否指向中转网关对等连接。

检查目标对等连接的路由配置

完成以下步骤:

  1. Amazon VPC 控制台上,选择 Transit gateway route tables(中转网关路由表)。
  2. 选择您记下的对等中转网关连接的路由表。
  3. 选择 Routes(路由)选项卡。
  4. 检查目标 VPC 的 CIDR 数据块是否存在路由,及其是否指向目标 VPC 连接。

检查 VPC 子网路由表

完成以下步骤:

  1. Amazon VPC 控制台上,选择 Route tables(路由表)。
  2. 选择您的源实例和目标实例的路由表。
  3. 选择 Routes(路由)选项卡。
  4. Destination(目标)下,验证另一个 VPC 的 CIDR 数据块是否存在路由。然后,验证 Target(目标)是否显示本地 VPC 的中转网关 ID。

检查实例安全组和网络 ACL 设置

完成以下步骤:

  1. 打开 Amazon Elastic Compute Cloud (Amazon EC2) 控制台
  2. 在导航窗格中,选择 Instances(实例)。
  3. 选择要进行连接测试的源 Amazon EC2 实例。
  4. 选择 Security(安全)选项卡。
  5. 验证源 EC2 实例的 Outbound rules(出站规则)是否允许流量。
  6. 打开 Amazon VPC 控制台
  7. 在导航窗格中,选择 Network ACLs(网络 ACL)。
  8. 选择您的实例所在子网的网络访问控制列表(网络 ACL)。
  9. 检查 Inbound rules(入站规则)和 Outbound rules(出站规则)是否允许测试流量。
  10. 对目标实例重复步骤 1-9。对于目标实例,请检查安全组中的 Inbound rules(入站规则),而不是 Outbound rules(出站规则)。

检查中转网关的网络 ACL 设置

完成以下步骤:

  1. 打开 Amazon EC2 控制台
  2. 在导航窗格中,选择 Network Interfaces(网络接口)。
  3. 在搜索栏中,输入 Transit gateway(中转网关)。
  4. 记下中转网关网络接口的 Subnet IDs(子网 ID)。
  5. 打开 Amazon VPC 控制台
  6. 在导航窗格中,选择 Network ACLs(网络 ACL)。
  7. Filter network ACLs(筛选网络 ACL)搜索栏中,输入您在步骤 4 中记下的 subnet ID(子网 ID)。
  8. 检查 Inbound rules(入站规则)和 Outbound rules(出站规则)是否允许源 VPC 和目标 VPC 之间的流量。
  9. 对每个子网重复步骤 7-8。

注意:最佳做法是将中转网关的网络 ACL 保持为开放状态

使用 Reachability Analyzer 测试连接

使用 Reachability Analyzer 验证您是否已正确配置安全组、网络 ACL 和路由表组件。有关说明,请参阅如何使用 Amazon VPC Reachability Analyzer 来排查 Amazon VPC 资源的连接问题?

**注意:**对于跨区域目标,Reachability Analyzer 仅检查通往第一个中转网关的路径。

在使用 Reachability Analyzer 时,请创建从源到目标和从目标到源两条路径。最佳做法是同时测试两条路径,因为即使转发流量成功,返回流量也可能失败。

如果您在可访问性分析期间收到 "TGW_ROUTE_AZ_RESTRICTION" 错误,请检查您的子网配置。您的中转网关 VPC 连接必须使用与源实例位于同一可用区中的子网。

使用路由分析器验证中转网关连接

**先决条件:**在开始之前,请创建全局网络并注册中转网关。有关说明,请参阅 AWS 全球中转网关的网络入门

然后,完成以下步骤:

  1. 打开 Amazon VPC 控制台
  2. 在导航窗格中,选择 Network Manager
  3. 选择 Global Networks(全局网络),然后选择您注册了中转网关的全局网络。
  4. 在导航窗格中,选择 Transit Gateway Network(中转网关网络),然后选择路由分析器。
  5. 填写 Source(源)和 Destination(目标)信息
  6. 选择 Run route analysis(运行路由分析)。

路由分析器会执行路由分析并显示 Connected(已连接)或 Not Connected(未连接)状态。如果状态为 Not Connected(未连接),则路由分析器会提供路由建议。采纳建议,然后再次运行路由分析以确认连接。

**注意:**路由分析器支持区域间对等互连,但不支持区域内对等连接。

检查流日志中是否存在路由问题

检查您的 VPC 流日志中转网关流日志,验证流量是否流经您的 VPC 和中转网关对等连接。同时确认流量在入口和出口方向上均流动。

然后,检查您的中转网关流日志,查看 packets-lost-no-routepackets-lost-blackhole 字段的增量。

**注意:**packets-lost-no-route 数据包丢失表示因路由不存在而导致的数据包丢失,而 packets-lost-blackhole 表示因来自连接的黑洞路由而导致的数据包丢失。如果您仍然无法通过 Transit Gateway 对等连接连接 VPC 资源,请联系 AWS Support

AWS 官方已更新 7 个月前