#Virtual Private Cloud(VPC)
AWSクラウド内に論理的に分離されたセクションを作り、ユーザーが定義した仮想ネットワークを構築するサービス
- 任意のIPアドレス範囲の選択して仮想ネットワークを構築
- サブネットの作成、ルートテーブルやネットワークゲートウェイの設定など仮想ネットワーキング環境を完全に制御可能
- 必要に応じてクラウド内外のネットワーク同士を接続することも可能
- 複数の接続オプションが利用可能
- インターネット経由
- VPN/専用線
単一のVPCを構築すると単一のAZの範囲に設定される。
同一リージョン内では、VPCは複数のAZにリソースを含めることができる。
VPCとサブネットの組み合わせでネットワーク空間を構築する。VPCはサブネットとのセットが必須。
- CIDR方式でアドレスレンジを選択
- AZのサブネットを選択
- インターネット経路を選択
- VPCへのトラフィック許可の設定
#CIDR
VPC内ではサブネット数は200までが最大とされている
既に利用されていて設定できないアドレス
ホストアドレス | 用途 |
---|---|
.0 | ネットワークアドレス |
.1 | VPCルーター |
.2 | Amazonが提供するDNSサービス |
.3 | AWSで予約されているアドレス |
.255 | ブロードキャストアドレス |
#サブネット
CIDR範囲で分割したネットワークセグメント
インターネットアクセス範囲を定義するために利用数
パブリックサブネット
トラフィックがインターネットゲートウェイにルーティングされるサブネット
インターネットと接続が必要なリソースを揃える
パブリックサブネットからインターネットに接続するにはインターネットゲートウェイが必要
プライベートサブネット
インターネットゲートウェイへのルートがないサブネット
インターネットから隔離することでセキュリティを高める
プライベートサブネットからインターネットに接続するにはNATゲートウェイがパブリックサブネットに必要(NATゲートウェイに接続してからインターネットに接続する)
#VPC外部接続
VPCの外側にあるリソースとの通信にはパブリックのAWSネットワークかエンドポイントを利用する。
例)S3を使う時、エンドポイントを利用してVPC外にあるS3とつなげる
#インターネット経路を設定
ルートテーブルとCIDRアドレスでルーティングを設定する
- ルートテーブルでパケットの行き先を設定
- VPC作成時にデフォルトで1つルートテーブルを作成
- VPC内はCIDRアドレスでルーティング
#VPCトラフィック設定
##セキュリティグループ
インスタンス単位の通信制御に利用する。
インバウンド(内向き、外部からVPCへ)とアウトバウンド(外向き、内部から外部へ)の両方の制御が可能。
制御項目
- プロトコル
- ポート範囲
- 送受信先のCIDRかセキュリティグループ
セキュリティグループは、デフォルトでアクセスを拒否されていて、設定された項目のみにアクセスを許可する。
応答トラフィックはルールに関係なく通信が許可される。
##ネットワークACL
サブネットごとの通信制御に利用する。
インバウンド(内向き、外部からVPCへ)とアウトバウンド(外向き、内部から外部へ)の両方の制御が可能。
ネットワークACLは、デフォルトでアクセスが許可されている。
応答トラフィックであろうと明示的に許可設定しないと通信遮断される。
#用語まとめ
##ゲートウェイ
VPCの内部と外部との通信をやり取りする出入り口。
インターネットゲートウェイ
VPCとインターネットとを接続するためにゲートウェイ。
各VPCに1つだけアタッチすることができる。
###仮想プライベートゲートウェイ
VPCがVPNやDirect Connectと接続するためのゲートウェイ。
各VPCに1つだけアタッチすることができる。
##VPCエンドポイント
S3やDynamoDBと接続する際に利用するゲートウェイエンドポイントと
それ以外の大多数のサービスで利用するインターフェイスエンドポイントがある。
###ゲートウェイエンドポイント
ルーティングを利用したサービス。
S3、DynamoDBへの通信は、エンドポイントを通じて行われる。
##ピアリング接続
2つのVPC間でプライベートな接続をするための機能。
AWSアカウントをまたがっての接続も可能。
VPCピアリングでの通信相手は、VPC内のEC2インスタンス。
##VPCフローログ
VPC内の通信の解析に利用。
ENI(Elastic Network Interface)単位で記録される。
送信元・送信先アドレス、ポート、プロトコル番号、データ量、許可/拒否が記録される。
#参考