【入門編】 VPCエンドポイント(Gateway型)のルートテーブル自動インジェクション – クラウドインフラと仮想化ネットワーク実践ガイド

AWSの「VPCエンドポイント」が魔法のように通信を繋ぐ仕組み:郵便配達で例えるルートテーブルの秘密

こんにちは!クラウドの深淵を覗き込み、時にネットワークのパケットと対話するSREの現場からお届けします。

さて、AWSでインフラを構築し始めると必ずぶつかるのが「VPC」という壁。「パブリックサブネット?プライベートサブネット?インターネットゲートウェイ?……え、S3への通信にゲートウェイが必要なの?」と、頭を抱えた経験はありませんか?

今回は、そんな中でも「Gateway型VPCエンドポイント」を作成した瞬間に起きる、ちょっと不思議な「ルートテーブルへの自動書き込み」という現象について、専門用語を極力排して紐解いていきましょう。

—

1. そもそも、なぜS3に繋がらないの?

まず、私たちがプライベートサブネットに置いたEC2インスタンスから、Amazon S3(ストレージ)にアクセスする場面を想像してください。

通常、プライベートサブネットのサーバーは「外の世界(インターネット)」への出口を持っていません。セキュリティのために扉を閉ざしているからですね。でも、S3はAWSのサービスでありながら、インターネット越しにアクセスする仕組みになっています。

ここで、「わざわざNATゲートウェイという高額な有料料金所を通ってインターネットに出るのももったいないし、セキュリティ的にも怖いよね」という課題が出てきます。

そこで登場するのが「VPCエンドポイント」というショートカットです。

—

2. 郵便配達員に例える「ルートテーブルの魔法」

さて、ここからが本題です。VPCエンドポイント(Gateway型)を作成すると、AWSの画面で「どのルートテーブルに反映させますか?」と聞かれますよね。チェックを入れると、魔法のようにルートテーブルに項目が追加されます。

これを「郵便配達」に例えてみましょう。

  • あなたのEC2(差出人): 手紙(リクエスト)を書いて、「S3へ送ってくれ」と頼みます。
  • ルートテーブル(地図): 郵便局の配達員が持っている地図です。この地図に「S3への宛先」が書かれていなければ、配達員は「どこへ行けばいいかわからない!」と手紙を迷子にしてしまいます。
  • VPCエンドポイント(専用トンネル): S3への専用ルートです。これを作った瞬間、AWSは自動的にあなたのルートテーブルという地図に、「S3行きの荷物はここから専用の秘密通路を通せ!」という指示を書き込んでくれるのです。

この「自動書き込み」こそが、今回のお話の主役。pl-xxxxxxxx という見慣れない文字列がそれです。

—

3. pl-xxxxxxxx って何者?

ルートテーブルを見ると、pl-xxxxxxxx という名前の「プレフィックスリスト」が宛先として設定されているはずです。

「プレフィックス」とは、ネットワークの世界では「宛先IPアドレスの範囲」のこと。S3は世界中に数え切れないほどのIPアドレスを持っていますが、それらを一つずつ書くのは現実的ではありませんよね。そこでAWSは、S3関連の膨大なIPアドレス群を pl-xxxxxxxx という「S3専用の箱」にまとめ上げてくれているのです。

つまり、ルートテーブルにこれを追加するということは、「S3宛のすべての手紙を、インターネットという大海原に出すのではなく、AWS内部の専用道路(エンドポイント)へ流し込みなさい」という命令を記述しているのと同じことなんです。

—

4. 現場で役立つ確認コマンド

この設定が本当に効いているか、現場のエンジニアはAWS CLIで確認します。複雑な画面をポチポチするよりも、このコマンド一発で確認するのが一番確実ですよ!

# 特定のルートテーブルの状況を確認するコマンド
aws ec2 describe-route-tables \
    --route-table-ids rtb-0123456789abcdef0 \
    --query "RouteTables[*].Routes" \
    --output table

# 実行結果には以下のような行が含まれているはずです
# | DestinationPrefixListId | GatewayId      | State  |
# | pl-63a5400a             | vpce-12345678  | active |

この pl-63a5400a が、まさに皆さんのS3を守るための「魔法の宛先」です。vpce-12345678 というのが、皆さんが作成したエンドポイントのIDになります。

—

5. まとめ:一歩ずつ進めば怖くない

いかがでしたか?

1. VPCエンドポイントは、インターネットに出ずにS3へ行くための「専用道路」。
2. ルートテーブルへの自動インジェクションは、その道路への入り口をAWSが勝手に「地図」に描き込んでくれる親切な機能。
3. プレフィックスリスト(pl-)は、膨大なS3のIPアドレスをひとまとめにした「便利な宛先スタンプ」。

最初は難しく感じるネットワークの概念も、こうして身近なものに置き換えてみると、パケットが元気に駆け巡る姿が想像できてきませんか?

「設定が自動で反映される」という黒魔術のような挙動も、裏側にはちゃんとした「配達のルール」があるんです。これからAWSを触る中で、この pl- を見かけたら、「あ、S3への専用道路が開通したんだな」と心の中でニヤリとしてみてください。

それでは、皆さんのインフラ構築がより安全で、快適なものになりますように!また次回の記事でお会いしましょう。

コメント

タイトルとURLをコピーしました