AWS EC2 instance IP网络 - Private/Public/Elastic IP address

本文详细介绍了Amazon EC2实例的网络配置,包括Private IP、Public IP和Elastic IP的概念及其作用。Private IP用于内网通信,Public IP由Internet Gateway动态分配,用于公网通信,而Elastic IP是静态分配给用户的公网IP。虚拟机的Private IP在重启后保持不变,但Public IP可能会变化,而Elastic IP即使未关联到任何实例也会产生费用。此外,Elastic IP可以附加到多个网卡并跨虚拟机迁移。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 登录到EC2 instance(也即EC2虚拟机)的操作系统里边,运行查看主机网卡的命令,比如'ifconfig' or 'ip address', 默认我们能看到有一个网卡,eth0,其地址就是private IP address。Private IP只能用于内网通讯,不能用于公网通讯。如果虚拟机需要被公网访问,或者需要访问公网,需要处于public subnet中,要用到下文提到的public IP address。

2. Public IP address是由图二中的Internet gateway(IGW),为我们的instance动态分配的一个公网IP。虚拟机要与公网通信,必须经过IGW。IGW上有一个public IP pool,每次启动一个处于public subnet的虚机时,就会从public IP pool中选中一个可用的IP,然后与该虚机的private IP做1对1映射。注意是1对1哦。这实际上用的是NAT(Network adress translation)技术。

3. Elastic IP adress也是public IP,只不过这个Elastic IP不是从IGW中的public IP pool中动态获取的,而是静态分配给了AWS当前用户,用户可以选择将这个Elastic IP分配给哪个EC2 instance。Public/Elastic IP对操作系统是不可见的,他们只是在防火墙上是可见的。EC2 虚拟机操作系统里边只能看到private IP。

4. 因为这些特性,所以虚拟机停止、再启动后, Private IP不变,但是public IP很有可能会变哦,因为之前的Public IP很有可能已经分给了别的刚启动的虚拟机。Elastic IP也不变,因为这个Elastic IP已经预先分配给了当前用户,所以启动别的账号的虚拟机是不会占用这个public IP的。需要注意的是,Elastic IP只要分配给了用户,即使没有与任何虚机关联,或者关联了,但是虚拟机没有启动,AWS也会收取少量费用。

5. 我们可以单独新建一个网卡,然后将Elastic IP与这个网卡关联。下一步,将这个网卡与某个虚拟机绑定,让该虚拟机有两个网卡 - 一个eth0,默认就有,一个eth1,就是我们自己创建的,然后attach到虚拟机上的。然后我们还可以将该网卡(eth1) 从虚拟机上dettatch, 然后将该网卡attach到别的虚拟机上。注意,虚拟机默认带的eth0网卡,我们不能将他从一个虚拟机迁移到另外一个虚拟机。

6. 如果虚拟机只有一个eth0网卡,那当我们将一个Elastic IP绑定到虚拟机后,虚拟机原有的public IP会被自动释放到IP地址池中,供别的虚机使用。然后我们再将该Elastic IP取消与该虚拟机的绑定,如果该虚拟机是UP状态,那AWS又会自动帮我们再从地址池中找一个public IP与该虚拟机绑定。 但是这只适用于虚拟机只有一个网卡的情况下。如果虚拟机有两个网卡,那我们将一个Elastic IP绑定到eth0后,再取消绑定,AWS不会帮我们再从地址池中找一个public IP映射到eth0上。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值