はじめに
第一回の記事ではデータセンターの単位をAZ(アベイラリティゾーン)といい、AZを束ねてリージョンという内容でした。リージョンにはVPCという仮想ネットワークを立てることができて、例えばap-northeast-1 (東京リージョン)を選択するとap-northeast-1a、ap-northeast-1c、ap-northeast-1dの3つ全てのリージョン(データセンター)を使用することが可能になるという話までしました。(画像のイメージ)今回はそのVPCとそれを分割したサブネットについて深堀していきます!
VPCとは
AWS内部のネットワーク環境のことです。AWSアカウントを作成するとデフォルトでひとつVPCが付与されます。デフォルトVPC以外にも自分専用のセキュリティ空間としてVPCを作成することができます。その空間に入ってくる通信を許可するのか、拒否するのかといったセキュリティ面のサービスも含まれます。つまり、VPCはAWSサービスを使ってネットワークを作る上での土台になる部分です。
サブネットとは
VPCを小さく分けたネットワークがサブネットです。これはセキュリティレベルを高めるためです。サブネットの中にサーバーを立て、サーバーがルールに基づいて外部と通信することでアプリケーションとしての機能を果たせる訳です。サブネットはAZを跨ぐことができないので一つのAZを選択して作成します。一つのAZに複数のサブネットを配置することは可能です。また、サブネットからインターネットゲートウェイへのルーティングの有無でパブリックサブネット, プライベートサブネットと呼び方が変わりますが今回は深堀はしません。以下の図の様なイメージです。

IPアドレス
VPCを使用する際はIPアドレスの範囲を指定する必要があります。このIPアドレスはサーバーやクライアント、ネットワーク機器を接続するのに十分な数を確保する必要があります。VPCのアドレスレンジ帯は/16〜/28の範囲内と決められています。/16や/28というのはサイダー表記というIPアドレスの範囲を示す方法で、詳しい説明は割愛しますが、例えば/24で区切った場合は32ビットのIPアドレスのうちの24ビットをネットワークアドレス部に割り振り、残りの8ビットをホスト部に割り当てることができるので、2**8=256個のIPアドレスを確保できることになります。(正確にはAWSの予約分が5つあるので251個となります)
具体例を見てみよう
VPCのIPアドレスを/21という大きいアドレスの範囲で確保して、それを/24のサブネットで分けていくということを考えます。このときVPCで確保できるIPアドレスは2**11=2048個となり、一つのサブネットに割り振れる数は256個となります。つまりこの場合最大8個のサブネットが作成できるということになります。以下の図では8個のサブネットのうちの6個を使い、残り2つを予備として残しているといった設計になります。

まとめ
今回はVPCとサブネットの構成について見てきました。次回、このVPCがインターネットとどのように接続するのか、およびそのための構成部品について説明していきたいと思います!
