0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

AWS VPC(プレフィックスリスト)を振り返ってみた。

Last updated at Posted at 2023-03-23

こんにちは。

VPCにはいつもお世話になっています。
なんだかんだ定義数が多くなりがちなVPC関連の設定ですが、プレフィックスリストによってグルーピングできるようです。

2020年6月にリリースされた機能ですので、使っている方は多いとは思います。その後のリリースでは、2022年4月に大阪リージョンで使用できるようになり、2022年7月にNetwork Firewallで使用できるようになりました。

Amazon Virtual Private Cloud (VPC) で、お客様独自のプレフィックスリストを使用して、セキュリティグループとルートテーブルの設定の簡素化が可能に
https://aws.amazon.com/jp/about-aws/whats-new/2020/06/amazon-virtual-private-cloud-customers-use-prefix-lists-simplify-configuration-security-groups-route-tables/

Amazon Virtual Private Cloud (VPC) プレフィックスリストが AWS アジアパシフィック (大阪) リージョンで利用可能に
https://aws.amazon.com/jp/about-aws/whats-new/2022/04/amazon-vpc-prefix-list-osaka-region/

AWS Network Firewall が VPC プレフィックスリストのサポートを開始
https://aws.amazon.com/jp/about-aws/whats-new/2022/07/aws-network-firewall-vpc-prefix-lists/

はじめに

複数のリージョンに同じCIDRを設定する必要が出ましたので、プレフィックスリストでできることを再確認することになりました。リソースを共有したり、コピーをしてAWSマネジメントコンソールから簡単に構築をしたいという目的があります。

・知っていること。
 プレフィックスリストにCIDRを登録することで、セキュリティグループやルートテーブルの定義にCIDRを1つずつ定義することなく、簡潔になる。
 システム分離を目的にAWSアカウントを分ける場合でもアカウント間の共有は可能である。
 ※他の方がわかりやすく整理していましたので、こちらの検証は割愛します。

・知らないこと。
 (細かいですが)ネットワークACLには使えるのか。
 東京リージョンで定義したプレフィックスリストを大阪リージョンにコピーできるのか。
 東京リージョンで定義したプレフィックスリストを大阪リージョンに共有できるのか。
 NetworkFirewallでプレフィックスリストを使ったことがない。

ということで知らないことを試していきます。

試してみる

①ネットワークACLにプレフィックスリストを指定してみる。
②-1東京リージョンで定義したプレフィックスリストを大阪リージョンにコピーできるのか。
②-2東京リージョンで定義したプレフィックスリストを大阪リージョンに共有できるのか。
③NetworkFirewallでプレフィックスリストを使ってみる。

①ネットワークACLにプレフィックスリストを指定してみる。

ダメでした。エラーになります。
1.png

②東京リージョンで定義したプレフィックスリストを他リージョンにコピーする。

確認観点は2点です。
②-1 東京リージョンで定義したプレフィックスリストを大阪リージョンにコピーできるのか。
②-2 東京リージョンで定義したプレフィックスリストを大阪リージョンに共有できるのか。

ダメでした。
アクションメニューにコピーはありません。
2.png

プレフィックスリストのリソース共有は、RAMを使用して他AWSアカウントと共有するものです。異なるリージョンに対する共有の機能はありませんでした。
3.png
※物理的なロケーションが違うので、当たり前といえば当たり前な気がします。

同じ定義を複数リージョンに配置したい場合、素直にCloudFormationを使いましょう。
ちなみに、同一リージョン内のリソース共有は大阪リージョンでも行えました。
RAMの簡単な設定になるので割愛します。

③NetworkFirewallでプレフィックスリストを使ってみる。

ネットワークファイアウォールのルールグループでプレフィックスリストを使用します。
試すために新しいネットワークファイアウォールのルールグループを作成します。
4.png

「IPセット参照 - オプション」にプレフィックスリストを登録します。
5.png
※プレフィックスリストの最大エントリ数がCIDRの使用数になりました。使っていなくても予約されるようです。

ルールに追加します。
IPセット参照で定義した変数名に、先頭@を付けることで定義できます。
6.png

無事に追加できました。
7.png

余談

NetworkFirewallでは、ルール変数もありますが、プレフィックスリストは設定することができません。プレフィックスリストを読み込めませんのでご注意ください。
21.png

同様にルールに直接プレフィックスリストは設定できません。
IPセットを経由しましょう。
9.png
設定しようとしても以下のエラーがでます。
10.png

まとめ

・プレフィックスリストを使用することでセキュリティグループやルートテーブルの管理が簡潔に行えるので積極的に使う。(既存の定義も直したい。)
・プレフィックスリストの最大エントリが大きすぎるとセキュリティグループのServiceQuotesによりはじかれます。またネットワークファイアウォールのキャパシティユニットも過剰に取られます。適切な値を設計しましょう。
・複数のリージョンで同じような設定をするときは、CloudFormationやCLI等を活用します。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?