How do I associate a static public IP address with my EC2 Windows or Linux instance?

Last updated: 2019-10-18

The auto-assigned public IP address associated with my Amazon Elastic Compute Cloud (Amazon EC2) instance changes every time I stop and start the instance. How can I assign a static public IP address to my Windows or Linux EC2 instance that doesn't change when this happens? 

Short Description

An Elastic IP address is a static IPv4 address associated with your AWS account in a specific Region. You can associate an Elastic IP address with your EC2 instance at any time using:

  • the Amazon EC2 console;
  • the AWS Command Line Interface (AWS CLI); or
  • AWS Tools for Windows PowerShell.

Unlike the auto-assigned public IP address, an Elastic IP address is preserved after you stop and start your instance in a virtual private cloud (VPC).

Note: There is a default limit of five Elastic IP addresses per Region. For more information about limits and how to request an increase, see Elastic IP Address Limit.


To allocate and associate an Elastic IP address with your EC2 Windows or Linux instance, follow these steps:

  1. Allocate an Elastic IP address from either Amazon’s pool of public IPv4 addresses or a custom IP address pool that you bring to your AWS account.
  2. Associate the Elastic IP address with a running instance.

You can also disassociate an existing Elastic IP address, and then reassociate it with a different instance.

Did this article help you?

Anything we could improve?

Need more help?