CYDAS Developer's Blog

サイダス技術者ブログ

【AWS SAA合格への道】VPC

AWS ソリューションアーキテクト - アソシエイト合格に必要な知識をまとめていきたいと思います!
今回は「VPC」になります。

VPC(Virtual Private Cloud)

AWS上に仮想ネットワークを構築できるサービス

f:id:aym413:20190305172237p:plain
VPC作成イメージ

  • 単一リージョン内に作成する(リージョンをまたいで作成することはできない)
  • 他のVPCとは論理的に切り離されている
  • VPCのサイズ(CIDRブロック)は変更不可

ネットワーク

サブネット

VPCをさらに分割したネットワーク空間

f:id:aym413:20190306204318p:plain
サブネット作成イメージ

  • 単一AZ内に作成する(AZをまたいで作成することはできない)
  • サブネット内で利用できるIPアドレスは最初4つ最後1つのアドレス(合計5つ)はAWS側で予約されているため、使用不可
  • サブネットのサイズ(CIDRブロック)は変更不可
  • サブネットは1つのルートテーブルに紐付ける必要がある(複数のルートテーブルに紐付けることはできない)

パブリックサブネットとプライベートサブネットの違い

サブネットを作成する際の設定として、
「パブリックサブネットを作成する」や「プライベートサブネットを作成する」といったものはありません!
パブリックサブネットなのか、プライベートサブネットなのかを判断するのはサブネットに紐付くルートテーブルによって変化します。
詳細は「ルートテーブル」にて説明します。

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

VPC内のEC2とインターネット間の通信を可能にする

f:id:aym413:20190306205024p:plain
インターネットゲートウェイ作成イメージ

  • インターネットゲートウェイはVPCに紐付ける必要がある
  • ルートテーブルにインターネットゲートウェイのルートを追加する必要がある

ルートテーブル

ネットワークトラフィックの経路を判断する際に使用される

  • VPCを作成するとルートテーブルが1つ作成される(メインルートテーブル)
  • メインルートテーブルはサブネットを特定のルートテーブルに明示的に関連付けなかった場合に、暗示的に関連付けられる
  • ルートテーブルは追加で作成することができる(カスタムルートテーブル)
  • 同一VPC内の通信はデフォルトで許可されている

f:id:aym413:20190307232242p:plain
パブリックサブネットとプライベートサブネットの違い

この図が示す「10.0.0.0/16:local」はVPC作成時に指定したVPCのネットワーク範囲を表しています。 つまり、VPC内で行われる通信はこの「10.0.0.0/16:local」を使用することになります。

「0.0.0.0/0 : インターネットゲートウェイ」はデフォルトルートと呼ばれ、全ての経路を示します。

  • 0.0.0.0/0 : インターネットゲートウェイを持つルートテーブルが紐づいたサブネット
     →パブリックサブネット
  • 0.0.0.0/0 : インターネットゲートウェイを持たないルートテーブルが紐づいたサブネット
     →プライベートサブネット

VPC内のEC2とインターネット間の通信ができるための条件

  • インターネットゲートウェイがVPCと紐付けられていること
  • ルートテーブルにインターネットゲートウェイへのルートが含まれていること
  • VPC に関連付けられているセキュリティグループが、インターネット間とのトラフィックを許可していること
  • VPC 内のEC2は、パブリック IP アドレス または Elastic IP アドレスのいずれかを持っていること

NATゲートウェイ

プライベートサブネットに配置されたEC2からインターネットへ通信(アウトバウンド)は許可したいが インターネットからの通信(インバウンド)は許可したくない場合に利用

f:id:aym413:20190307232333p:plain
NATゲートウェイ作成イメージ

  • NATゲートウェイはパプリックサブネットに配置
  • プライベートサブネットに紐付くルートテーブルにNATゲートウェイを追加

セキュリティ

ネットワークACL

サブネットに紐付くファイアウォール

  • デフォルトで全ての通信は許可されている
  • 戻りの通信も明示的に許可する必要がある(ステートレス)
  • 記載された番号の小さい順にルールが適用される

セキュリティグループとの違い

f:id:aym413:20190307231531p:plain
ネットワークACLとセキュリティグループの違い

セキュリティグループの特徴についてはこちらの記事でも説明しています。 tech.cydas.com

VPC Flow Logs

VPC内のIPトラフィックの監視が行える