【AWS】 VPCとは?CIDRとは?VPCとの接続、VPCの設計ポイントについて

AWS

「AWSのVPCについて、概要、接続に知りたい。」

このような疑問に対して、筆者が業務で使用するためにAWS VPCについて調べた内容メモをご紹介いたします。メモベースですので、分かりにくい箇所があるかも知れません。ご容赦ください。

この記事で分かること

  • VPC (Amazon Virtual Private Cloud)の概要
  • CIDRとは
  • VPCの設計ポイント
  • VPCとの接続

参考情報

>>【公式】Amazon ドキュメント VPC
>> Amazon VPC とは?

VPC (Amazon Virtual Private Cloud)の概要

    Virtual Private Cloud (VPC)
    VPCはAWSクラウド内に論理的に分離されたセクションを作り、ユーザーが定義した仮想ネットワークを構築するサービス

  • 任意のIPアドレス範囲を選択し、ネットワークを構築
  • サブネットの作成、ルートテーブルやネットワークゲートウェイの設定など仮想ネットワーキング環境を完全に制御可能
  • 必要に応じてクラウド内外のネットワーク同士を接続することも可能
  • 複数の接続オプションが利用可能
     -インターネット経由
     -VPN/専用線(Direct Connect)

    Virtual Private Cloud (VPC)

  • 単一のVPCを構築すると、単一AZの範囲に設定される

    Virtual Private Cloud (VPC)

  • 同一リージョン内では、VPCは複数のAZにリソースを含めることが可能

    サブネットとVPC

  • VPCとサブネットの組み合わせでネットワーク空間を構築する。VPCはサブネットとのセットが必須

    VPC設定手順

  • CIDR方式でアドレスレンジを選択
  • AZのサブネットを選択
  • インターネット経路を選択
  • VPCへのトラフィック許可を設定

CIDRとは

CIDR
CIDRに/16を設定した際に設定可能となるサブネット数とIPアドレス数の組合せ(AWS管理IPの5つを引いたもの)

サブネットマスク サブネット数 サブネットあたりのIPアドレス数
/18 4 16379
/20 16 4091
/22 64 1019
/24 256 251
/26 1024 59
/28 4096 11

    CIDR
    既に利用されていいるなどして設定できないアドレス
ホストアドレス 用途
.0 ネットワークアドレス
.1 VPCルータ
.2 Amazonが提供するDNSサービス
.3 AWSで予約されているアドレス
.255 ブロードキャストアドレス

サブネット

  • パブリックサブネット:トラフィックがインターネットゲートウェイにルーティングされるサブネット
  • プライベートサブネット:インターネットへゲートウェイへのルートがないサブネット

サブネット

  • サブネットはVPC内に複数設置でき、:プライベートとパブリックに分かれる
  • VPCあたりのサブネット作成上限数はデフォルト200個
  • インターネットアクセス範囲を定義するために使用

    CIDRの付与
    VPCとサブネットにはCIDR(IPアドレス範囲)が付与され、識別される

    VPCにサブネットを設定

  • VPCにCIDR/16を設定し、サブネットに/24の設定を推奨

VPCとの接続

    VPC外部接続

  • パブリックサブネットからインターネットに接続するにはインターネットゲートウェイが必要
  • プライベートサブネットからインターネットに接続するには、NATゲートウェイがパブリックサブネットが必要
    VPC外部接続

  • VPCの外側にあるリソースとの通信には、パブリックのAWSネットワークかエンドポイントを利用する

    インターネット経路を設定
    ルートテーブルとCIDRアドレスでルーティングを設定

  • ルートテーブルでパケットの行先を設定
  • VPC作成時にデフォルトで1つルートテーブルを作成
  • VPC内はCIDRアドレスでルーティング

    VPCトラフィック設定
    トラフィック設定はセキュリティグループまたは、ネットワークACLを利用する
セキュリティグループ設定 ネットワークACL設定
・ステートフル:戻りトラフィックの考慮がいらない
・サーバー単位で適用
・許可のみをIN/OUTで指定
・デフォルトでは同じセキュリティグループ内
 通信のみ許可
・必要な通信は許可設定が必要
・すべてのルールを適用
・ステートレス:戻りトラフィックも
 許可が必要
