AWS

パブリックIPv4アドレスの有料化に備えよう ~ Elastic IP編 ~

yassan

今年のre:Invent 2023で初めてアメリカに行くことになりまして、ドキドキして夜も眠れない日々を過ごしています。やっさんでございます。

本ブログを読んでらっしゃる皆様は、Amazon Web Services様(以下、AWS)で予定している重要な料金体系の変更をご存知でしょうか。タイトルにもあります通り、「パブリックIPv4アドレス」の料金体系の変更です。

本ブログ投稿では、パブリックIPv4アドレスが有料化されるということについての解説と、AWSのサービスの一つであるElastic IPにおけるパブリックIPv4アドレスの有料化に備える方法をご紹介します。

最初にまとめ

最初に「パブリックIPv4の有料化に備えよう ~ Elastic IP編」のまとめを記載します。

  • 運用業務目的で利用している仮想マシンに付与されたElastic IPは、「EC2 Instance Connect Endpoint」を利用することによってコストを0に削減することが出来ます。積極的にEC2 Instance Connect Endpointを活用していきましょう!
  • Session Mangerの選択肢もありますが、VPC Interface Endpointは利用料金が発生するため、コスト削減の効果は「EC2 Instance Connect Endpoint」のほうが高いです。
  • 他システム連携など、運用業務目的以外で利用する必要があるElastic IPは、別途システム連携で利用している静的IPを他のエンドポイントにオフロードできるか確認していきましょう!

パブリックIPv4アドレスの有料化とは

2023年7月28日に、AWSはパブリックIPv4アドレスの有料化を発表しました。これは2024年2月1日からAWSで利用しているパブリックIPv4アドレスに料金が発生し、0.005USD/時間が課金されるようになります。有料化の背景に、パブリックIPv4アドレスの希少化が影響しています。パブリックIPv4アドレスは32桁の2進数で構成されており43億個のパブリックIPv4アドレスが存在します。

近年、クラウドの台頭によって簡単にパブリックIPv4アドレスを取得できるようになりました。また、IoTによって多くのモノがインターネットに繋がるようになり、多くのパブリックIPv4アドレスが消費されてきました。43億個では足りなくなっており、パブリックIPv4アドレスは希少性が年々高まっている状況にあります。

AWS様のブログによると、パブリックIPv4アドレスを取得するためのコストはこの5年間で300%上昇していると記載されています。

パブリックIPv4の利用状況の可視化をする

AWSではきたるパブリックIPv4アドレスの有料化に備えるために「Public IP Insights」を提供しています。この機能は無料で利用でき、現在のパブリックIPv4アドレスの使用状況を可視化することが出来ます。積極的に活用していきましょう!

Public IP InsightsによるパブリックIPv4アドレスの利用状況の可視化

Elastic IPとは

本題となるパブリックIPv4アドレス有料化に備えるためのElascit IPについてです。

Elastic IPは、静的パブリックIPV4アドレスになります。静的であるため、一度割り当てられたアドレスは変わらずに、ずっと固定で利用できます。

Elastic IPは以下のAWSリソースに関連付けることができます。

AWSリソース説明
Amazon EC2 インスタンス(EC2)AWS上でホストする仮想マシン。仮想マシンへのインターネット経由のアクセスなどの用途のために、Elastic IPアドレスを利用可能。
Elastic Network Interface(ENI)仮想ネットワークカードを表すVPC内の論理ネットワーキングコンポーネント。EC2にElastic IPを関連付けた場合はENIにも同じElastic IPが設定される。
Elastic IPを関連付けることができるAWSリソース一覧

Elastic IPの利用用途は主にIP固定

Elastic IPの利用用途を考えてみます。Elastic IPは静的IPであるため、IPアドレスの値を固定化することが出来ます。この静的IPアドレスの主な使用用途は運用業務で利用する踏み台サーバーや、他システム連携を行うホストでIPアドレス値の固定化を行う時に利用することが出来ます。

後者の他システム連携は場合によっては必要になるケースがあり、外せない要件になる可能性がありますが、前者の運用業務で利用する踏み台サーバーでElastic IPを利用しているケースはコストを削減できます!

Elastic IPを利用しない選択肢のご紹介

Elastic IPの利用しない選択肢はいくつかあります。選択肢をご紹介します。

選択肢1. EC2 Instance Connect Endpoint を利用する

EC2 Instance Connect はSSH接続を安全に利用する方法として利用できます。EC2 Instance Connectは2種類の方法があります。

利用方法パブリックIPv4アドレス説明
EC2 Instance Connect必要ブラウザベースのクライアントにはパブリックIPv4アドレスが必要です
EC2 Instance Connect Endpoint不要EC2 Instance Connect の VPC Endpointの利用料金はかかりません(2023年11月7日時点)
EC2 Instance Connectの2種類の方法

名称に「Endpoint」がない通常のEC2 Instance ConnectはパブリックIPv4アドレスが必要になりますので、本記事のコスト削減を達成することが出来ません。ここでは、「EC2 Instance Connect Endpoint」を利用することでコストを削減することが出来ます。

EC2 Instance Connect Endpoint を利用したSSH接続の例

EC2 Instance Connect Endpointは他のVPC Endpointと比較して簡単にセットアップできるようになっております。以下添付画像のように「Endpoint」の新規作成時に最初から選択肢として用意されています。

EC2 インスタンス接続エンドポイントの選択

EC2インスタンスにEC2 Instance Connect Endpointを用いて接続します。作成したEndpointを利用して接続します。

