VPCとは
VPCとは、Amazon Virtual Private Cloudの略称。
自分の手で、クラウド上に、仮想的なネットワークを作れる
(ちなみに仮想って意味は、実際の手元にないって意味ね。深く考えずに、ただそれだけ。)
※VPCをちゃんと理解したかったら、ネットワークを結構詳しく理解してないと、VPCをちゃんと理解することはできないので注意
また、ネットワークは基本的に巨大なので、複雑で理解しにくい。
VPCの前提
VPCを理解したければ、他のリソース(EC2インスタンスやRDSやS3など)も、用語を知ってる必要がある。
なぜなら、VPCで作成したネットワークは、それらの資源と連携して使うものだから。
例えば、VPCの機能の1つとして、IPアドレスの割り当てがある。
VPC上で作成したEC2インスタンスに対して、仮想ネットワークからIPアドレスを割り当てることができる(例えばね)
VPCで、何すると、どうなるの?
・ネットワークの範囲
・サブネットの範囲
・ルートテーブル
・各種ゲートウェイ
の設定を行うと、
・小規模〜超大規模な仮想ネットワークが作れちゃう
VPCってなぜ必要なの?
それはー。
ネットワークのお勉強をしてください
そもそも、AWSのインスタンスでも、オンプレミスリソースでも、ネットワークと繋がっていないと、サービス提供できません。
サーバーとクライアントを繋ぐのが、ネットワークですから。
必ず、必要なものなんです。
VPCの特徴
VPCやサブネットは、通常のネットワークのセグメントに相当します。
VPCは、リージョン単位(わからなかったら自分で調べて)で、作成します。
また、表記は、CIDR表記です。
AWSのVPCで使用できないアドレス。
使用不可アドレス | 理由 |
---|---|
○○○.○○○.○○○.0 | ネットワークアドレス用(わからなかったら自分で調べて) |
○○○.○○○.○○○.1 | VPCルーター用アドレス(最初にここに問い合わせるよ〜ってやつ) |
○○○.○○○.○○○.2 | DNSサーバー用 |
○○○.○○○.○○○.3 | AWSが予備的に確保しちゃってる強制枠 |
○○○.○○○.○○○.255 | ブロードキャストアドレス用 |
・VPCは、複数のアベイラビィティゾーンをまたいで作成できる
・サブネットは、1つのアベイラビリティゾーンごとに作成する
VPCでできること
・VPCやサブネットを作れる(メイン機能)
・VPC内に、リソースを置ける:接続(ルーティングやIPアドレス割り当て)することで、リソースが機能する(メイン機能)
・複数のAWSアカウントで、1つのVPCやその中のリソースにアクセスできる(VPC sharing)
・オンプレミスリソース(自前の物理サーバーなど)と接続
・他のVPCネットワークと接続
用語解説コーナーーーーーー
プライベートサブネット、パブリックサブネット
プライベートサブネットは、デフォルトでは、外部と通信できない
パブリックサブネットは、外部通信する目的のサブネット
インターネットゲートウェイ
VPCとインターネットを通信させるための中継窓口
NATゲートウェイ
プライベートサブネットから、インターネットへ向けて、単方向通信をしたい場合に、中継してくれる窓口
仮想プライベートゲートウェイ
VPCと物理サーバ(オンプレミスサーバ)を接続するための窓口
カスタマーゲートウェイ
オンプレミス環境に、設置するゲートウェイ
VPCペアリング
2つのVPCネットワークを接続する(リージョンをまたがえない)
インターリージョンVPC
リージョンをまたがって、2つのVPCを接続する
VPCエンドポイント
リソース(AWSマネージドサービスやリージョンサービス:EC2やS3やダイナモDBなどのこと)と接続するための接点
トランジットゲートウェイ
VPCで構成された巨大なネットワークを一元管理するためのゲートウェイ
※一元管理とは?:通信の制御のこと
VPCで設定できるアクセス制御について
アクセス制御設定することで、インスタンスと通信できるようになる
なので、必然的に、この3つが必要です。(とても重要!:なら最初に書け)
ルートテーブル
ルーティングの関係を記述してあるもの
VPCを作成した時に、自動で作成されるメインルートテーブル
と
追加で作成できる、カスタムルートテーブルがある
セキュリティグループ
俗に言う'ファイアーウォール'のこと
設定しておいたルールに基づいて、通信を許可、遮断してくれるじょい。
また、通信のログも取ってくれる。
ネットワークACL
セキュリティグループの単位をサブネットレベルにしたもの
セキュリティグループは、リソース単位で、ルールを設定するのに対し、
ネットワークACLは、サブネット単位で、ルールを設定する
※ログは取らない、応答許可設定も必要
リソース:EC2インスタンスなど
サブネット:小さなネットワーク(目的ごとに作られる)
ちなみになぜ、サブネットなんてできたのか?管理しやすくするため。。。だってさ
最初のうちは、覚えなくてもいいかな?な知識(じゃあ書くなよ!!)
3つだけ書かせて
フローログ
VPCのIPトラフィック情報をログとして取得、保存できる機能があります。
GuardDuty
フローログの弱点:ログ量が多すぎて、人間には、不正なアクセスを見抜くには時間がかかる
GuardDuty様は、自動で不正アクセスの検知をしてくれる
リミット値
1つのリージョンで作成可能なVPCの数やサブネットの数、ElasticIPの数、ルートテーブルに書けるルートの数には、上限(リミット)が設けられている
こちらのサイトで確認しておこう
※今は、リミットではなく、クォータと言うよ
これだけは確認しておこう:料金について
無料のもの
項目 |
---|
VPCの作成 |
サブネットの作成 |
インバウンド通信 |
インターネットゲートウェイの作成 |
※無料なのはこれだけ
有料のもの
どこでお金が取られるか | お金の没収のされ方 |
---|---|
アウトバウンド通信 | データ転送量 |
VPCペアリング | データ転送量 |
NATゲートウェイ | NATゲートウェイの利用時間とデータ転送量 |
仮想プライベートゲートウェイ | VPNとdirectconnectの料金を確認してください |
VPCエンドポイント | PrivateLinkの利用時間とデータ転送量 |
トランジットゲートウェイ | アタッチメントごとに料金が発生するのと、データ転送量 |
豆知識
・クロスアカウントアクセス
AWSアカウントが構築したリソースに対して、別のAWSアカウントから、アクセスできるよ
参考文献
おすすめ書籍
追撃の巨人
これで、VPCは作れるようになりましたか?
なりませんね。
それでは、こちらで一緒にチュートリアル形式で作成していきましょう。