1. ホーム
  2. 記事一覧
  3. 【脱ネットワーク初心者】CIDRとCIDR表記

2023.09.29

【脱ネットワーク初心者】CIDRとCIDR表記

こちらの記事では、CIDRとCIDR表記について解説します。

CIDRClassless Inter Domain Routing)は、別名をクラスレスアドレッシングとも呼び、現在主流で使用されているIPアドレスの割り当て方式です。また、CIDR表記はIPアドレスにサブネットマスクの情報を簡略化して付随する表記方法です。それぞれの概要などについて詳しく説明します。

こちらの記事は「IPアドレス」と「サブネット・サブネットマスク」に関する知識が必要です。それぞれの記事は以下をご覧ください。

https://envader.plus/article/51

https://envader.plus/article/53

CIDRの概要

初期のTCP/IPのIPアドレス(IPv4)は、IPアドレスの枯渇問題を抱えていました。この問題の対策として、IPアドレスの割り当てをクラスフルアドレッシングという仕組みが導入されました。

しかし、クラスフルアドレッシングには「ユーザにとって丁度良いアドレスクラスが存在しない」という問題が存在しました。この問題を解消するために、割り当てられたネットワークをさらに小さい単位で分ける「サブネット」という概念が誕生しました。

従来のクラスフルアドレッシングのクラス(クラスA、クラスB、クラスC)をより小さいサブネットに分割することをサブネット化と表現することもありますが、現在では、クラスの定義に関わらず単にネットワークをより小さな複数のネットワークに分割することもサブネット化すると表現します

つまり、サブネット化を行うために、IPアドレスにサブネットマスクの情報を付随して自由にネットワークの範囲を指定する仕組みのことを「CIDR(クラスレスアドレッシング)」と呼びます

CIDRの利点

CIDRの利点を、クラスフルアドレッシングと比較して以下の図にまとめました。

このように、CIDRの利点は、クラスフルアドレッシングのようにネットワーク部とホスト部を8bit単位で区切ることにこだわらずに、任意のbitでネットワーク部とホスト部の境界決められる点です。CIDRを利用するとクラスフルアドレッシングで問題だった「IPアドレスの無駄な消費」を防ぐことができます。

CIDRの特徴

CIDRの特徴を、クラスフルアドレッシングと比較して説明します。以下の図をご覧ください。

上記の図のように、クラスフルアドレッシングではIPアドレスの上位bitからアドレスクラスを判別でき、IPアドレスの情報だけでネットワークアドレスのbit数を知ることができます。

CIDRを用いた場合、IPアドレスの情報だけではネットワークアドレスのbit数を知ることができません。そのため、必ずIPアドレスと合わせてサブネットマスクの情報が必要です。

CIDRの主要な概念

CIDRの特徴から分かるように、CIDRの主要な概念は「サブネットマスク」であり、それを簡略化して表記する「CIDR表記」です。

CIDR表記

CIDR表記は、IPアドレスのサブネットマスクの情報を簡略化して192.168.0.0/24のように表記したものです。CIDR表記した192.168.0.0/24は、192.168.0.0/255.255.255.0のようにIPアドレスにサブネットマスクを付随した表記と全く同じ意味で、表記方法が違うだけです。

サブネットマスク255.255.255.0は、「上位の24bitがネットワークアドレスである」という意味でもあります。つまり、CIDR表記で/数字が意味するのは「上位何bitがネットワークアドレスである」という意味です。

CIDRを用いた場合、サブネットマスクで表記するよりCIDR表記した方が簡易的で分かりやすいため、一般的にはCIDR表記を用います。また、CIDR表記で用いる/(スラッシュ)は、プレフィックスと呼び、CIDR表記のことを「プレフィックス表記」とも呼びます。

CIDRの用途

CIDRの用途を、以下の2点に焦点を当てて説明します。

  • クラスを使わないIPアドレスの割り当て
  • 経路情報の集約

クラスを使わないIPアドレスの割り当て

クラスを使わないIPアドレスの割り当てとは、クラスの定義にかかわらず単にネットワークをより小さな複数のネットワークに分割することを指します。クラスを使わないIPアドレスの割り当てを以下の図にまとめました。

※実際に使えるIPアドレス数は、IPアドレスの数-2(ネットワークアドレス+ブロードキャストアドレス)です。

①が、ISP(インターネットサービスプロバイダー)からユーザに割り当てられたIPアドレスだとします。ISPは、CIDRを用いることで、ユーザが必要なネットワーク規模に応じてIPアドレスを割り当てることができます。

①の割り当てを受けたユーザは、②、③、④のように自身でサブネットを構築することが可能です。このサブネットの規模も、ユーザ自身が必要なネットワーク規模に応じて柔軟に構築することができます。

経路情報の集約

経路情報の集約とは、複数のネットワークアドレスのルート情報を1つにまとめることです。

