IPAMの無料利用枠を用いて AWS Organizations 内のパブリックIPの状況を可視化する

エンジニアの唐津です。

今年7月末に通知があった通り、
AWS のパブリック IPv4 アドレスの料金体系が 2024年2月以降に変更となります。

上記の通知と同時に「Public IP Insights」という、アカウント内のパブリックIPの状況を見れる機能がリリースされていました。
こちらは、「Amazon VPC IP Address Manager (以下 IPAM)」という機能の一部であり、
単一のアカウントであれば無料で利用できましたが、
AWS Organizations 内の状況を一元管理するには、管理アカウントでIPAMを有効化する必要があるようでした(=有料)。

弊社は AWS Organizations で管理しているアカウントがそこそこあります。
個別に見るのも手間だし、そこまで高額ではないだろうし料金試算して IPAM を有効化しようか…などと考えているうちに、棚卸しを後回しにしてしまっていたところ、
IPAM に無料利用枠が導入される、という嬉しいニュースがありました。

内容を見るに、Public IP Insights にも対応しているようなので、
つまり「無料で組織内のパブリックIPの状況を可視化できるようになった」ということでは?と思い、試してみました。

IPAM の新料金体系

初めに、簡単にIPAMの新料金体系について、説明します。
先述の通り、新たに無料枠が導入されており、「IPAM Free Tier」と「IPAM Advanced Tier」に分かれています。

当然、利用できる機能に差分があり、
Free Tier の範囲でも、Public IP Insights の他にもいくつかの機能に対応しているようです。

以降の説明では、Public IP Insights の利用を中心に記載しますが、
詳細については、VPCの料金ページ をご参照ください。
※2023/11/21 現在、日本語版の料金ページには未反映のようですので、英語版をご参照ください。

手順

では、本題である組織内のパブリックIPの状況を一覧表示する方法を記載します。
前提として、以下を満たしているものとします。

  • Public IP Insights で状況を確認したいアカウントが AWS Organizations の組織内のアカウントであること
  • IPAM の管理を委任するアカウントを作成していること

1. Organizations の管理アカウントで委任作業を行う

組織内の状況をモニタリングできる「IPAMの委任された管理者」となるアカウントを指定します。
なお、Organizations の管理アカウントで、直接管理できるかどうか確認してみたところ、
以下の表示となるので、組織全体で管理したい場合は委任が必須のようです。

  • 管理アカウントでIPAMを作成しようとすると以下の内容が表示される

    組織の IPAM の委任管理者ではないことを検出しました。IPAM を作成すると、アカウント内のリソースのみが監視されます。
    IPAM で組織全体のリソースを監視する場合は、委任管理者のアカウントに IPAM を作成する必要があります。委任管理者を設定するには、組織の管理アカウントとしてサインインし、[設定] ページに移動します。

  • かつ、組織設定の画面からは以下の内容が表示される

    ユーザーが組織の管理アカウントであることを検出しました。組織内のアカウントを IPAM 管理者として委任できます。自分自身を IPAM 管理者として委任することはできません。

ということで、AWSのドキュメント: IPAM を AWS Organizations 内のアカウントと統合する の手順に従い、委任を行います。
今回は、マネジメントコンソールでの作業手順としますが、AWS CLI での対応も可能です。

Organizations の管理アカウントにログインし、以下の手順を実施しましょう。

  • IPAM を検索
    「機能」に 「Amazon VPC IP Address Manager」 が出てくるので選択しましょう。
  • サイドバーの組織設定を押下 > IPAM の委任された管理者 > 委任
    • 委任したい任意のアカウントのIDを入力して、変更を保存します。
      なお、ここで指定するアカウントも、当然 Organizations に参加している必要があります。

組織設定の画面に戻り、「IPAM の委任された管理者」に設定したアカウントが表示されていればOKです。

2. 管理を委任したアカウントで IPAM を作成

ここからは、1の手順で委任先として指定したアカウントで作業します。
アカウントを切り替えたら、先程と同様にマネジメントコンソールで IPAM を検索 > 組織設定 に遷移しましょう。

正常に委任が完了している場合は、以下のようなメッセージが表示されていると思います。

組織の IPAM の委任管理者であることを検出しました。IPAM を作成すると、組織のすべてのアカウントのリソースが監視されます。

IPAMの作成

では、IPAM を有効化します。
ここでは、サイドメニューから「パブリック IP に関するインサイト」を選択し、「IPAMを作成」に進みましょう。

設定画面では、以下それぞれ入力します。

  • データレプリケーションを許可
    メンバーアカウントから委任されたアカウントにデータをレプリケートするアクセス許可を設定します。
    委任されたアカウントで組織内の状況を一覧するには必要なので、有効化しましょう。
  • IPAM の枠
    今回は、組織全体のパブリック IP アドレスの使用状況を確認したいだけなので、「無料利用枠」を選択しましょう。
  • IPAM の設定
    任意の内容を設定しましょう。
    • リージョンについては「Info」を押下すると、以下の説明があり、無料利用枠でも指定したリージョンのパブリックIPは検出してくれるようです。
      ここでは、ap-northeast-1 のみ指定していますが、複数のリージョンを利用している場合は、対象のリージョンをすべて追加すると良いと思います。

      If you are creating an IPAM in the Free Tier, you can select multiple operating Regions for your IPAM, but the only IPAM feature that will be available across operating Regions is Public IP insights .

3. Public IP Insights を確認する

サイドメニューから、「パブリック IP に関するインサイト」を押下して、組織内のパブリックIPの状況を一覧できます。
以下のような感じで、組織全体の状況が可視化されます。
※数も結構あるし、利用していないEIPがあるしで、色々と整理が必要そうですね…

なお、作成直後は「パブリックIPが見つかりません」と表示されたり、
検出されているアドレスが少ないケースがあります。
少し時間を置くと徐々に反映されますので、気長に待ちましょう。

Public IP Insights の詳細な利用方法自体は、以下のドキュメントを参照してください。

まとめ

新たに導入された IPAM の無料利用枠を用いて、
組織内のパブリックIPの状況を一覧表示する方法を記載しました。

Organizations で管理している場合は、個別のアカウントで IPAM を有効化するより効率的に状況を確認できると思いますので、
ぜひ試してみてはいかがでしょうか。

よろしければご活用ください。
お読みくださりありがとうございました。