今回はAWSのVPCについて学習した内容をまとめてみました。
VPCとは、一言で説明すると仮想ネットワークのことです。
具体的には、AWS内部のネットワーク環境内にある自分専用のAWSの領域です。
その領域をどのようなセキュリティルーで守るか?
どの通信が入ってくるのを拒否するか?
などセキュリティ設定も含めたものになります。
AWSの様々なサービスを繋ぎ合わせるとても重要なサービスになります。
まずはじめに、AWSのVPCを理解するために必要な知識を順番に解説したいと思います。
##リージョン
アベイラビリティゾーン(AZ)で囲まれたネットワーク範囲のことをリージョン
と呼びます。
アベイラビリティゾーン(AZ)とは、クラウドサービスを提供するために設置された複数のデータセンター(サーバ機器や空調・電源設備などを収容する場所)同士を光ファイバ回線を接続して冗長化したものになります。
日本には、東京と大阪のリージョンがあります。
##サブネット
1つの大きなネットワークを小さいネットワークの集合体に分割した際の、それぞれの小さいネットワークのことをサブネットと呼びます。
AWSの場合ではVPC(AWS内部のネットワーク環境内にある自分専用のAWSの領域)という大きなネットワークがあり、その中にある小さいネットワークのことをサブネットと呼んで良いと思います。
サブネットにはPublicサブネットとPrivateサブネットの2種類があります。
####Publicサブネット
インターネット接続可
インターネットゲートウェイへのルーティング有るサブネットのことです。
####Privateサブネット
インターネット接続不可
ルートテーブルにインターネットゲートウェイへのルーティング無いサブネットになります。
プライベートサブネットからインターネット接続を可能とするためには、
Natゲートウェイが必要になります。
Natゲートウェイではアウトバウンドは設定できるが、インバウンドは設定できないことに
注意しておきましょう。
##CIDR表記(IPアドレスの範囲を指定できる)
通信設定をする時には、IPアドレスの指定
とサブネットマスク
の両方の情報が必要になります。CIDR表記は、サブネットマスクの単位を端的で見やすくするために考えられた表記方法だと思って頂くと良いと思います。
ちなみにサブネットマスクとは、IPアドレスのどこからどこまでが「どのネットワーク」でどの「コンピューター」からの情報かを示したものになります。
以下は、10.21.59.223のIPアドレスをCIDR表記を用いて通信範囲を表した例です。
0.0.0.0/0 すべてのIPアドレスが使用できる
10.21.59.223/32 10.21.59.223(1の特定のIPアドレスが使用できる)
10.21.59.223/24 10.21.59. * (第3オクテッド255個分のIPアドレスが使用できる)
10.21.59.223/16 10.21. * . * (第3オクテッド+第4オクテッド = 255×255個分のIPアドレスが使用できる)
※例えば上記の(第3オクテッド+第4オクテッド = 255×255個分のIPアドレスが使用できる)を指定したものをCIDR表示を使用せずに同じ事を表そうとすると以下のようになります。
10.21.59.223/255.255.0.0 10.21. * . * (第3オクテッド+第4オクテッド = 255×255個分のIPアドレスが使用できる)
このようにCIDR表記を使用した方が指定文が短く、直感的に理解しやすいですよね。
CIDR表記の/(スラッシュ)以降の数値は、サブネットマスクの中にある1の個数を表したものになります。
例えば「/24」と書いてあった場合は、サブネットマスクとして
2進数:11111111.11111111.11111111.00000000
10進数表記:255.255.255.0 を使用しますと言った事を表しています。
##ルートテーブル
サブネットに関連づけて使用するもので、サブネットから外に出ていく通信をどこに向けて発信するかを決めるルール・定義のことです。
ルートと呼ばれるルールで構成されます。
##インターネットゲートウェイ
VPC内のAWSリソースとインターネットを繋げる部分になります。
自動でスケールし、可用性が高いです。
サブネットのルートテーブルを設定して使用します。
##ENI(Elastic network interface)
仮想ネットワークインターフェイスのことをENIと呼びます。
EC2インスタンスのIPアドレスはENIに付与されます。
同じAZ内のインスタンスにアタッチ/デタッチができます。
##Public IPアドレス
AWSのIPアドレスプールより割り当てられる。
インスタンスが再起動、停止終了した場合にこのアドレスは開放されます。
##Elastic IPアドレス
インスタンスにアタッチ/デタッチ可能で静的なパブリックIPアドレスのことです。
インスタンスが再起動、停止、終了しても同一アドレスを保持します。
##セキュリティグループ
AWSの仮想ファイアーウォールサービスのことです。
※セキュリティグループはサブネット単位で設定することはできません。
ENI単位で設定するものになります。
セキュリティグループにはインバウンドルールとアウトバウンドルールがあります。
インバウンドルールは受信許可のルール設定です。
アウトバウンドルールは発信許可のルール設定になります。
##Network ACL
サブネット単位で設定するファイアーウォールのことです。
セキュリティグループの補助的なサービスになります。
セキュリティグループで対応ができない時などにNetwork ACLを使用したりします。
##まとめ
AWSのVPCとは、AWS内部のネットワーク環境内にある自分専用のAWSの領域のことであり、
VPCの内部にはサブネットを設置します。
サブネットにはインターネットに接続可能なPublicサブネットとインターネットに接続ができないPrivareサブネットがあります。
PublicサブネットはIGW(インターネットゲートウェイ)を通してVPC外部のインターネットと接続し、Privateサブネットは、Natゲートウェイを経由してPublicサブネットと接続することができます。
また、サブネット内にはセキュリティグループを設定し、通信範囲をCIDR表記を使用してインバウンドルールとアウトバウンドルールの内容を決めます。
IPアドレスは、動的なPublic IPアドレスとインスタンスが再起動、停止、終了してもアドレスが固定されたElastic Ipアドレスの2種類があります。
他にも色々ありますが、今回は以上とさせて頂きます。
この記事はAWS初学者を導く体系的な動画学習サービス
「AWS CloudTech」の課題カリキュラムで作成しました。
https://aws-cloud-tech.com