・サブネット単位で適用
・許可と拒否をIN/OUT
・デフォルトでは全ての送信元IPを許可
・番号の順序通りに適用

VPCの設計ポイント

  • 設計時には将来の拡張もみすえたアドレッシングや他ネットワークとの接続性も考慮する
  • CIDRは既存のVPC、社内のDCやオフィスと被らないアドレス対を設定し、組織構成やシステム構成の将来像も考えながら前もって計画する
  • VPC構成は自社業務に合わせたVPC単体ではなくVPC全体の関係性も視野に入れる
  • 組織とシステム境界からVPCをどのように分割するか将来構成も考慮してけんとうする
  • 複数AZを利用して可用性の高いシステムを構築
  • サブネットは大きいサブネットを使い、パブリック/プライベートサブネットへのリソースの配置をインターネットアクセス可否から検討する
  • セキュリティグループを使ってリソース間のトラフィックを適切に制御する
  • 実装や運用を補助するツールも有効利用し、VPC Flow Logsを使ってモニタリングできるようにする

    IPアドレスとサブネットマスク

  • IPアドレスは10進数の3桁(0-255) * 4つの組み合わせで、各桁が8桁の2進数の集合を表す。1つ目を第1オクテット、2つ目を第2オクテット、3つ目を第3オクテット、4つ目を第4オクテットともいう。
表記方法 10.0.0.255
10進数/2進数 10進数 2進数
第1オクテット 10 00001010
第2オクテット 0 00000000
第3オクテット 0 00000000
第4オクテット 255 11111111

    IPアドレスとサブネットマスク

  • サブネットマスクはIPアドレス表記の後ろに「/数値」で記載される
表記方法 10.0.0.255/24

    CIDR (Classless Inter-Domain Routing)

  • サブネットマスクの値を設定し、同じネットワークとして扱うIPアドレスの個数を調整できるIPアドレスの設定方法
「/」から前のアドレス部分を
10進数での表記した場合
196.51.***.***/16
「/」から前のアドレス部分を
2進数での表記した場合
11000100.00110011.********.********/16
/16をサブネットといい、2進数で数えて、
左から16桁目までが同じネットワーク範囲であることを表す


CIDR
IPアドレスの範囲は今後の拡張も踏まえて、十分な余裕がありつつ、多すぎないレンジを指定する

10.0.0.255/16
推奨レンジ
(655,534アドレス)

VPCとの接続

    VPCとのオンプレミス接続

  • VPN接続
  • 専用線接続(Direct connect)

    Direct Connect
    お客様のデータセンターやオフィスを専用線などを介してAWSへプライベートに接続するサービス

    【Direct Connectのメリット】

  • 安価なアウトバウンドトラフィック料金
  • ネットワーク信頼性の向上
  • ネットワーク帯域幅の向上

    Direct Connect

  • Direct Connectロケーションに物理的に自社オンプレ環境を接続することでAWS環境との専用線接続を実現する
  • Direct Connect gatewayにより、同一アカウントに所属する複数リージョンの複数AZから複数リージョンの複数VPCに接続
    VPNとのDirect Connect

  • VPNの方が安く素早く利用できるが、信頼性や品質は専用線が勝る
