2016-01-13 29 views
8

我從事aws工作。我創建了一個具有網絡ACL的公共子網,允許所有網絡流量,並與路由表中的Internet網關關聯。沒有彈性IP地址的情況下,ec2實例無法在公有子網中訪問互聯網?

然後我創建一個沒有彈性ip的ec2實例和一個帶彈性ip的ec2實例,安全組也允許所有流量。

我對有彈性IP的實例ssh。當我運行yum update和curl www.baidu.com等等時它運行良好。但是當我對沒有彈性ip的ec2實例進行SSH訪問時,我無法訪問互聯網。任何人都知道這是爲什麼?

+0

彈性IP在這種情況下是不相關的。檢查適用於公有子網的安全組設置和VPC ACL。 – slayedbylucifer

+0

如果網絡ACL或安全組不正確,無論我是否使用彈性IP,該實例都無法訪問Internet。對? –

+0

對於出站Internet訪問,這些事情很重要:實例上的Internet網關,NAT實例(僅適用於私有子網),安全組,網絡ACL和本地操作系統防火牆。彈性IP不參與這種混合。彈性IP僅在您想從Internet訪問您的實例(入站訪問)時纔有用 – slayedbylucifer

回答

1

除了在具有到Internet網關的路由的子網中,實例必須具有公共IP地址才能與外部世界進行通信(這與彈性IP不同)。

您可以在啓動實例時指定此選項,如果不存在每個子網設置來控制此實例。除默認VPC中的默認子網外,每個子網設置默認爲false。 aws文檔中還有更多details

9

要使用Internet網關從公共子網中的EC2實例訪問Internet,實例需要具有公共IP地址。任一人都可以配置實例具有公共IP地址或附加EIP。

參考:

如果你不希望附加與上網(考慮私人子網)情況下,公共IP地址,NAT實例,NAT網關可以提供幫助。

參考:http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat.html

相關問題