🦕

AWSの仮想ネットワーク構成(🔰)

2023/07/03に公開

はじめに

AWSでサービスを利用するには、「仮想ネットワーク」が必要です。
AWSのネットワークサービス 「VPC」 について学びました。

VPCとは?

  • Virtual Private Cloudの略
  • AWSクラウド内に仮想的なプライベートネットワーク環境を作成するサービスのこと。

VPC の例

ユーザーは、この仮想ネットワーク環境において、
自身のAWSリソース(EC2インスタンス、RDSデータベースなど)を自由に配置することができます!自分だけのセキュアなネットワーク環境をAWS上に構築することができます。

例えば、IPアドレス範囲を選択、サブネットを作成、ルーティングテーブルを設定、
ネットワークゲートウェイを設定するなどの設定が可能。

VPC(仮想ネットワーク)を構築するには、そのネットワークが持つIPアドレスの範囲(CIDRブロック)を定義する必要があります。

IPアドレスとは

インターネット上の全てのデバイスが一意に識別されるためのアドレス。

IPアドレスには、いくつかの種類があります。

  • パブリックIPアドレス
    インターネット上の任意のデバイスから直接アクセス可能なIPアドレスです。
    各パブリックIPアドレスはインターネット全体で一意でなければなりません。

  • プライベートIPアドレス
    特定のプライベートネットワーク内でのみ使用されます。
    インターネット上で一意である必要はありませんが、同じプライベートネットワーク内で一意である必要があります。

  • スタティックIPアドレス
    固定のIPアドレスで、手動で設定されます。
    サーバーのような、一定の場所からサービスを提供する必要があるデバイスによく使われます。

  • ダイナミックIPアドレス
    デバイスがネットワークに接続するたびに自動的に割り当てられます。
    これはDHCP(Dynamic Host Configuration Protocol)というプロトコルによって管理されます。

  • IPv4
    IPv4は最も一般的に使用されるIPアドレスの形式。
    数値4つから成るドット分割形式(例:192.168.0.1)で表されます。

  • IPv6
    IPv4の後継バージョン。
    より多くのユニークなアドレスを提供します。
    8つのグループに分けられた16進数(例:2001:0db8:85a3:0000:0000:8a2e:0370:7334)で表されます。

これらの種類はお互いに排他的ではなく、例えばパブリックIPアドレスはスタティックかダイナミックであり得ますし、プライベートIPアドレスはIPv4かIPv6であり得ます。

CIDR

  • Classless Inter-Domain Routingの略
  • IPアドレスとネットワークのルーティングをより効率的に行うための方法
  • IPアドレスの枯渇問題を軽減するために広く使用されています。

CIDRは、IPアドレスを「ネットワークアドレス」と「ホストアドレス」の部分に分割します。
IPアドレスの範囲を効率的に表現し、ネットワークの規模に関わらず、より細かく制御することができます。

https://aws.amazon.com/jp/what-is/cidr/

CIDR表記は、IPアドレスとスラッシュ(/)に続く数字で表されます。
この数字は、IPアドレスの「ネットワーク部分」の長さをビットで表しています。

たとえば、192.0.2.0/24というCIDR表記は、192.0.2.0から192.0.2.255までの256個のIPアドレスを表します。ここでの"/24"は、ネットワーク部分が24ビットであることを示しています。

VPC内の仮想ネットワークで使用するIPアドレスはプライベートなIPアドレスです。

プライベートIPアドレスの範囲は世界共通ルールとして決められていて、
CIDRでは、このプライベートIPアドレスの範囲を指定します。

プライベートIPアドレスには、以下の範囲があります。

IPアドレス範囲 CIDR表記
10.0.0.0 ~ 10.255.255.255 10.0.0.0/8
172.16.0.0 ~ 172.31.255.255 172.16.0.0/12
192.168.0.0 ~ 192.168.255.255 192.168.0.0/16

サブネット

サブネットは、VPC内で作成できる小さなネットワークのセクションです。

  • VPCの中で定義されるセキュアなネットワーク空間の一部を指します。
  • それぞれのサブネットが一意のCIDRブロックを持ちます。

次の図表は、あるリージョン内の 2 つの VPC を示しています。

サブネットの図表

VPCの中にサブネットを作成し、AWSのリソース(例えばEC2インスタンスやRDSデータベース)をこれらのサブネットに配置することができます。

AWSのサブネットは、以下の特徴があります!

  • 地理的な配置
    サブネットは特定のAWSのアベイラビリティーゾーン(Availability Zone、略してAZ)に関連付けられます。AZは地理的に分散したデータセンターで、これにより冗長性と高可用性を確保できます。
冗長性って何?

冗長性は、システムの要素を複数用意することで、一部が故障しても他の部分が代わりに機能する状態です。AWSでは、複数の地理的な場所にリソースを配置し、障害が起きてもサービスが中断されないようにします。

  • IPアドレス範囲
    各サブネットは、VPCのIPアドレス範囲の一部を持ちます。これをCIDRブロックといい、これにより各サブネットに所属するインスタンスにユニークなIPアドレスが割り当てられます。

  • セキュリティと制御
    サブネットを使用することで、ネットワーク内のリソース間のトラフィックフローを細かく制御できます。また、セキュリティグループやネットワークACLs(Access Control Lists)を使用して、サブネット内のリソースへのアクセスを制御することも可能です。

  • パブリックとプライベート
    AWSでは、2種類のサブネットを作成することができます。
    「パブリックサブネット」 インターネットから直接アクセスできる
    「プライベートサブネット」インターネットから直接アクセスできない

これにより、セキュリティを強化しながら、アプリケーションの一部を公開することが可能になります。

パブリックサブネットとプライベートサブネット

AWSのVPC内でサブネットを作成するとき、それが「パブリックサブネット」になるか「プライベートサブネット」になるかは、そのサブネットからインターネットへの接続方法によって決まります。

パブリックサブネット

  • インターネットゲートウェイに接続していて、そのサブネット内にある各インスタンスが直接インターネットと通信することが可能なサブネット。
  • サブネットがパブリックかどうかは、ルートテーブルの設定によります。
  • ルートテーブルにインターネットゲートウェイ(IGW)へのルートがある場合、そのサブネットはパブリックサブネットとなります。

プライベートサブネット

  • インターネットゲートウェイに直接接続していないサブネットで、インターネットと直接通信することはできません。
  • NATゲートウェイやNATインスタンスを使用することで、インターネット上のリソース(例えば、ソフトウェアの更新)へのアウトバウンド接続は可能です。

ルートテーブル

VPCの中でパケット(ネットワークを通過するデータの単位)がどのようにルーティング(転送)されるかを制御するためのもの。
個々のサブネットに1つずつ設定。

ルートテーブルで、サブネットの通信先にインターネットゲートウェイを指定することで、サブネットがインターネットに接続できるようになる!

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

インターネットゲートウェイ(IGW)

EC2インスタンスなどのAWSリソースとインターネット間で通信できるようにします。

イメージ

NATゲートウェイ

  • Network Address Translation
  • プライベートサブネット内のインスタンスからインターネットにアウトバウンド接続を許可するためのもの。
  • 一方向の通信しか許可しないため、プライベートサブネット内のインスタンスがより安全にインターネットと通信できます。

さいごに

分からん言葉がほとんどで理解に時間がかかりますね🥺
うまくまとめられていない気がしますが、、今日はここまで!

参考にさせていただいた記事🌱

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

https://qiita.com/g_ayushi/items/0e0f34d19813b8fdc2b8

Discussion