IPスーパーネットの計算
入力
| CIDRブロック | 192.168.0.0/24 192.168.1.0/24 |
|---|
IPスーパーネットの計算
IPv4のCIDRブロックの一覧を入力すると、そのすべてを含む最小の単一スーパーネット(多数のサブネットを1つのプレフィックスに集約した経路)を求めます。
入力
CIDRブロック
結果
値を入力すると計算結果が表示されます。
集約スーパーネット
IPスーパーネット
スーパーネット化とは、隣接する複数のIPv4ネットワークを1つの大きなCIDRブロックにまとめる手法です。サブネット化がプレフィックスを長くして1つのネットワークを多数の小さなものに分割するのに対し、スーパーネット化はその逆で、プレフィックスを短くして1つのブロックがグループ全体を代表するようにします。その結果はスーパーネット、集約、または要約経路と呼ばれ、これを求めることが、すっきりとコンパクトなルーティングテーブルを支える日常の作業です。
この計算では、CIDRブロックの一覧を受け取り、その一覧のすべてのアドレスを含む最小のスーパーネットを返します。ここでいう「最小」とは、最も長いプレフィックスを持つブロック、つまりすべての入力を含みながらアドレス空間の無駄が最も少ないブロックを意味します。
スーパーネットの求め方
すべてのCIDRブロックは連続したアドレスの範囲を表します。a.b.c.d/p と書かれたブロックは 個のアドレスを持ち、そのサイズの倍数である基底アドレスから始まり、次の整列したブロックが始まる1つ手前のアドレスで終わります。一覧を集約するため、計算はまず各入力を数値範囲に還元します。すべてのブロックのうち最も低いネットワークアドレスが下限となり、最も高いブロードキャストアドレスが上限となります。
スーパーネットは、下限から上限までの全範囲を含む有効なCIDRブロックでなければなりません。これには2つの制約があります。
- サイズが2のべき乗であること。つまり 個のアドレス。
- 基底アドレスが整列していること。つまり自身のサイズの倍数であること。
計算は、最も長いプレフィックス(/32)から最も短いプレフィックス(/0)へとプレフィックスをたどり、整列したブロックが下限から上限までの範囲を完全に含む最初のものを返します。長いプレフィックスを先に試すため、答えは常に最もぴったりと収まるものになります。
計算例
隣接する2つのネットワーク 192.168.0.0/24 と 192.168.1.0/24 を考えます。それぞれ 256 個のアドレスを持ちます。1つ目は 192.168.0.0 から 192.168.0.255 まで、2つ目は 192.168.1.0 から 192.168.1.255 までです。合わせると 192.168.0.0 から 192.168.1.255 までの 512 個のアドレスからなる1つの連続した範囲になります。
512 個のアドレスを持つブロックは /23 です。 だからです。基底アドレス 192.168.0.0 は第3・第4オクテットにおいて 512 の倍数なので、正しく整列しています。したがって2つの /24 ネットワークはちょうど 192.168.0.0/23 に集約されます。
アドレス空間の無駄はありません。スーパーネットは2つの入力のアドレスをちょうど含み、それ以上は含みません。これは、入力がすでに1つの整列したブロックを敷き詰めている理想的なケースです。
スーパーネットが入力より広くなる場合
集約は2のべき乗と整列の規則を破れないため、答えが入力だけよりも広い範囲に及ぶことがあります。例として 172.16.5.0/24 と 172.16.6.0/24 を考えます。これらを合わせた範囲は 172.16.5.0 から 172.16.6.255 まで、512 個のアドレスです。しかしこの範囲は /23 の境界から始まりません。172.16.5.0 が 512 の倍数ではないからです。両方を含む最小の整列したブロックは /22 ブロックの 172.16.4.0/22 で、これは4倍の数のアドレスを持ちます。
この /22 には、一覧になかった 172.16.4.0/24 と 172.16.7.0/24 も含まれます。これは要約に避けられないコストです。単一のプレフィックスを広告するには、少し大きく整列したブロックを主張しなければならないことがあります。ネットワークエンジニアはアドレス計画を設計する際にこのトレードオフを考慮し、将来の集約がぴったり収まるよう、しばしばサブネットを2のべき乗の境界上に配置します。
集約が重要な理由
ルーターは到達可能性を1つのプレフィックスずつ広告します。大規模なネットワークでは、個々のサブネットをすべて広告すると隣接ルーターがエントリで溢れ、ルーティングテーブルが肥大化します。経路集約は、特定の経路の集まりを1つの要約経路(スーパーネット)に置き換えるため、隣接ルーターは数十個ではなく単一のプレフィックスを学習します。テーブルが小さくなれば検索が速くなり、メモリ使用量が減り、ルーティング更新も安定します。集約内部のフラップが外側へ波及しなくなるからです。これが、要約がBGPや階層的な企業設計の基礎技術となっている理由です。
同じ算術は、ファイアウォールのルール、アクセス制御リスト、アドレス管理のドキュメントを書くときにも役立ちます。1つのスーパーネットは、隣接ブロックの長い一覧よりも読みやすく保守しやすいからです。
関連する計算
逆方向にブロックを分割したい場合や、単一ネットワークのマスク・範囲・ホスト数を調べたい場合は、サブネットの計算 を使ってください。任意の2つの端点の間のアドレス数を数え、それらが1つのCIDRブロックを形成するかを確認するには、IPアドレス範囲の計算 を試してください。
よくある質問 (FAQ)
スーパーネットとは何ですか?
スーパーネットとは、複数の小さなブロックを含む単一のCIDRブロックのことです。サブネット化が1つのネットワークを多数に分割するのに対し、スーパーネット化はその逆で、隣接する複数のネットワークを1つの大きなプレフィックスにまとめます。
たとえば 192.168.0.0/24 と 192.168.1.0/24 は、合わせると 192.168.0.0/23 と同じアドレス空間を占めるため、/23 がそのスーパーネットになります。この計算では、入力したすべてのブロックを含んだまま最も長いプレフィックスを持つ、最小のスーパーネットを返します。
経路集約ではどのように使われますか?
ルーターは到達可能なネットワークを広告します。多数の隣接サブネットが同じ上流経路を共有しているとき、それらを個別に広告するとルーティングテーブルが肥大化します。集約はこれらのエントリを1つの要約経路(スーパーネット)に置き換え、隣接ルーターは数十個ではなく単一のプレフィックスを学習します。ルーティングテーブルが小さくなれば、検索が速くなり、メモリ使用量が減り、更新も安定します。これが、集約がBGPや大規模な企業ネットワークの基本となっている理由です。
スーパーネットが入力ブロックより広い範囲を含むことがあるのはなぜですか?
すべてのCIDRブロックは2のべき乗個のアドレスを持ち、自身のサイズの倍数となる境界から始まります。任意の入力集合を含む最小のブロックは、この両方の規則を満たす必要があるため、実際に列挙したアドレスより広がることがあります。
たとえば 172.16.5.0/24 と 172.16.6.0/24 は 172.16.4.0/22 に含まれますが、これには入力していない 172.16.4.0/24 と 172.16.7.0/24 も含まれます。集約は常に、最も近い整列した2のべき乗ブロックへと丸められます。
スーパーネットとサブネットの違いは何ですか?
両者は同じ考え方の2つの方向です。サブネット化はプレフィックスを長くして1つのネットワークを小さく分割し、/24 を2つの /25 にします。スーパーネット化はプレフィックスを短くしてネットワークを統合し、2つの /24 を1つの /23 にします。プレフィックスが短いほどブロックは大きくなります。ブロックを統合するのではなく分割したい場合は、サブネットの計算を使ってください。