2026年5月24日
2026年5月24日
AWS Elastic IPの取得・関連付け手順(コンソールとCLI、解除・解放と課金の注意)
AWSのEC2インスタンスに変わらないグローバルIPを持たせたいときは、Elastic IPアドレスを「割り当て(取得)」してから、インスタンスまたはネットワークインターフェースに「関連付け」ます。この記事では、マネジメントコンソールとAWS CLIの両方の手順、関連付け後の確認、DNSやWordPress側の設定、そして使い終わったときの解除・解放と課金の注意点までをまとめます。
Elastic IPが必要になる場面
EC2インスタンスを起動したときに自動で付くパブリックIPv4アドレスは、インスタンスを停止して再び起動すると別のアドレスに変わります。DNSのAレコードをそのIPに向けていると、停止・起動のたびにサイトにつながらなくなります。
Elastic IPは、AWSアカウントにひも付いたリージョン単位の固定のパブリックIPv4アドレスです。インスタンスを停止・起動しても同じアドレスのままで、障害時には別のインスタンスに付け替えることもできます。次のような場合に使います。
- 独自ドメインのAレコードをEC2に直接向けて、WordPressなどのサイトを公開したい
- 外部のAPIやデータベースが「接続元IPの許可リスト」で制限していて、送信元IPを固定したい
- メールサーバーなどで、逆引き(PTR)を設定した固定IPが必要
一方、Application Load Balancer(ALB)やCloudFrontの背後にEC2を置く構成では、利用者はロードバランサーのDNS名に接続するため、Webサーバー個々にElastic IPを付ける必要は通常ありません。小さなサイトでLightsailを使っている場合は、Lightsail側の「静的IP」の仕組みを使います(EC2のElastic IPとは別の機能です)。
作業前に確認すること
- リージョン:Elastic IPはリージョンごとの資源です。インスタンスと同じリージョンで取得します。コンソール右上のリージョン表示を最初に確認してください。
- 上限(クォータ):リージョンあたりのElastic IPの数には上限があります。既定値はService Quotasの画面で確認でき、足りなければ引き上げを申請します。
- 権限:IAMユーザーやロールに
ec2:AllocateAddress、ec2:AssociateAddress、ec2:DescribeAddressesなどの権限が必要です。 - 課金:AWSは2024年2月から、Elastic IPを含むすべてのパブリックIPv4アドレスを、インスタンスに関連付けて使用中かどうかにかかわらず時間単位で課金しています。料金は変わることがあるので、公式の料金ページで確認してください(2026年10月現在)。使っていないElastic IPを取得したまま放置しないことが大切です。
マネジメントコンソールでの手順
画面の表記は変更されることがあるので、目的ごとに説明します。
- EC2コンソールを開き、左メニューの「ネットワーク & セキュリティ」付近にある「Elastic IP」を選びます。
- 「Elastic IPアドレスを割り当てる」を選び、ネットワークボーダーグループやIPv4アドレスプール(通常はAmazonのプール)を確認して割り当てます。後で区別しやすいよう、
Nameタグを付けておくと管理が楽になります。 - 割り当てられたアドレスを選び、アクションから「Elastic IPアドレスの関連付け」を選びます。
- リソースタイプで「インスタンス」または「ネットワークインターフェイス」を選び、対象とプライベートIPを指定して関連付けます。
インスタンスに自動割り当てのパブリックIPが付いていた場合、Elastic IPを関連付けるとそちらに置き換わります。SSHで接続していると切断されるので、新しいIPで接続し直してください。
AWS CLIでの手順
複数環境で同じ作業をするなら、CLIのほうが記録が残り再現しやすくなります。以下のID・アドレスは例なので、自分の環境の値に置き換えてください。
# 1. Elastic IPを割り当てる(VPC用)。AllocationId と PublicIp が返る
aws ec2 allocate-address --domain vpc \
--tag-specifications 'ResourceType=elastic-ip,Tags=[{Key=Name,Value=wp-web-01}]'
# 2. インスタンスに関連付ける。AssociationId が返る
aws ec2 associate-address \
--instance-id i-0123456789abcdef0 \
--allocation-id eipalloc-0123456789abcdef0
# 3. 関連付けの状態を確認する
aws ec2 describe-addresses --allocation-ids eipalloc-0123456789abcdef0
すでに別のインスタンスに関連付いているElastic IPを付け替える場合、既定では失敗します。意図した付け替えなら --allow-reassociation を付けますが、移動元のサーバーが外部から到達できなくなるので、対象を取り違えていないかを先に確かめてください。
複数のネットワークインターフェースを持つインスタンスでは、--instance-id の代わりに --network-interface-id と --private-ip-address で関連付け先を明示すると、どのNICに付いたかが曖昧になりません。
関連付け後の確認
関連付けただけでは通信できないことがあります。次の順で確認します。
1. インスタンス自身から見たIP
# インスタンス内で、外から見えるIPを確認
curl -4 https://checkip.amazonaws.com
Elastic IPと同じ値が返れば、送信元IPとして使われています。外部APIの許可リストに登録するのはこの値です。
2. セキュリティグループ
Elastic IPを付けても、セキュリティグループで許可していないポートには接続できません。Webサーバーなら80/443、SSHは自分の接続元IPだけに絞って許可します。ネットワークACLを独自に設定している場合はそちらも確認します。
3. サブネットのルート
インスタンスがパブリックサブネット(インターネットゲートウェイへのルートがあるサブネット)にいないと、Elastic IPを付けても外と通信できません。プライベートサブネットのインスタンスに送信元IPの固定が必要なら、Elastic IPを付けたNATゲートウェイを経由させる構成にします。
DNSとWordPress側の設定
Route 53などのDNSで、ドメインのAレコードをElastic IPに向けます。切り替え前にTTLを短くしておくと、反映待ちの時間を減らせます。dig +short example.com A で新しいIPが返るかを確認してください。
WordPressの「WordPressアドレス(URL)」と「サイトアドレス(URL)」は、IPアドレスではなくドメイン名で設定します。IPで設定してしまうと、後でIPを変えたときや、HTTPSの証明書を取得するときに問題になります。もしIPで設定されていたら、データベースのバックアップを取ってから、ドメイン名に直してください。
メール送信に使う場合は、逆引き(PTR)の設定もElastic IPに対して行えます。コンソールのElastic IPの画面、または aws ec2 modify-address-attribute --allocation-id <ID> --domain-name <ホスト名> で設定し、正引きが同じIPを返すことが前提条件です。EC2からのポート25送信制限の解除は別の申請になります。
解除と解放:使い終わったら
Elastic IPを手放す手順は「関連付けの解除」と「解放」の2段階です。
# 関連付けを解除する(アドレス自体はアカウントに残る)
aws ec2 disassociate-address --association-id eipassoc-0123456789abcdef0
# 解放する(アドレスをAWSに返す)
aws ec2 release-address --allocation-id eipalloc-0123456789abcdef0
解除しただけのElastic IPは課金対象のまま残ります。インスタンスを削除(終了)しても、関連付いていたElastic IPは自動では解放されないので、削除後に一覧を見て不要なものが残っていないかを確かめてください。
解放したアドレスは、他のアカウントに割り当てられていなければ同じアドレスを取り戻せる場合がありますが、確実ではありません。外部の許可リストやDNSに登録しているIPを解放するときは、その前に登録先を新しいIPに変えておくのが安全な順序です。
まとめ
- Elastic IPは、停止・起動しても変わらないリージョン単位の固定パブリックIPv4です。インスタンスと同じリージョンで「割り当て → 関連付け」の順に設定します。
- 関連付け後は、外から見えるIP、セキュリティグループ、サブネットのルートを順に確認します。
- DNSのAレコードをElastic IPに向け、WordPressのURL設定はドメイン名で行います。
- パブリックIPv4は使用中でも課金されます。不要になったら「解除 → 解放」まで行い、インスタンス削除後の取り残しにも注意します。