Elastic IP Addresses
An Elastic IP
address is a static IP address designed for dynamic cloud computing.
An Elastic IP address is associated with your AWS account. With an Elastic IP
address, you can mask the failure of an instance or software by rapidly remapping
the address to another instance in your account.
An Elastic IP address
is a public IP address, which is reachable from the Internet. If your instance
does not have a public IP address, you can associate an Elastic IP address with
your instance to enable communication with the Internet; for example, to
connect to your instance from your local computer.
Topics
Elastic IP Address Basics
The following are the
basic characteristics of an Elastic IP address:
- To use an Elastic IP address, you first allocate one to
your account, and then associate it with your instance or a network
interface.
- When you associate an Elastic IP address with an
instance or its primary network interface, the instance's public IP
address (if it had one) is released back into Amazon's pool of public IP
addresses. You cannot reuse a public IP address. For more information,
see Public IP Addresses and External DNS Hostnames.
- You can disassociate an Elastic IP address from a
resource, and reassociate it with a different resource.
- A disassociated Elastic IP address remains allocated to
your account until you explicitly release it.
- To ensure efficient use of Elastic IP addresses, we
impose a small hourly charge if an Elastic IP address is not associated
with a running instance, or if it is associated with a stopped instance or
an unattached network interface. While your instance is running, you are
not charged for one Elastic IP address associated with the instance, but
you are charged for any additional Elastic IP addresses associated with
the instance. For more information, see Amazon EC2 Pricing.
- An Elastic IP address is for use in a specific region
only.
- When you associate an Elastic IP address with an
instance that previously had a public IP address, the public DNS hostname
of the instance changes to match the Elastic IP address.
- We resolve a public DNS hostname to the public IP
address or the Elastic IP address of the instance outside the network of
the instance, and to the private IP address of the instance from within
the network of the instance.
Elastic IP Address Differences for EC2-Classic
and EC2-VPC
If your account
supports EC2-Classic, there's one pool of Elastic IP addresses for use with the
EC2-Classic platform and another for use with the EC2-VPC platform. You can't
associate an Elastic IP address that you allocated for use with a VPC with an
instance in EC2-Classic, and vice-versa. However, you can migrate an Elastic IP
address you've allocated for use in the EC2-Classic platform to the EC2-VPC
platform. You cannot migrate an Elastic IP address to another region. For more
information about EC2-Classic and EC2-VPC, see Supported Platforms.
When you associate an
Elastic IP address with an instance in EC2-Classic, a default VPC, or an
instance in a nondefault VPC in which you assigned a public IP to the eth0
network interface during launch, the instance's current public IP address is
released back into the public IP address pool. If you disassociate an Elastic
IP address from the instance, the instance is automatically assigned a new public
IP address within a few minutes. However, if you have attached a second network
interface to an instance in a VPC, the instance is not automatically assigned a
new public IP address. For more information about public IP addresses,
see Public
IP Addresses and External DNS Hostnames.
For information about
using an Elastic IP address with an instance in a VPC, see Elastic IP Addresses in the Amazon VPC User Guide.
Characteristic
|
EC2-Classic
|
EC2-VPC
|
Allocating an Elastic IP address
|
|
When you allocate an Elastic IP address,
it's for use only in a VPC.
|
Associating an Elastic IP address
|
You associate an Elastic IP address with an
instance.
|
An Elastic IP address is a property of an
elastic network interface (ENI). You can associate an Elastic IP address with
an instance by updating the ENI attached to the instance. For more
information, see Elastic Network
Interfaces (ENI).
|
Reassociating an Elastic IP address
|
If you try to associate an Elastic IP
address that's already associated with another instance, the address is
automatically associated with the new instance.
|
If your account supports EC2-VPC only, and
you try to associate an Elastic IP address that's already associated with
another instance, the address is automatically associated with the new
instance. If you're using a VPC in an EC2-Classic account, and you try to
associate an Elastic IP address that's already associated with another
instance, it succeeds only if you allowed reassociation.
|
Stopping an instance
|
If you stop an instance, its Elastic IP
address is disassociated, and you must reassociate the Elastic IP address
when you restart the instance.
|
If you stop an instance, its Elastic IP
address remains associated.
|
Assigning multiple IP addresses
|
Instances support only a single private IP
address and a corresponding Elastic IP address.
|
Instances support multiple IP addresses, and
each one can have a corresponding Elastic IP address. For more information,
see Multiple Private IP
Addresses.
|
Migrating an Elastic IP Address from EC2-Classic to EC2-VPC
If your account
supports EC2-Classic, you can migrate Elastic IP addresses that you've
allocated for use in the EC2-Classic platform to the EC2-VPC platform, within
the same region. This can assist you to migrate your resources from EC2-Classic
to a VPC; for example, you can launch new web servers in your VPC, and then use
the same Elastic IP addresses that you used for your web servers in EC2-Classic
for your new VPC web servers.
After you've migrated
an Elastic IP address to EC2-VPC, you cannot use it in the EC2-Classic
platform; however, if required, you can restore it to EC2-Classic. After you've
restored an Elastic IP address to EC2-Classic, you cannot use it in EC2-VPC
until you migrate it again. You can only migrate an Elastic IP address from
EC2-Classic to EC2-VPC. You cannot migrate an Elastic IP address that was
originally allocated for use in EC2-VPC to EC2-Classic.
You can migrate as
many EC2-Classic Elastic IP addresses as you can have in your account. However,
when you migrate an Elastic IP address to EC2-VPC, it counts against your
Elastic IP address limit for EC2-VPC. You cannot migrate an Elastic IP address
if it will result in you exceeding your limit. Similarly, when you restore an
Elastic IP address to EC2-Classic, it counts against your Elastic IP address
limit for EC2-Classic. For more information, see Elastic IP Address
Limit.
You cannot migrate an
Elastic IP address that has been allocated to your account for less than 24
hours.
Working with Elastic IP Addresses
The following sections
describe how you can work with Elastic IP addresses.
Topics
Allocating an Elastic IP Address
You can allocate an
Elastic IP address using the Amazon EC2 console or the command line. If your
account supports EC2-Classic, you can allocate an address for use in
EC2-Classic or in EC2-VPC.
To allocate an Elastic IP address for use in EC2-VPC using the
console
- Open the Amazon EC2 console
at https://console.aws.amazon.com/ec2/.
- In the navigation pane,
choose Elastic IPs.
- Choose Allocate New
Address.
- (EC2-Classic accounts) In
the Allocate New Address dialog box, select VPC from EIP
used in, and then choose Yes, Allocate. Close the
confirmation dialog box.
- (VPC-only accounts) Choose Yes,
Allocate, and close the confirmation dialog box.
To allocate an Elastic IP address for use in EC2-Classic using
the console
- Open the Amazon EC2 console
at https://console.aws.amazon.com/ec2/.
- In the navigation pane,
choose Elastic IPs.
- Choose Allocate New
Address.
- Select EC2, and
then choose Yes, Allocate. Close the confirmation dialog box.
To allocate an Elastic
IP address using the command line
You can use one of the
following commands. For more information about these command line interfaces,
see Accessing Amazon EC2.
Describing Your Elastic IP Addresses
You can describe an
Elastic IP address using the Amazon EC2 or the command line.
To describe your Elastic IP addresses using the console
- Open the Amazon EC2 console
at https://console.aws.amazon.com/ec2/.
- In the navigation pane,
choose Elastic IPs.
- Select a filter from the
Resource Attribute list to begin searching. You can use multiple filters
in a single search.
To describe your
Elastic IP addresses using the command line
You can use one of the
following commands. For more information about these command line interfaces,
see Accessing Amazon EC2.
Associating an Elastic IP Address with a Running Instance
You can associate an
Elastic IP address to an instance using the Amazon EC2 console or the command
line.
(VPC only) If you're
associating an Elastic IP address with your instance to enable communication
with the Internet, you must also ensure that your instance is in a public
subnet. For more information, see Internet Gateways in the Amazon VPC User Guide.
To associate an Elastic IP address with an instance using the
console
- Open the Amazon EC2 console
at https://console.aws.amazon.com/ec2/.
- In the navigation pane,
choose Elastic IPs.
- Select an Elastic IP address,
choose Actions, and then select Associate Address.
- In the Associate
Address dialog box, select the instance from Instance and
then choose Associate.
To associate an
Elastic IP address using the command line
You can use one of the
following commands. For more information about these command line interfaces,
see Accessing Amazon EC2.
Disassociating an Elastic IP Address and Reassociating it with a
Different Instance
You can disassociate
an Elastic IP address and then reassociate it using the Amazon EC2 console or
the command line.
To disassociate and reassociate an Elastic IP address using the
console
- Open the Amazon EC2 console
at https://console.aws.amazon.com/ec2/.
- In the navigation pane,
choose Elastic IPs.
- Select the Elastic IP address,
choose Actions, and then select Disassociate Address.
- Choose Yes,
Disassociate when prompted for confirmation.
- Select the address that you
disassociated in the previous step. For Actions, chooseAssociate
Address.
- In the Associate
Address dialog box, select the new instance from Instance,
and then choose Associate.
To disassociate an
Elastic IP address using the command line
You can use one of the
following commands. For more information about these command line interfaces,
see Accessing Amazon EC2.
To associate an Elastic
IP address using the command line
You can use one of the
following commands. For more information about these command line interfaces,
see Accessing Amazon EC2.
Moving an Elastic IP Address
Currently, you can
migrate an Elastic IP address to EC2-VPC or restore it to EC2-Classic using the
Amazon EC2 Query API, an AWS SDK, or the AWS CLI only.
After you've performed
the command to move or restore your Elastic IP address, the process of
migrating the Elastic IP address can take a few minutes. Use the describe-moving-addresses command to check whether your Elastic IP address is still
moving, or has completed moving.
If the Elastic IP
address is in a moving state for longer than 5 minutes, contact
http://aws.amazon.com/premiumsupport/.
To move an Elastic IP
address using the Amazon EC2 Query API or AWS CLI
You can use one of the
following commands. For more information about these command line interfaces,
see Accessing Amazon EC2.
To restore an Elastic
IP address to EC2-Classic using the Amazon EC2 Query API or AWS CLI
You can use one of the
following commands. For more information about these command line interfaces,
see Accessing Amazon EC2.
To describe the status
of your moving addresses using the Amazon EC2 Query API or AWS CLI
You can use one of the
following commands. For more information about these command line interfaces,
see Accessing Amazon EC2.
To retrieve the
allocation ID for your migrated Elastic IP address in EC2-VPC
You can use one of the
following commands. For more information about these command line interfaces,
see Accessing Amazon EC2.
Releasing an Elastic IP Address
If you no longer need
an Elastic IP address, we recommend that you release it (the address must not
be associated with an instance). You incur charges for any Elastic IP address
that's allocated for use with EC2-Classic but not associated with an instance.
You can release an
Elastic IP address using the Amazon EC2 console or the command line.
To release an Elastic IP address using the console
- Open the Amazon EC2 console
at https://console.aws.amazon.com/ec2/.
- In the navigation pane,
choose Elastic IPs.
- Select the Elastic IP address,
choose Actions, and then select Release Addresses.
Choose Yes, Release when prompted.
To release an Elastic
IP address using the command line
You can use one of the
following commands. For more information about these command line interfaces,
see Accessing Amazon EC2.
Using Reverse DNS for Email Applications
If you intend to send
email to third parties from an instance, we suggest you provision one or more
Elastic IP addresses and provide them to us. AWS works with ISPs and Internet
anti-spam organizations to reduce the chance that your email sent from these
addresses will be flagged as spam.
In addition, assigning
a static reverse DNS record to your Elastic IP address used to send email can
help avoid having email flagged as spam by some anti-spam organizations. Note
that a corresponding forward DNS record (record type A) pointing to your
Elastic IP address must exist before we can create your reverse DNS record.
If a reverse DNS
record is associated with an Elastic IP address, the Elastic IP address is
locked to your account and cannot be released from your account until the
record is removed.
Elastic IP Address Limit
By default, all AWS
accounts are limited to 5 Elastic IP addresses per region, because public
(IPv4) Internet addresses are a scarce public resource. We strongly encourage
you to use an Elastic IP address primarily for the ability to remap the address
to another instance in the case of instance failure, and to use DNS hostnames
for all other inter-node communication.
If you feel your
architecture warrants additional Elastic IP addresses, please complete theAmazon EC2 Elastic IP Address Request Form. We will ask you to describe your use case so that we can
understand your need for additional addresses.
Source:AWS