AWSの「インターネットゲートウェイ」を攻略せよ!仮想世界の郵便局を紐解く
クラウドの世界へようこそ!AWSのVPC(仮想プライベートクラウド)を学び始めると、必ずと言っていいほど最初に出会う壁が「インターネットゲートウェイ(IGW)」ですよね。
「なぜわざわざゲートウェイなんてものが必要なの?」「物理的な機械が見えないのに、どうやって通信しているの?」そんな疑問を抱いたことはありませんか?
今回は、インフラエンジニアの現場で避けては通れない、この「インターネットゲートウェイ」の正体を、身近な例えを交えながらスッキリと解説します。一歩ずつ、一緒に紐解いていきましょう!
—
1. インターネットゲートウェイは「仮想世界の郵便局」
まず、VPCを「広大な私有地」だと想像してみてください。その中には、たくさんの家(EC2インスタンスなど)が建っています。
この私有地の中に住む住人(データ)が、外の世界(インターネット)と手紙のやり取りをするためには、どうすればいいでしょうか? 塀で囲まれた私有地から勝手に外へ出ることはできませんよね。
そこで登場するのが「インターネットゲートウェイ(IGW)」です。これは、「私有地(VPC)と外の世界を繋ぐ、唯一の公的な郵便局」だと考えてください。
なぜ「物理的な実体がない」と言われるのか?
皆さんがAWSのコンソールでIGWを作成しても、データセンターのどこかに「箱」が届くわけではありません。AWSの裏側では、巨大なネットワークインフラが動いています。IGWは、特定のハードウェアに依存するものではなく、AWSという巨大なクラウド網に組み込まれた「論理的な機能」なんです。
だからこそ、私たちが意識しなくても、勝手にスケールアップ・ダウンし、高い可用性を保ってくれる。まさに「魔法のような郵便局」なのです。
—
2. 通信の仕組み:なぜ「パブリックサブネット」が必要なの?
さて、郵便局(IGW)があるだけでは手紙は届きません。私有地の中で「郵便局への道」が整備されている必要があります。それが「パブリックサブネット」です。
- プライベートサブネット: 郵便局への道がない、ひっそりとした住宅街。セキュリティは高いけれど、外の世界とは直接話せません。
- パブリックサブネット: 郵便局へ直通する道路(ルートテーブル)が整備されたエリア。ここにある家(EC2)だけが、IGWを通ってインターネットへ出られます。
ルートテーブルの役割
ルートテーブルは「目的地への地図」です。「インターネット(0.0.0.0/0)へ行きたいなら、IGWという郵便局へ向かいなさい」という標識を立てることで、初めてパケットは迷子にならずに外へ飛び出せるのです。
—
3. 実践!AWS CLIで「郵便局」を設置しよう
概念を理解したところで、実際にTerraformやAWS CLIでどのように管理するのか、現場でよく使う設定の雰囲気を見てみましょう。
まずは、IGWを作成し、VPCにアタッチする流れです。
# 1. インターネットゲートウェイを作成する
aws ec2 create-internet-gateway
# 2. 作成されたIDを使って、VPCにアタッチする(これで開通!)
aws ec2 attach-internet-gateway \
--vpc-id vpc-0abc123456789def0 \
--internet-gateway-id igw-0123456789abcdef0
# 3. ルートテーブルに「外の世界への出口」を設定する
# 0.0.0.0/0 は「すべての宛先」という意味です
aws ec2 create-route \
--route-table-id rtb-0abcdef1234567890 \
--destination-cidr-block 0.0.0.0/0 \
--gateway-id igw-0123456789abcdef0
0.0.0.0/0:これが「インターネット全域」を表す魔法の数字です。igw-xxxx:郵便局の識別番号ですね。
このように、たった数行の設定で、あなたの仮想ネットワークは世界と繋がります。
—
4. 冗長性と可用性:なぜ「止まらない」のか?
ここが一番のポイントです。IGWはAWSが裏で全自動管理しているため、「一台の機器が壊れたらインターネットが止まる」ということがありません。
皆さんが自分でルーターを買ってきてケーブルを挿すような運用なら、故障時の冗長化に頭を悩ませますが、クラウドのIGWは最初から:
- 水平方向にスケールする: 通信量が増えれば、勝手に処理能力が拡張されます。
- 冗長性が担保されている: AWSの巨大なネットワーク基盤の中に組み込まれているため、物理的な故障はAWS側で吸収されます。
私たちがやるべきことは、「IGWを作って、ルートテーブルに書き込む」ことだけ。あとはAWSという巨大な物流ネットワークが、パケットを安全に、そして高速に届けてくれるのです。
—
最後に:一歩ずつ理解を深めるために
ネットワークの世界は、目に見えないパケットが飛び交っているため、最初は怖く感じるかもしれません。でも、今回学んだ「郵便局と道路」の例えを思い出してください。
1. VPCという敷地がある。
2. IGWという郵便局がある。
3. ルートテーブルという地図がある。
この3つが揃って初めて、インターネットとの会話が成立します。もし通信がうまくいかないときは、「郵便局への道(ルートテーブル)は正しいか?」「パブリックサブネットに置いているか?」を一つずつ確認すれば、必ず原因は見つかります。
焦らず、一歩ずつ。皆さんのクラウドライフが、より快適なものになることを応援しています!また次回の技術解説でお会いしましょう。
コメント