経路(ルート)が多くなると、ルータ内のルーティングテーブルが大きくなり、宛先ネットワークを見つけるための時間が長くなったり、ルーティングテーブルに保存するためのメモリ量が大量に必要になります。実際インターネット上には膨大な数のネットワークが存在しており、インターネットの出入り口となる基幹ルータともなると、それら全てのエントリ(ネットワーク情報)を扱う必要があります。

この、ルーティングテーブルが増大することへの解決策の1つが、経路情報の集約です。経路情報の集約とは、ルータのルーティングテーブルを圧縮し、エントリ数を減らすことです。

実際に経路の集約を行うことで、経路情報の集約を説明します。まず、経路情報が集約されていない例を、以下の図①にまとめました。

図①のルータXのルーティングテーブルを見ると、8つのエントリが登録されています。このように、ルータXのルーティングテーブルにルータAから先のルーティングを登録するのはあまり意味がありません。なぜなら、ルータはルーティングする際にネクストホップへ転送すれば良いからです。

この8つのエントリをまとめられないかどうか確認します。それぞれのエントリを表にまとめましたので以下をご覧ください。

IPアドレス(CIDR表記)IPアドレス(2進数表記)
172.168.32.0/2410101100.00010000.00100000.00000000
172.168.33.0/2410101100.00010000.00100001.00000000
172.168.34.0/2410101100.00010000.00100010.00000000
172.168.35.0/2410101100.00010000.00100110.00000000
172.168.36.0/2410101100.00010000.00100100.00000000
172.168.37.0/2410101100.00010000.00100101.00000000
172.168.38.0/2410101100.00010000.00100110.00000000
172.168.39.0/2410101100.00010000.00100111.00000000

それぞれのエントリを見ると、10101100.00010000.00100(上位21bit)までが共通しています。そのため、この8つのエントリを/21で1つに集約することができ、まとめて1つのネットワークと扱うことができます。

8つのエントリを集約した結果が、以下の図②です。

経路が集約されたことでルータXはルータAから先のルーティングは覚える必要がなくなります。なぜなら、ルータAから先のルーティングはルータAが行うからです。

このように、経路情報の集約とは、複数のネットワークアドレスの経路情報を1つにまとめることです。経路情報を集約することにより、ルータの使用メモリを減らすことができます。また、単純に次の宛先の登録数が少なくなることにより検索にかかる計算量も少なくなり、ルータの負荷を軽減することにつながります。

CIDRの早見表

CIDRを用いてIPアドレスの割り当てや経路情報の集約を行う時に便利な「CIDRの早見表」を作成しました。「Ctrl or Cmd + F」でお探しの値を見つけてください。

CIDRサブネットマスクIPアドレスの数
/32(注1)255.255.255.2551
/31(注2)255.255.255.2542
/30255.255.255.2524
/29255.255.255.2488
/28255.255.255.24016
/27255.255.255.22432
/26255.255.255.19264
/25255.255.255.128128
/24255.255.255.0256
/23255.255.254.0512
/22255.255.252.01,024
/21255.255.248.02,048
/20255.255.240.04,096
/19255.255.224.08,192
/18255.255.192.016,384
/17255.255.128.032,768
/16255.255.0.065,536
/15255.254.0.0131,072
/14255.252.0.0262,144
/13255.248.0.0524,288
/12255.240.0.01,048,576
/11255.224.0.02,097,152
/10255.192.0.04,194,304
/9255.128.0.08,388,608
/8255.0.0.016,777,216
/7254.0.0.033,554,432
/6252..0.0.067,108,864
/5248.0.0.0134,217,728
/4240.0.0.0268,435,456
/3224.0.0.0536,870,912
/2192.0.0.01,073,741,824
/1128.0.0.02,147,483,648
/00.0.0.04,294,967,296

(注1)/32は単一ホストを表現する際に使われます。

(注2)/31はIPアドレス数が2個しかないため基本的には使えませんが、RFC3021ポイント・ツー・ポイントリンクとして使用して良いと定められています。

まとめ

こちらの記事ではCIDR・CIDR表記について解説しました。

CIDRはIPv4のIPアドレスの枯渇問題を解消するために誕生し、現在主流で利用されている仕組みです。CIDRを使用してネットワークを構築できるようになるためにも、IPアドレスの知識やCIDR以前に導入されていたクラスアドレッシングの仕組み、サブネット・サブネットマスクの知識も合わせて学習することが必要です。

https://note.com/takkun_desu/n/n7297b6ea03ff

エンベーダー編集部

エンベーダーは、ITスクールRareTECHのインフラ学習教材として誕生しました。 「遊びながらインフラエンジニアへ」をコンセプトに、インフラへの学習ハードルを下げるツールとして運営されています。

RareTECH 無料体験授業開催中! オンラインにて実施中! Top10%のエンジニアになる秘訣を伝授します! RareTECH講師への質疑応答可

関連記事