【AWS完全に理解したへの道】 IAM 基本編
に続く、VPC 基本編(項目の然るべき順序的なものは後で整理するかも)
VPCの作成
ある特定のリージョンを選択してプライベートネットワーク空間を作成する。
プライベートネットワーク空間は /16(65,536個のIPアドレス)から /28(16個のIPアドレス)のCIDR(Classless Inter-Domain Routing)ブロック範囲で作成できる。
VPCを作成する場合は、RFC1918に指定されているように、以下のプライベートIPv4アドレス範囲からCIDRブロックを指定することを推奨されている。
- 10.0.0.0 - 10.255.255.255
- 172.16.0.0 - 172.31.255.255
- 192.168.0.0 - 192.168.255.255
サブネット作成
サブネットを作成時、AZごとに1つ以上のサブネットを追加する必要がある。
サブネットはAZをまたがって作成することはできない。
また、VPC CIDRブロックのサブセットである、サブネットのCIDRブロックを指定する。
オプション
IPv6 CIDRブロックをVPCに割り当てて、IPv6 CIDRブロックをサブネットに割り当てることができる。
ゲートウェイの作成
インターネットゲートウェイ(IGW)
できること
- インターネットでルーティング可能なトラフィックの送信先をVPCのルートテーブルに追加することができる。
- パブリックIPv4アドレスが割り当てられているインスタンスに対してNAT(ネットワークアドレス変換)を行うことができる。
バーチャルプライベートゲートウェイ(VGW)
VPNやオンプレのデータセンタなどと通信するための出入り口となるゲートウェイ。
VGWとVPC毎に1つだけ紐づけることができる。
EC2インスタンスのIPアドレス
VPCサブネット内で起動するEC2インスタンスにはそのサブネット内のプライベートIPアドレスが少なくとも一つ割り振られる。
そのEC2インスタンスにインターネットからアクセスしたい場合、さらにグローバルIPアドレスを割り振る必要がある。AWSのグローバルIPアドレスには以下の2種類がある。
- Public IP : EC2インスタンスが起動した際にランダムに割り振られる動的なグローバルIPアドレス。
- Elastic IP : アカウントに割り当てられる固定のグローバルIPアドレスでEC2インスタンスにアタッチ/デタッチする。
固定のグローバルIPアドレスでの運用が必要な場合に使用する。
※EC2インスタンスのプライベートIPアドレスとグローバルIPアドレスの紐付けはVPCの仮想ネットワークで行われる。
よって、EC2インスタンスのOSにログインしてifconfigコマンドなどでネットワークの設定を見てもプライベートIPアドレスの値しか表示されない。
ルートテーブルの作成
各サブネットがパブリックなのか、プライベートなのかは各サブネットに適用されているルートテーブルによって決定される。
また、VPC内の通信はルートテーブルでは制御できない。
パブリックサブネット
インターネットのアクセスを許可するサブネット
デフォルトゲートウェイのターゲットにIGW(インターネットゲートウェイ)が設定されたルートテーブルが適用されているサブネット。
プライベートサブネット
インターネットのアクセスを許可しないサブネット
デフォルトゲートウェイのターゲットにIGWが設定されたルートテーブルが適用されていないサブネット。
NATインスタンス
インターネットからのアクセスを受け付けないまま、プライベートサブネット内からインターネットやリージョンサービスにアクセスさせたいときに使用する。
- NATインスタンスの実態はEC2インスタンス。
- プライベートサブネット内のEC2インスタンスからトラフィックを受け付ける。
- そのEC2インスタンスのプライベートIPアドレスをNATインスタンスに割り振られたグローバルIPアドレスに変換し、インターネットへのアクセスを可能にする。
セキュリティグループ
EC2やELBやRDSなどのインスタンスごとのファイアーウォール。
各インスタンスごとに1つ以上のセキュリテイグループを適用する必要がある。
ネットワークアクセスコントロール(ACL)
サブネットごとのファイアーウォール。
セキュリティグループとネットワークACLの違い
セキュリティグループ | ネットワークACL | |
---|---|---|
適用単位 | EC2、ELB、RDSなどのインスタンス単位 | サブネット単位 |
作成、追加可能なルール | 許可のみ | 許可/拒否 |
デフォルトルール | インバウンド:全て拒否 アウトバンド:全て許可 |
インバウンド:全て許可 アウトバンド:全て許可 |
特徴 | ステートフル | ステートレス |
VPCピア接続
2つのVPCを接続する機能。
2つのVPC間でVPCピア接続を確立すると、双方のVPCにPCXというゲートウェイに相当するものが作成される。
VPCピア接続の制約条件は以下となる。
- 接続するVPCは同じリージョンに存在する必要がある。
- 接続するVPCのプライベートネットワークアドレス空間は重複しないようにする必要がある。
- 1 対 1の接続にする必要がある。