![見出し画像](https://assets.st-note.com/production/uploads/images/126553080/rectangle_large_type_2_07f08389e1f17d4ff503edece0a3f521.png?width=1200)
【AWS】EC2のパブリックIPv4アドレスをIPv6に移行
背景
AWSから以下のメールが送られてきました。
[お知らせ] 2024 年 2 月 1 日からのパブリック IPv4 アドレスに対する新しい料金体系
2024年2月1日以降、IPv4アドレスを使用していると0.005USD/時の料金が発生するとのことです。
インスタンスの起動/停止に関わらず、IPv4アドレスを割り当てたままにすると約500~550円/月かかる計算になります。
そこでIPv6に移行できるものは移行することにしました。
参考
公式マニュアルを見てもいまいちよく分からなかったので、今回以下のサイトを参考にしました。ありがとうございます。
設定
それぞれ以下のように設定しました。
VPC
IPv6 CIDRを追加
![](https://assets.st-note.com/img/1708614648120-UqM1QuNDUl.png?width=1200)
ルートテーブル
1行目の「::/0」と2行目の「VPCで追加したIPv6 CIDR」を追加
![](https://assets.st-note.com/img/1708614777933-ALwfYQDktG.png?width=1200)
サブネット
サブネットのCIDRを追加(※今回はプレフィックスを/64にしました)
![](https://assets.st-note.com/img/1708614943931-lrmtQCgh5i.png?width=1200)
EC2インスタンス
インスタンス作成時のネットワーク設定では、上でIPv6 CIDRを追加したサブネットを選択、「パブリック IP の自動割り当て」を「無効化」(※重要)、「IPv6 IP を自動で割り当てる」を「有効化」してインスタンスを起動
![](https://assets.st-note.com/img/1708615377799-sd95FZJQJd.png)
パブリック IPv4 アドレスが「-」となっていればOK
![](https://assets.st-note.com/img/1708615287882-4kMKPt8z74.png?width=1200)
接続確認
切り替え完了後、WindowsからEC2インスタンスにSSH接続するため、コマンドプロンプトで以下のコマンドを実行します。
※IPv6アドレスを[]で囲う必要があります。
> ssh -i (秘密鍵).pem ec2-user@[(EC2インスタンスのIPv6アドレス)]
補足
IPv6 専用サブネットだとインスタンスによっては「ipv6 addresses are not supported on t2.micro」というエラーが出ます。
IPv6 専用サブネット内で起動するインスタンスは、Nitro System 上に構築されたインスタンスである必要があります。
もし参考になりましたら、♡(スキ)をクリックしてもらえると励みになります。