【初心者向け】AWS の仮想ネットワークを構築する基本サービスについてまとめてみた

記事タイトルとURLをコピーする

こんにちは。サーバワークスDS1課の吉岡です。
本記事ではネットワークを構築する中で学んだ基礎的な知識をまとめてみました!
各サービスの機能に関して簡単な説明と使用用途について説明します。
私がつまづいたポイントも整理して記事にしました。

ネットワークを構成するサービス

VPC

AWSが提供してくれる仮想プライベートクラウド空間です。
ネットワーク機器を必要とすることなく、ネットワーク設定ができます。
VPCを作成することで、
リソースの作成・ネットワークの接続・セキュリティの制御が可能になります。

サブネット

VPCのIPアドレス範囲を分割したものです。
IPアドレスはインターネット上の住所です。
パケットを届ける住所となるIPアドレスの範囲を絞ることができます。
IPアドレス範囲毎で管理できることがサブネットを作成することのメリットです。

インターネットゲートウェイ

VPCとインターネットの通信を可能にするサービスです。
VPCはグローバルIPアドレスを持っていません。
VPCとインターネットの接続を可能にする仲介役を担います。

ルートテーブル

ルートテーブルはパケットが目的地(宛先IPアドレス)に到達するためのルールを定めたものです。
パケットが目的地にたどり着くための道筋を示しています。

セキュリティに関するサービス

ネットワークACL

サブネット単位でアクセスの可否を設定したものです。
目的地がサブネット内のIPアドレスに指定されたパケットを通過させるかどうかのファイアウォールの役割を果たします。
送信元・接続方法によってサブネット内への通過を判断します。

セキュリティグループ

インスタンス単位でアクセスの可否を設定したものです。
目的地がインスタンスに指定されたパケットを通過させるかどうかのファイアウォールの役割です。
サブネット単位での制御→ネットワークACL
インスタンス単位での制御→セキュリティグループ

つまづいたポイント

ステートフルとステートレスの違い

背景

セキュリティグループとネットワークACLに関しての違いについて調べていると、
セキュリティグループはステートフル
ネットワークACLはステートレス
という違いがあることが分かりました。

理解した内容

ステートフルは「状態を保持し、現在の状態で出力が決まる」
ステートレスは「状態を保持せず、入力の値のみで出力が決まる」
という意味合いがあります。
ステートフルであれば一つの通信の設定を行えば、送受信両方に適用されます。
ステートレスであれば送受信個別で通信の設定を行う必要があります。
つまりセキュリティグループは一方向のみで、
ネットワークACLは送受信双方向の設定が必要です。

サブネットの必要性

背景

VPCとサブネットを設定を行っていると、
なぜサブネットを用意してIPアドレスを分割するのか分かっていませんでした。
ネットワークを構築する中でサブネットの必要性に気付くことができました。

理解した内容

分割することでパケットを届ける先をVPC内の中で限定することができます。
VPC内全体にパケットを届ける必要がなくなるため、効率的な送受信が可能になります。
なおかつサブネット単位に分割できるため、管理が容易になります。

ルートテーブルの必要性

背景

パケットの送受信のルールはセキュリティグループ、ネットワークACLといったファイアウォールで十分だと考えていました。
しかし、ルートテーブルは通信を行うために必要不可欠な存在だと分かったのでその内容を記載します。

理解した内容

ルートテーブルは送受信の道筋を決めています。
パケットが目的地にたどり着くために、ここを経由するなどのルールが書いてあります。
このルールがあることで送受信するときの道筋が明確になり、
パケットを目的地に届けることができます。

一方、セキュリティグループ・ネットワークACLは
パケットを通過させるかどうかのファイアウォールの役目を果たしています。

ルートテーブルがパケットの送受信の経路を決定し、
セキュリティグループがパケットの送受信の許可を決定しています。

最後に

最後まで読んでくださり、ありがとうございました!
ネットワークを構築するために学んだ基礎的な知識をまとめさせていただきました。
どなたかの役に立っていたら幸いです。