如何配置 AWS VPN 子网 NAT Internet

如何配置 AWS VPN  子网  NAT  Internet

我已经设置了到通信提供商的站点到站点 VPN(用于移动数据连接)。

它们的子网为 192.168.0.0/21。它通过 vgw(虚拟网关)连接到子网 10.0.1.0/24。该子网通过 igw(互联网网关)连接到互联网。

子网的路由表现在如下所示:

10.0.0.0/16 local
0.0.0.0/0 igw-xxx
192.168.0.0/21 vgw-xxx

到目前为止,已完成以下工作:

  • 从 EC2 实例到互联网的连接,反之亦然
  • 从 EC2 实例到移动终端设备的连接,反之亦然

现在我需要允许终端设备访问互联网。

我认为需要有一个 NAT 网关。所以我在子网中添加了一个 NAT 网关,并用 nat 替换了 igw。但这导致无法再与实例建立连接,因为这只会路由出站流量(我后来在手册中读到过)。

那么我还有什么其他选择?如何配置终端设备(linux)以使用此 nat 网关。

答案1

VPC 的 VPN 连接不是设计来以这种方式工作的。

您无法通过 VPC 对等连接、站点到站点 VPN 连接或 AWS Direct Connect 将流量路由到 NAT 网关。这些连接另一端的资源无法使用 NAT 网关。

https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html

VPN 连接另一端的任何事物能够传输 VPC 并访问 Internet 的唯一方法是实施没有边到边流量的解决方案。

一个例子是 Squid HTTP 代理服务器,配置在客户端的 HTTP 代理设置上。使用 HTTP 代理,客户端与代理建立连接(在 EC2 实例上),并请求与目标建立第二个连接。这是两个独立的 TCP 连接 - VPN 另一端的设备连接到 EC2 实例,EC2 实例连接到 Internet。这两个独立的连接是它起作用的原因。无法将流量直接从 VPN 连接路由到 VPC 中的任何其他类型的网关设备 - 只能路由到明确支持它的 EC2 目标和其他基于 ENI 的服务。

相关内容