AWSのAmazon VPC(Virtual Private Cloud)って複雑...

f:id:ts0818:20201205145900j:plain

クラウドコンピューティングcloud computing)は、インターネットなどのコンピュータネットワークを経由して、コンピュータ資源サービスの形で提供する利用形態である。略してクラウドと呼ばれることも多く、cloud とは英語で「」を意味する。

クラウドコンピューティング - Wikipedia

用語として最初に使用されたのは1996年 コンパックの社内資料といわれている

クラウドコンピューティング - Wikipedia

⇧「クラウドサービス」が何故「cloud」と呼ぶようになったのか気になってしかたない今日この頃、どうもボクです。

というわけで、今回は、「AWS」について。レッツトライ~。

 

Amazon VPC(Virtual Private Cloud)って?

AWSAmazon Web Service)のサービスの1つってことだとは思いますが、 

docs.aws.amazon.com

Virtual Private Cloud (VPC) は、AWS アカウント専用の仮想ネットワークです。VPC は、AWS クラウドの他の仮想ネットワークから論理的に切り離されており、VPC 内には、Amazon EC2 リソースなどの AWS リソースを起動できます。VPC の IP アドレス範囲を指定して、サブネットを追加し、セキュリティグループを関連付けて、ルートテーブルを設定できます。

https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/how-it-works.html

⇧ ってな感じで、 「AWSアカウント専用の仮想ネットワーク」ってことで「論理的」な「ネットワーク」ことなんですかね。

docs.aws.amazon.com

VPC の主な概念は次のとおりです。

https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/what-is-amazon-vpc.html

⇧「ネットワーク」を構成するのに必要な仕組みを提供してるってことなんすかね。 

「サブネット」については、

サブネットは、VPC の IP アドレスの範囲です。AWS リソースは、指定したサブネット内に起動できます。インターネットに接続する必要があるリソースにはパブリックサブネットを、インターネットに接続しないリソースにはプライベートサブネットを使用してください。

https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/how-it-works.html

⇧ 大きく分けて、

  • パブリックサブネット
    インターネットに接続するリソース向け
  • プライベートサブネット
    インターネットに接続しないリソース向け

 っていう分け方をしてるみたい。

各サブネットでの AWS リソースの保護には、セキュリティグループ、ネットワークアクセスコントロールリスト (ACL) など、複数のセキュリティレイヤーを使用できます。

https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/how-it-works.html

⇧「サブネット」に配置された「AWSリソース」にはアクセス制限を設ける感じですかね。

「パブリックサブネット」「プライベートサブネット」のイメージ図は、

aws.amazon.com

⇧ 上記サイト様がまとまってるかと。

 

Mapping Serviceって何?

Amazon VPC(Virtual Private Cloud)」が「AWSアカウント専用の仮想ネットワーク」 で「論理的」な「ネットワーク」ってことが分かったのだけど、「AWS」のサービスも突き詰めると「物理マシン」上に構築されてるはずだと。

異なる「物理マシン」に構築された「仮想マシン」は、どのように「通信」してるんだろうか?

dev.classmethod.jp

 

VPCにおけるレイヤ2を意識する!裏側で輝く『マッピングサービス』を絵を描いて理解してみた | Developers.IO

⇧ 上記サイト様がまとめてくださってますが、「Mapping Service」なる仕組みが「Amazon VPC(Virtual Private Cloud)」を支える技術の1つということみたい。

 

まぁ、「Amazon VPC(Virtual Private Cloud)」が複雑な仕組みの上に成り立っていることが分かりましたかね...

ちなみに、「Amazon VPC(Virtual Private Cloud)」は、

Classless Inter-Domain Routing (CIDR) notations are used to denote the size of your VPC. AWS allows you specify a CIDR block between /16 and /28. The largest, /16, provides you with 65,536 IP addresses and the smallest possible allowed CIDR block, /28, provides you with 16 IP addresses. Note, the first four IP addresses and the last IP address in each subnet CIDR block are not available for you to use, and cannot be assigned to an instance.

https://aws.amazon.com/jp/blogs/architecture/one-to-many-evolving-vpc-design/

⇧ 「CIDR(Classless inter-Domain Routing)」で「IPアドレスの範囲」を指定できるんだそうな。「サブネット」を作成する際、内部で「VLSM(Variable Length Subnet Masking)」が実施されてるんですかね?

注意点としては、「最初の4つ」と「最後の1つ」の計「5」つの「IPアドレス」については、利用者側で使用できないみたいね。

使用できない「5」つの「IPアドレス」が、どんな用途で使われているかは、 

docs.aws.amazon.com

The first four IP addresses and the last IP address in each subnet CIDR block are not available for you to use, and cannot be assigned to an instance. For example, in a subnet with CIDR block 10.0.0.0/24, the following five IP addresses are reserved:

  • 10.0.0.0: Network address.

  • 10.0.0.1: Reserved by AWS for the VPC router.

  • 10.0.0.2: Reserved by AWS. The IP address of the DNS server is the base of the VPC network range plus two. For VPCs with multiple CIDR blocks, the IP address of the DNS server is located in the primary CIDR. We also reserve the base of each subnet range plus two for all CIDR blocks in the VPC. For more information, see Amazon DNS server.

  • 10.0.0.3: Reserved by AWS for future use.

  • 10.0.0.255: Network broadcast address. We do not support broadcast in a VPC, therefore we reserve this address.

https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html

⇧ 上記の情報によりますと、

  1. ネットワークアドレス用
  2. VPCルーター用として予約
  3. DNS用として予約
  4. 将来の使用のために予約
  5. ブロードキャストアドレス

ってことみたい。

 

ネットワークまわり勉強せねばですかね...

今回はこのへんで。