2

我使用 terraform 创建了一个新的 EC2 实例来安装 vertica,但无法在实例中访问 Internet 或 ping google.com。

我已经设置了一个带有私有子网的 ec2 实例,并设置了带有公共子网的 nat 网关。

主路由表允许 0.0.0.0/0 作为目标,目标作为 nat 网关。另一个路由表将子网关联作为私有子网 10.103.2.0/24。互联网网关也连接到 vpc。

我的 ec2 实例的安全组允许 Redshift 和 ssh 的流量用于以下目的地:10.83.0.0/16,10.100.0.0/16 和出站所有流量:10.83.0.0/16,10.100.0.0/16

我的问题:

  1. 任何路由表都应该以 Internet 网关为目标吗?
  2. 安全组是否也应该允许 icmp?
  3. 请简要介绍我应该如何进行故障排除以及我应该检查什么?
4

3 回答 3

1

这个说法

ec2 实例具有私有子网

与此说法相矛盾

我也为路由表设置了互联网网关

如果您的子网具有到 Internet 网关的路由,则您有一个公共子网。如果满足所有这些要求,您的实例将可以访问 Internet:

  1. EC2 实例有一个公共 IP 地址。
  2. 网络 ACL 允许所需端口上的入站和出站流量。网络 ACL 就像一个无状态防火墙。仅允许传出连接是不够的。
  3. 您的安全组应允许所需端口上的传出流量。

如果您的实例没有公共IP 地址,则需要部署 NAT 网关。

于 2016-12-18T08:46:35.823 回答
0

您很可能没有为您的 VPC定义任何互联网网关

于 2016-12-18T02:52:20.673 回答
-1

根据您对其他答案的回复,禁用源/目标检查应该可以解决您的问题。

https://docs.aws.amazon.com/vpc/latest/userguide/VPC_NAT_Instance.html#EIP_Disable_SrcDestCheck

于 2021-04-07T15:32:27.273 回答