Elastic IP

An AWS Elastic IP address (EIP) is a static, public IPv4 address allocated directly to your AWS account. It serves as a persistent internet-routable identifier that you can dynamically associate and disassociate from any cloud resource inside its designated region.


The Core Architectural Problem it Solves

When you launch a standard Amazon EC2 instance and enable public internet routing, AWS assigns it a generic Public IPv4 address from its shared regional pool. However, this baseline address is volatile and tightly bound to the machine's running state:

  • If you Stop or Hibernate the instance, the virtual hardware slots are released back to the data center pool, and AWS completely reclaims that public IP address.

  • When you Start the instance again, it boots onto a fresh hardware rack and receives a brand-new, completely different public IP address.


This behavior breaks production workflows. If your domain name configuration (DNS A Record) points to a standard public IP, or if external client applications have white-listed your server's IP in their local firewalls, stopping your server for a routine patch or an instance-type upgrade will break all external connectivity.


An Elastic IP resolves this by decoupling the network identity from the compute container. The IP remains permanently locked to your account until you explicitly delete it, surviving instance reboots, stops, and hardware terminations.

Key Characteristics and Technical Constraints

  • Static Lifecycle: The underlying IPv4 string remains fixed. You can assign it to an instance, leave that instance stopped for days, or shift it to an entirely separate load balancer without the IP characters changing.

  • Region and Border Constraints: An Elastic IP is provisioned within a specific AWS Region and cannot travel outside it. Furthermore, it is tied to a specific Network Border Group—a collection of hardware endpoints where AWS advertises the IP pool to the public internet.

  • Interface-Level Binding: Under the hood, an EIP doesn't map directly to the EC2 operating system. It maps to an Elastic Network Interface (ENI). When you associate an EIP with an instance, AWS updates the NAT (Network Address Translation) records at the VPC border to point traffic directly to that instance's primary ENI.


The High-Availability Dynamic Failover Pattern

Because Elastic IPs can be remapped programmatically, they function as a manual high-availability tool for single-instance setups.

If your primary application server suffers an operating system crash or a hardware failure, you don't need to update your public DNS records and wait for global propagation caches to clear (which can take hours).

Instead, you can make a single API or CLI call to instantly disassociate the Elastic IP from the failed server and reassociate it with a hot-standby instance running an identical software stack. The public traffic cuts over to the healthy instance in seconds.

The Financial Cost Structure (Strict Conservation Model)

Because public IPv4 addresses are a globally scarce, depleted resource, AWS enforces strict pricing structures to encourage efficient allocation:

  • Flat Rate Billing: AWS charges a flat $0.005 per hour ($3.65 per month) for every individual public IPv4 address in your account.

  • No Exemption for Active State: Historically, AWS allowed one free Elastic IP per running instance. However, to push global architectural standards toward IPv6 adoption, charges apply to all Elastic IPs, whether they are attached to a running instance or sitting idle in your account.

  • Remapping Limits: To prevent malicious script automation from thrashing the global routing tables, AWS tracks your configuration changes. If you execute more than 100 EIP remappings within a single calendar month, AWS levies an additional remapping transaction fee.

  • Default Scarcity Caps: New AWS environments are limited by a strict soft ceiling of 5 Elastic IP addresses per region. If your workload truly demands additional static endpoints, you must formally submit an explicit limit increase request via the AWS Service Quotas console.