VPN 専用線
コスト 安価なベストエフォート
回線が有利
キャリアの専用線サービス契約が
必要となりVPNより割高
リードタイム クラウド上での接続設定
で可能なので、即時
物理的対応が必要なため数週間
帯域幅 暗号化のオーバーヘッドにより
制限がある
ポートあたり1G/10Gbps
品質 インターネット経由のため
ネットワーク状態の影響を受ける
キャリアにょり高い品質が
保証される
障害切り分け インターネットベースのため
自社で保持している以外の確認は
難しい
物理的に経路が確保されているため
比較的容易

    VPNエンドポイント

  • VPNエンドポイントはグローバルIPを持つAWSサービスに対して、VPC内から直接アクセスするための出口
  • GateWay型はサブネットに特殊なルーティングを設定し、VPC内部から直接外のサービスと通信する
  • PrivateLink型はサブネットにエンドポイント用のプライベートIPアドレスを生成しm、DNSが名前解決でルーティングする

    VPC Flow Logs
    ネットワークトラフィックを取得し、CloudWatchでモニタリングできるようにする機能

  • ネットワークインターフェースを送信元/送信先とするトラフィックが対象
  • セキュリティグループとネットワークACLのルールでaccepted/rejectされたトラフィックログを取得
  • キャプチャウィンドウと言われる時間枠(約10分間)で収集・プロセッシング・保存する
  • RDS・Redshift・ElasticCache、WorkSpacesのネットワークインターフェーストラフィックも取得可能
  • 追加料金はなし

    VPC Flow Logs
    ネットワークトラフィックを取得し、CloudWatchでモニタリングできるようにする機能

  • ネットワークインターフェースを送信元/送信先とするトラフィックが対象
  • セキュリティグループとネットワークACLのルールでaccepted/rejectされたトラフィックログを取得
  • キャプチャウィンドウと言われる時間枠(約10分間)で収集・プロセッシング・保存する
  • RDS・Redshift・ElasticCache、WorkSpacesのネットワークインターフェーストラフィックも取得可能
  • 追加料金はなし

    VPCの設定上限

  • VPCの各種設定においては上限数があるため、大規模に利用する場合は考慮する必要がある
リソース
リージョンあたりのVPCの上限数 5
VPCあたりのサブネットの上限数 200
AWSアカウントあたりの1リージョン内のElasticIP数 5
ルートテーブルあたりのルート上限数 100
VPCあたりのセキュリティグループの上限数 500
セキュリティグループあたりのルールの上限数 50

    VPCを分割するケース
    アプリサービスや組織構成などの用途に応じてVPCを分割する

  • アプリケーションによる分割
  • 監査のスコープによる分割
  • リスクレベルによる分割
  • 本番/検証/開発フェーズによる分割
  • 部署による分割 共通サービスの切り出し

    VPC Peearing
    VPC Peearingにより2つのVPC間でのトラフィックルーティングが可能

  • 異なるAWSアカウント間のVPC間をピア接続可能
  • 一部のリージョン間の異なるVPC間のピア接続も可能
  • 単一障害点や帯域幅のボトルネックは存在しない

    VPC設計

  • パブリックサブネットとプライベートサブネットを作る
  • パブリックサブネット側にWEBサーバを、プライベートサブネット側にDBサーバーをたてる
  • セキュリティグループとルートテーブルで設定を行う
  • NAT Gatewayを設置してプライベートサブネットからインターネットへのアクセスを可能にする
  • ネットワークACLによるアクセス制御を追加する

VPC Flow Logs

VPC Flow logsの特徴

  • ネットワークインターフェースを送信元、送信先とするトラフィックが対象
  • 機能自体には追加料金は発生しない
  • キャプチャウィンドウと言われる時間枠(約10分間)で収集、プロセッシング、保存する
  • セキュリティグループだけではなく、ネットワークACLのルールも対象となる


Elastic IPとPublic IP

    Elastic IP

  • インスタンスにアタッチ/デタッチが可能で、静的なインターネットと通信することができるIPアドレス
  • インスタンスが再起動・停止・終了した場合も同じIPアドレス

参考にさせていただいたページ

>> 【公式】AWS ドキュメント
>> AWSチャンネル
>> Acrovision > 技術記事 >AWS
>> これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

>> TOPにもどる

まとめ

本記事では「AWSのVPCについて、VPCとは?概要、接続方法について知りたい・・・」このような疑問に対して、筆者が業務で使用するためにAWS VPCについて調べた内容メモをご紹介いたします。メモベースですので、分かりにくい箇所があるかも知れません。ご容赦ください。

この記事で分かること

  • VPC (Amazon Virtual Private Cloud)の概要
  • CIDRとは
  • VPCとの接続
  • VPCの設計ポイント

なお、筆者がAWSソリューションアーキテクト アソシエイトの試験対策についてまとめた記事がありますので、ご紹介します。
【AWS SAA関連記事】
>> 【第1回】AWSソリューションアーキテクトアソシエイト勉強法/初心者が最短合格するための学習方法
>> 【第2回】AWSソリューションアーキテクトアソシエイト勉強法/主な学習トピックとポイント

本記事がお役に立てば幸いです。