カテゴリ: AWS VPC 更新日: 2026/07/06

CIDRとは?AWS VPCにおけるアドレス設計をやさしく解説!初心者向けベストプラクティス

203
CIDRとは?AWS VPCにおけるアドレス設計の考え方とベストプラクティス

先生と生徒の会話形式で理解しよう

生徒

「先生、AWSのVPCでCIDRってよく出てくるんですけど、そもそもCIDRってなんですか?」

先生

「CIDRはIPアドレスの範囲を表すための表記方法のことなんですよ。AWSのVPC(仮想プライベートクラウド)では、CIDRを使ってネットワークの設計を行います。」

生徒

「なんとなく難しそうに聞こえます…でも避けては通れなさそうですね。」

先生

「大丈夫、基礎から一緒に学んでいけば理解できますよ!それではCIDRの基本から順に説明していきましょう。」

1. CIDRとは何か?初心者にもわかる定義と仕組み

1. CIDRとは何か?初心者にもわかる定義と仕組み
1. CIDRとは何か?初心者にもわかる定義と仕組み

AWSのネットワーク設定で必ず目にする「CIDR(サイダー:Classless Inter-Domain Routing)」とは、IPアドレスの範囲(ネットワークの広さ)を効率的に表現するための表記法です。

以前は「クラスA」「クラスB」といった固定のサイズでネットワークを区切っていましたが、それだと「アドレスが余りすぎる」「足りない」といった無駄が多く発生していました。そこで、必要な分だけ自由にネットワークの大きさを調整できるように開発されたのがCIDRです。

CIDRは、以下のようにIPアドレスの後ろに「/(スラッシュ)」と数字を付けて記述します。


10.0.0.0/16

この「/16」という数字は「プレフィックス長」と呼ばれ、IPアドレスの左側から何ビット分を「ネットワークの名前(ネットワーク部)」として固定するかを表しています。

プログラミング未経験の方には、住所の例えが分かりやすいでしょう。例えば「東京都渋谷区/2」と書いた場合、「東京都」と「渋谷区」までは固定(ネットワーク部)で、その後に続く「◯丁目◯番地」を自由に割り当てられる(ホスト部)というイメージです。

Javaのプログラム的な考え方で、CIDRが「どのアドレス範囲を含んでいるか」を判定する簡易的なイメージコードを見てみましょう。


public class CidrCheck {
    public static void main(String[] args) {
        // CIDRが 10.0.x.x (上位16ビット固定) のネットワークだと仮定
        String myNetworkPrefix = "10.0.";
        String targetIp = "10.0.1.50";

        // 対象のIPが自分のネットワーク内に含まれるかチェック
        if (targetIp.startsWith(myNetworkPrefix)) {
            System.out.println(targetIp + " はこのネットワークの範囲内です。");
        } else {
            System.out.println(targetIp + " は範囲外のネットワークです。");
        }
    }
}

10.0.1.50 はこのネットワークの範囲内です。

このように、CIDRを使うことで「ここからここまでは私のネットワークです」という境界線を明確に引くことができます。スラッシュ後の数字が小さければネットワークは広くなり、大きければ狭くなります。この仕組みを理解することが、AWS VPC設計の第一歩となります。

2. AWS VPCにおけるCIDRの役割と設計例

2. AWS VPCにおけるCIDRの役割と設計例
2. AWS VPCにおけるCIDRの役割と設計例

AWSのVPC(Virtual Private Cloud)では、最初にCIDRブロックを指定してIPアドレスの範囲を決めます。これは、仮想ネットワーク全体に割り当てるIP空間のことです。VPCのCIDRには、IPv4 CIDRブロックを指定し、/16から/28までの範囲で選べます。

よく使われるCIDR例:

  • 10.0.0.0/16(65,536個のIPアドレス)
  • 192.168.0.0/24(256個のIPアドレス)
  • 172.16.0.0/20(4,096個のIPアドレス)

たとえば、10.0.0.0/16というCIDRを持つVPCを作成すれば、その中に複数のサブネットを分割して作成できます。

3. サブネット設計におけるCIDRの分割

3. サブネット設計におけるCIDRの分割
3. サブネット設計におけるCIDRの分割

VPCを作った後は、サブネットを作成します。サブネットとは、VPC内のIPアドレス範囲をさらに細かく分けたものです。ここでもCIDRを使って、アドレス空間を分割します。

例えば、10.0.0.0/16のVPCから以下のようにサブネットを作ることができます:

  • 10.0.0.0/24(256個のIP)
  • 10.0.1.0/24
  • 10.0.2.0/24

このように、CIDRを使えば柔軟にネットワークを設計できます。

AWSの基本用語や仕組みを、図解でサクッと理解したい人には、 入門の定番書がこちらです。

AWSの基本が全部わかる教科書をAmazonで見る

※ Amazon広告リンク

4. CIDR設計のベストプラクティス

4. CIDR設計のベストプラクティス
4. CIDR設計のベストプラクティス

AWSでネットワーク設計を行う際、以下のようなCIDR設計のベストプラクティスがあります:

  • 十分な余裕をもってCIDRを割り当てる:将来的なスケールを見越して、最初から広めのCIDRブロックを確保しましょう。
  • パブリックサブネットとプライベートサブネットを分ける:外部アクセスが必要なリソース(EC2など)はパブリック、それ以外はプライベートに。
  • AZ(アベイラビリティゾーン)ごとに均等に分割:高可用性を保つために、各サブネットを複数のAZに分けて配置します。
  • 重複しないCIDR設計:複数のVPCを接続する予定がある場合は、CIDRの重複がないように設計しておきましょう。

5. CIDRの計算方法とサブネット数の求め方

5. CIDRの計算方法とサブネット数の求め方
5. CIDRの計算方法とサブネット数の求め方

CIDRの計算は、慣れると意外と簡単です。「/24」は「32 - 24 = 8ビット」がホスト用なので、2の8乗 = 256個のIPアドレスを持ちます。ただし、AWSでは以下の5つのIPアドレスは予約されており、実際に使えるのは251個になります:

  • ネットワークアドレス(例: 10.0.0.0)
  • ブロードキャストアドレス(例: 10.0.0.255)
  • VPCのルーター(例: 10.0.0.1)
  • DNSサーバー
  • 将来の用途のために予約されたIP

つまり、CIDRによって「理論上のIP数」と「実際に使える数」が違うことを覚えておきましょう。

6. AWS CLIでVPCとCIDRブロックを設定する方法

6. AWS CLIでVPCとCIDRブロックを設定する方法
6. AWS CLIでVPCとCIDRブロックを設定する方法

AWS CLIを使えば、VPCやCIDRの設定もコマンドラインから行うことができます。以下はVPCを作成するサンプルコマンドです。


aws ec2 create-vpc --cidr-block 10.0.0.0/16

このようにコマンドを使うことで、AWSコンソールから操作するよりも素早く環境を構築できます。スクリプトで管理したいときにも便利ですね。

7. よくあるCIDRの間違いとトラブル回避策

7. よくあるCIDRの間違いとトラブル回避策
7. よくあるCIDRの間違いとトラブル回避策

初心者がCIDRを扱うときによくあるミスをいくつか紹介します:

  • CIDRの重複:別のVPCやオンプレミスとのVPN接続時に重複すると接続できません。
  • アドレスが足りない:小さなCIDRブロックを選びすぎて、後からIPが不足してしまう。
  • ルーティング設定漏れ:CIDRを分けても、ルートテーブルが正しく設定されていないと通信できません。

こうしたトラブルを避けるためには、事前にしっかりと設計とテストを行うことが大切です。

まとめ

まとめ
まとめ

今回の記事では、AWSのVPCにおけるCIDR(Classless Inter-Domain Routing)の基礎から、実際のCIDR設計例、ベストプラクティス、CLIでの操作、よくあるミスまでを幅広く解説しました。CIDRという用語は初学者には難解に感じられるかもしれませんが、VPCやネットワーク構築、セキュリティ設計に不可欠な知識です。

AWSでCIDRを活用する場面は数多くあります。たとえば、サブネットの分割設計、可用性を高めるアベイラビリティゾーンへの分散、社内ネットワークや他のVPCとの接続の際の重複防止などです。CIDRブロックの大きさは、将来的な拡張性や運用効率を左右する要素にもなります。

また、CIDRの知識はAWSだけでなく、AzureやGoogle Cloud、さらにはオンプレミスのネットワーク構成にも応用可能です。クラウドエンジニアやインフラエンジニアを目指すなら、避けては通れないテーマです。

AWS CLIによるCIDRブロックの設定も、手動作業を自動化し、より一貫性のあるインフラ管理を可能にします。以下は、CIDRを使ってAWS上でパブリックサブネットを構成する一例です。


aws ec2 create-subnet \
  --vpc-id vpc-12345678 \
  --cidr-block 10.0.1.0/24 \
  --availability-zone ap-northeast-1a

このように、CIDRの設定と活用を理解すれば、AWSネットワークの設計力が飛躍的に高まります。今後、VPCピアリング、Transit Gateway、VPN接続といった複雑なネットワーク構成を扱う際にも必須のスキルです。

最後に、CIDRに関する理解をさらに深めたい方は「CIDR計算ツール」や「VPCデザインパターン」などを活用して実践を積んでみてください。サブネットマスクやアドレス空間の割り当てが自由自在にできるようになれば、ネットワーク設計に対する自信がついてきます。

先生と生徒の振り返り会話

生徒

「先生、今回でCIDRについてかなり詳しくなれた気がします!」

先生

「そうですね。CIDRの基本構文、VPCやサブネットへの応用、そしてベストプラクティスまで学べましたね。」

生徒

「特に、/16や/24の意味が数字だけでなく、使えるIPの数にもつながっているのが面白かったです!」

先生

「それに、AWS CLIでのCIDR指定方法も習得しましたから、今後インフラ構築の自動化にも役立ちますよ。」

生徒

「CIDRはネットワークの“住所設計”みたいな感じですね。これからは怖がらずに使えそうです!」

先生

「素晴らしい理解です!AWSやネットワーク設計ではCIDRは必須。ぜひ今後も実践して覚えていきましょう。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

質問1:AWSのネットワーク構築でよく聞く「CIDR(サイダー)」とは、具体的にどのような仕組みを指す用語なのですか?

回答:CIDRは「Classless Inter-Domain Routing」の略称で、IPアドレスとサブネットマスクを組み合わせて、ネットワークの範囲を効率的かつ柔軟に表現する仕組みです。従来のAクラスやBクラスといった固定的な「クラス型」のIPアドレス割り当てでは、アドレスの消費が激しく無駄が多かったため、必要な分だけ細かくIPアドレスの範囲を指定できるようにこのCIDR表記が考案されました。AWSのVPC(Virtual Private Cloud)環境を構築する際には、このCIDRを用いて自分専用の仮想ネットワークのサイズを決定することになります。

質問2:AWSのVPCを作成する際、CIDRブロックとして指定できる範囲に決まりはありますか?

回答:はい、AWSのVPCで指定できるIPv4 CIDRブロックのサイズにはルールがあります。具体的には、サブネットマスクのビット数が「/16」から「/28」の間で選択する必要があります。/16は最も大きな範囲で65,536個のIPアドレスを確保でき、/28は最も小さな範囲で16個のIPアドレスとなります。初心者が設計を始める際は、将来的な拡張性を考慮して、ゆとりのある「/16」サイズを選択することがベストプラクティスとされています。
AWS VPCの一覧へ
新着記事
Java
Javaの演算子の優先順位
Javaの演算子の優先順位を完全解説!初心者向けの丁寧な解説
Java
Javaのローカル変数と順次処理
Javaのローカル変数と順次処理を徹底解説!初心者でも理解できるコードの基本
Python
NumPyのdtype一覧!int・float・bool・str・objectの違いを比較
NumPyのdtype一覧を完全解説!int・float・bool・str・objectの違いを初心者向けに比較
Dart
Dartのコンストラクタまとめ!デフォルト・名前付きコンストラクタの使い方
Dartのコンストラクタまとめ完全ガイド!デフォルトコンストラクタと名前付きコンストラクタの使い方を初心者向けに解説
人気記事
Java
Java の Random クラスを使ってランダムな数値を生成する方法
JavaのRandomクラスの使い方を完全ガイド!初心者でもわかる乱数生成
Java
Java の getter メソッドと setter メソッドの使い方
Javaのgetterメソッドとsetterメソッドの使い方を完全ガイド!初心者でもわかるアクセス方法
AWS
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
Flutter
Flutter SDKのダウンロードとインストール手順を詳しく解説
Flutter SDKのダウンロードとインストール手順を丁寧ガイド!初心者でも安心な環境構築

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク