VPC 的 NAT 不允许互联网访问

VPC 的 NAT 不允许互联网访问

我正在尝试连接我的私有子网 postgres 集群,以便能够访问互联网,但不能公开访问。我的设置如下:

我有一个具有 4 个子网的 VPC 10.1.0.0/16

具有安全组的Postgres 子网10.1.2.0/24允许所有端口目标。然后,我将 NAT 网关连接到我的子网,并为该 NAT 分配并关联了一个 EIP。

然后我创建了一个与我的子网关联的路由表:

  • 10.1.0.0/16 当地的
  • 0.0.0.0/0 我的NAT

我已经检查了我的 NAT 网关和 EIP 的状态,一切处于活动状态且公开。

在建立隧道并连接到我的私有 ec2 postgres 实例后,我无法 ping 通我的 NAT 网关 ->10.1.2.124/24我的 postgres 服务器所在的私有 IP 地址10.1.2.11/24

我已经束手无策了。如果您需要该cloudformation文件来帮助调试,请告诉我,我会提供。

谢谢!

答案1

您的 VPC 上是否有互联网网关?另外,请将 NAT 网关放在单独的子网中。

这是通常的设置:

  • 具有 NAT 网关的公共子网。公共子网路由表应将 0.0.0.0/0 重定向到互联网网关。确保您的 NAT 网关具有 EIP。
  • 您的 postgres 实例的私有子网。确保私有子网将 0.0.0.0/0 路由到 NAT 网关。

答案2

亚马逊默认限制 icmp 流量,如果您希望能够 ping 通,请确保在安全组上启用了该功能。

如果您想通过 NAT 访问互联网,您还必须禁用 NAT 实例上的 src/destination 检查。

相关内容