首先,AWS会分配一个VPC,在这个VPC下默认会有3个子网,我们建立的EC2实例都在这3个子网里。
解决这个问题的大体思路是:通过nat gateway 将 eip(弹性ip)和EC2所在的子网做关联,中间还有一个路由表做中介。
进入VPC Dashboard:
在VPC Dashboard,先创建一个弹性IP,用于绑定到NAT网关:
其中的网络边界组和你的默认VPC是一致的,这样才能保证你的所有子网中的无公网IP的ec2都可以通过这个弹性IP访问公网资源。
创建一个Nat网关,在创建的同时关联前边创建的NAT网关:
ec2-without-public-ip-access-internet
注意,选择的子网一定要和你的ec2所在的子网一致,如果你想让不同子网的无公网IP的EC2都通过nat访问公网,你需要建立多个NAT为不同子网提供这个服务。
链接类型必须选择共有。
需要等待几秒钟等aws完成绑定操作。
在同一个可用区创建一个没有公网IP的EC2: