5

为了让我们的开发人员能够访问受 IP 限制的内部和合作伙伴应用程序,我正在设置 AWS Client VPN。即使可以访问互联网,我也设法让一切运行起来。正如预期的那样,公共 IP 正在发生变化。

我创建了一个 NAT 网关,分配了一个弹性 IP 并更改了子网的路由以使用 NAT 网关而不是 Internet 网关来访问 Internet (0.0.0.0/0)。

现在的问题是,一旦连接到 VPN,客户端就根本无法访问互联网。我缺少什么部分才能使 Internet 访问再次正常工作并使用带有静态 IP 的 NAT 网关?

设置是绝对基本的。1 个新 VPC、1 个子网、1 个客户端 VPN 端点、1 个安全组。

4

2 回答 2

5

您的设置很常见,可能只是一个简单的错误。您遵循的模式是私有/公有子网,即使这些术语在 AWS 中使用得不多。

当您有一个配置为使用 NAT 网关(作为0.0.0.0/0路由表上的路由)的子网时,该子网可以称为“私有子网”,因为不会Internet 直接访问它。

但是 NAT 网关本身需要放置在“公共子网”中,即需要放置在默认路由0.0.0.0/0到 Internet 网关的子网中。(不在您的问题范围内,但这与负载均衡器的常见错误相同。如果您有一个应该为 Internet 中的用户提供服务的 LB,即使您的服务器位于私有子网中,也需要将 LB 部署到公共子网)。

所以总结一下:

| Subnet # | Type    | Default Route (route table)   | What to place here? |
|----------|---------|-------------------------------|---------------------|
| 1        | Public  | 0.0.0.0/0 -> Internet Gateway | NAT Gateway         |
| 2        | Private | 0.0.0.0/0 -> NAT Gateway      | Users' applications |
于 2020-10-26T03:14:57.600 回答
1

您需要从 NAT 网关到 Internet 网关的路由,否则将流量路由到 NAT 网关的人并没有真正到达 Internet。

请查看https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario2.html#VPC_Scenario2_Routing访问 Internet 的模式。

于 2020-10-25T23:42:12.503 回答