EC2 Instance Connect エンドポイントを使用した EC2 への接続

EC2に接続することが出来ました!

EC2 Instance Connect Endpointは、ホストへのエージェントインストールやセキュリティグループの設定など、他にも必要な設定があります。

また、ブラウザだけでなくAWS CLIを利用してコンソールからのSSH接続も可能です。

より詳細な説明はAWS 公式ページもご参照下さい。

EC2 Instance Connect Endpoint を使用した、パブリック IPv4 アドレスを必要としないインスタンスへの接続

選択肢2. Session Manager を利用する

パブリックIPv4アドレスを利用せずにEC2に接続する方法として、Session Mangerを利用する方法もあります。このSession ManagerではVPC Interface Endpointの作成が必要でして、以下のエンドポイントが必要です。

VPC Interface Endpoint 種別説明
ec2messages.region.amazonaws.comSystems Manger サービス への APIオペレーションに使用
ssm.region.amazonaws.com同上
ssmmessages.region.amazonaws.com同上
必要なVPC Interface Endpointの一覧

VPC Interface Endpointoの利用料金

VPC Interface Endpointには利用料金が発生します。

2023年11月7日時点での利用料金は以下の通りになっております。

0.014USD / 時間

Session Manager を利用したSSH接続の例

Session Mangerを利用する場合は、ご説明しました通り3つのVPC Interface Endpointが必要です。以下画像のように用意します。

VPC Interface Endpointの準備

Session ManagerでSSH接続します。以下画像のように、SSMエージェントがインストールされているホストは選択肢として指定して接続することが出来るようになります。

Session ManagerからSSH接続する

EC2に接続することが出来ました!

Session Managerは、ホストへのエージェントインストールなど、他にも必要な設定があります。

また、ブラウザだけでなくAWS CLIを利用してコンソールからのSSH接続も可能です。

より詳細な説明はAWS 公式ページもご参照下さい。

AWS Systems Manager Session Manager

選択肢3. VPCでIPv6を有効にして、IPv6前提でアクセスする

パブリックIPv4アドレスを利用しないもうひとつの選択肢として、パブリックIPv6アドレス利用を前提とするネットワーク設計にする方法があります。

このネットワーク設計について必要なことを一覧化しました。

必要なこと説明
VPCの設定変更VPCでIPv6アドレスを利用できるよう設定変更を行います
EC2へのIPv6アドレスの付与EC2を起動する時にIPv6アドレスを有効化します
プロバイダーのIPv6対応作業者のインターネット環境がIPv6に対応しているか確認する必要があります
IPv6を利用するために必要なこと

上記の特にプロバイダーのIPv6対応は、メッシュWiFiなど他社製のルーターを利用している場合にIPv6に対応していないという状況もあり軽視できない事柄となっています。

IPv6アドレスでEC2にSSH接続する方法について当社ブログ記事も併せてご参照下さい。

あわせて読みたい
EC2にIPv6でssh接続してみた
EC2にIPv6でssh接続してみた

その他、推奨されない方法についての考察

運用業務で利用するホストへのSSH接続においては、推奨されない方法がいくつかあります。

例えば、ECS Execを利用してコンテナにSSH接続する方法があります。しかしながら、ECSのコンテナの共有ボリュームはEFSが利用できますが、本目的のためにEFSを使うというのはEFS導入の手間とコストがかかります。標準でアタッチされるボリュームはコンテナを停止するとその内容が保持されないため、ECS ExecによるSSH接続は今回は対象外としました。

また、AWS CloudShellを利用してパブリックサブネットのEC2インスタンスに接続するという方法もありますが、この方法ですとCloudShellで利用されているIPアドレスを毎回セキュリティグループのインバウンドで許可する必要があり実用的ではありません。

パブリックIPv4アドレス利用料削減のコスト比較

最も重要なコストを比較します。比較内容は1ヶ月に発生する利用料金です。

選択肢利用料金 / 月内訳
EC2 Instance Connect Endpoint0 USD / 月
Session Manager30.24 USD / 月・VPC Interface Endpoint × 3
VPC IPv6 有効化0 USD / 月
番外:Elastic IPを使い続ける3.60 USD / 月
パブリックIPv4アドレス利用料の削減のための選択肢 - コスト比較

いかがでしょうか。私であればEC2 Instance Connect Endpointを利用することを第一に考えます。このように比較すると、Session Managerは便利ではあるのですがコスト的にはElastic IPと比べて料金が高くなることが分かります。

まとめ

最初のまとめと同じ内容になりますが、再掲いたします。

  • 運用業務目的で利用している仮想マシンに付与されたElastic IPは、「EC2 Instance Connect Endpoint」を利用することによってコストを0に削減することが出来ます。積極的にEC2 Instance Connect Endpointを活用していきましょう!
  • Session Mangerの選択肢もありますが、VPC Interface Endpointは利用料金が発生するため、コスト削減の効果は「EC2 Instance Connect Endpoint」のほうが高いです。
  • 他システム連携など、運用業務目的以外で利用する必要があるElastic IPは、別途システム連携で利用している静的IPを他のエンドポイントにオフロードできるか確認していきましょう!

本記事ではElastic IP編をお届けしました。
2024年2月1日に備えて、パブリックIPv4アドレスの利用コストを
積極的に削減をしていきましょう!

AUTHOR
Yasuyuki Sato
Yasuyuki Sato
記事URLをコピーしました