我确信我的EC2实例和群集配置正确,并且由于网络配置而无法注册。
我正在从自动扩展组构建EC2实例,如果我创建/关联弹性IP,他们将注册但是我无法将它们转到NAT,因为它们将自动扩展我需要他们使用NAT向集群注册自己。
我在网络上有1个VPC 10.0.0.0/0
我在3个区域中有3个子网,范围为10.0.0.0/24
,10.0.1.0/24
& 10.0.2.0/24
。
我想使用亚马逊的NAT Gateway
不要与NAT Instance
混淆,后者是执行此功能的AMI。
我一直关注本指南@ http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html
(现在)我有一个路由表(分配了所有3个子网),如下所示......
10.0.0.0/16 | local
0.0.0.0/0 | nat-******
NAT网关位于10.0.2.19
。
安全组如下
Inbound
ALL TRAFFIC | ALL PROTOCOLS | ALL PORT RANGE |SOURCE: 0.0.0.0/0
Outbound
ALL TRAFFIC | ALL PROTOCOLS | ALL PORT RANGE |DESTINATION: 0.0.0.0/0
网络ACL
Inbound
Rule # | Type | Protocol | Port Range | Source | Allow / Deny
100 | ALL Traffic | ALL | ALL | 0.0.0.0/0 | ALLOW
* | ALL Traffic | ALL | ALL | 0.0.0.0/0 | DENY
Outbound
Rule # | Type | Protocol | Port Range | Destination | Allow / Deny
100 | ALL Traffic | ALL | ALL | 0.0.0.0/0 | ALLOW
* | ALL Traffic | ALL | ALL | 0.0.0.0/0 | DENY
这表明一切都被允许?
我已经将IP连接到一个实例,然后通过VPC连接到另一个实例并尝试ping NAT网关但不成功但我不明白为什么?这里的一切设置都非常简单,并没有多大意义?
非常感谢:)
答案 0 :(得分:8)
您将所有3个子网都设为私有。 NAT网关必须位于公有子网中,其路由表应该有一个条目0.0.0.0/0
,该条目应该路由到internet gateway
。
如果0.0.0.0
路由到自身,您如何期望NAT网关路由互联网流量?
你如何解决这个问题?在公有子网中创建NAT网关,或者确保NAT网关所在子网的路由表(10.0.2.0/24)具有正确的互联网流量路由。
您需要有2个路由表。一个用于NAT网关所在的子网。另一个路由表用于将Internet流量发送到NAT网关的私有子网。