1. はじめに
背景
みなさんこんにちは、エンジニアの弘輝です。
現在、AWSソリューションアーキテクト プロフェッショナル(SAP)を取得するために勉強しているんですが、学習を進める中で「AWS Transit Gateway」に関する問題によく遭遇します。
周辺の用語などを知らずに問題を解いていたため理解するのに苦しみました。😑
そこで、理解を深めるためのアウトプットとして本記事をまとめてみます。
この記事の目的
- SAP試験頻出の「Transit Gateway」の仕組みを整理する
- 複雑になりがちなネットワーク構成をスッキリさせる方法を理解する
2. Transit Gateway とは?
概要
一言で言うと「クラウド上のハブ&スポークを実現するルーター」です。
多数のVPCやオンプレミス環境(VPN/Direct Connect)を、中央のハブ(Transit Gateway)に集約して相互接続を簡素化するサービスです。
例えるなら羽田空港や成田空港などの「ハブ空港」です。
アメリカやイギリスから沖縄に行くには一度、羽田または成田空港を経由(トランジット)してから、国内線に乗り換えることで晴れて沖縄へ到着できます。🏝️
そんな感じのイメージです。

3.登場人物の整理
Transit Gatewayを理解し、試験問題を解けるようになるには、以下のキーワードを押さえる必要があります。
| 用語 | 説明 |
|---|---|
| Transit Gateway 本体 | ネットワークのハブとなるルーター |
| アタッチメント (Attachment) | VPC、VPN、Direct ConnectなどをTransit Gatewayに接続するための「接続口」 |
| Transit Gateway ルートテーブル | Transit Gatewayが通信をどこに送るかを判断するための経路表 |
| アソシエーション (Association) | ルートテーブル設定の一つで、VPCとTransit Gatewayのルートテーブルを関連付けるもの |
| プロパゲーション (Propagation) | ルートテーブル設定の一つで、VPCのCIDR(IPアドレス範囲)をルートテーブルに自動で登録する機能 |
アソシエーションとプロパゲーションは分かりづらいため後ほど詳しく記載します!
4. Transit Gatewayルーティングの仕組み
VPCピアリングだけの場合
例えば、VPCが4つあり、それらすべてを相互接続したい場合を想像してください。
VPCピアリングを使うと、6本のピアリング接続が必要になります。VPCが増えるたびに設定は爆発的に複雑になります。😟
Transit Gateway を使う場合
Transit Gatewayを導入すると、各VPCは中央のTransit Gatewayに対して単一の接続(VPCアタッチメント)を行うだけで済みます。
また、具体的にはTransit Gateway側でVPCアタッチメントを作成し、VPC内のサブネットに関連付けます。そうすることでVPCとTransit Gatewayの接続が可能になります。
見た目がスッキリするだけでなく、管理も非常に楽になります。
また、VPC 内のサブネットのルートテーブルに、Transit Gateway 向けの経路を追加する必要があります。ここまで行うことで通信できるようになります。
2つの重要な概念をもう少し詳しく
上記の登場人物でも紹介しましたが、Transit Gatewayの制御で試験に出るのが以下の2つです。これを理解できていれば、大体のTransit Gateway周りの問題であれば解くことができると思います。
-
アソシエーション(関連付け)
-
プロパゲーション(伝播)
5. 試験でよく見る構成パターン🧐
SAP試験の勉強をしていて遭遇した、代表的なパターンを紹介します。
この2パターンを頭に入れておけば、問題を見たときにイメージしやすくなると思います。
パターン①:環境分離
単一のTransit Gatewayを使いつつ、「特定のVPC同士(AとB)は遮断し、共通VPC(C)とは通信させる」というパターンです。
-
実装方法:
-
Transit Gatewayルートテーブルを「A・B用ルートテーブル」と「C用ルートテーブル」の2つ作成する。
-
1. A・B用ルートテーブル:
- アソシエーションに VPC A と VPC B を設定する。
- プロパゲーションには VPC C のアタッチメントのみ を設定
- AとBの経路はお互いに登録しない。
結果: AとBは「Cへの行き方」しか知らない状態になり、A⇔B間の通信は成立しない。
-
2. C用ルートテーブル:
- アソシエーションに VPC C を設定する。
- プロパゲーションには VPC AとVPC Bのアタッチメント を設定
結果: CからはAにもBにも転送できる。
-
パターン②:集約型インターネット出口
多数のVPC(スポークVPC)があり、インターネットへアクセスさせたいが、コストと管理の手間を抑えたい場合のパターンです。もし、各VPCにNAT Gatewayを配置すると「NAT Gatewayの維持費 × VPC数」となりコストが膨大になる。
-
実装方法:
- 「Egress VPC(出口専用VPC)」を1つ作成し、そこにNAT Gatewayを配置する。
- Transit Gatewayルートテーブルを「スポークVPC用」と「Egress VPC用」の2つ作成する。
-
スポークVPC用ルートテーブル:
- アソシエーションに すべてのスポークVPC を設定する。
- ここには
0.0.0.0/0(デフォルトルート) を静的ルートとして手動で追加し、ターゲットを Egress VPC のアタッチメントに設定する。
結果: スポークVPCからのインターネット行き通信は、すべてEgress VPCへ転送される。
-
Egress VPC用ルートテーブル:
- アソシエーションに Egress VPC を設定する。
- プロパゲーションには すべてのスポークVPCの経路 を設定
→ 結果: インターネットから戻ってきた通信が正しいスポークVPCへ転送される。
6. まとめ
今回はAWS SAP試験対策として、Transit Gatewayについて整理しました。
いざ記事としてアウトプットしようとすると、意外と理解できていない部分が多いことに気づき、とても良い勉強になりました。
資格試験的には「環境分離」や「集約型インターネット出口」などのパターンを押さえておくことが大切かなと思います! 😎
ここまで読んでいただきありがとうございました。🙇♀️
資格試験頑張りましょう。





