将公共和私有流量路由到 AWS ALB

时间:2021-03-20 17:26:17

标签: amazon-web-services amazon-elb amazon-vpc

我有一个 VPC,其公共子网包含 NAT 网关,私有子网包含运行我的应用程序的 ec2 实例。

公共 ALB 提供对私有子网中运行的应用程序的入站互联网访问。

我还想允许使用客户网关和中转网关通过站点到站点 VPN 访问此 ALB。

避免重复 ALB 及其配置(即避免拥有公共和内部 ALB)的最佳模式是什么?是否可以运行 VPN 用户将直接连接到的单个私有 ALB,并将公共互联网流量从公共 NLB 路由到它?

2 个答案:

答案 0 :(得分:0)

您可以使用使用 VPC 链接的 AWS API Gateway 私有集成模式来提供对您的服务的公共访问,并将您的服务托管在内部应用程序负载均衡器之后,如下所示:enter image description here

此外,您可能还需要考虑 AWS 和本地网络之间的 dns 解析。

答案 1 :(得分:0)

您应该能够使用中转网关路由表来完成此操作。创建两个 TGW 附着点;一个用于您的 VPN,另一个用于您的 ALB 所在的子网。现在,将这两个连接点与主 TGW 路由表解除关联。创建两个新的 TGW 路由表:

  • 将 0.0.0.0/0 指向您的 ALB 子网连接并将其关联到您的 VPN TGW 连接(启用 DNS 解析)
  • 将 0.0.0.0/0 指向您的 VPN 子网连接并将其关联到您的 ALB 子网 TGW 连接(启用 DNS 解析)

这样,来自您的 VPN 的任何流量都将进入您的私有 ALB 子网并解析为 ALB 私有 IP 地址。任何离开 ALB 目的地到非本地 IP 地址的流量(返回流量)都将路由到您的 VPN TGW 附件。

虽然我还没有测试您的具体场景,但我能够使用这种方法将 TGW 流量路由到 GWLB 端点和从 GWLB 端点路由。

您可以将公共 Internet 流量的路由原样保留到您的 ALB(从您的公共 NLB)。现在您有两种方法可以让客户到达同一个 ALB;一公一私。