一言で言うと
『1.とりあえず2進数に変換する
2.論理積でネットワーク範囲を求める
3.CIDRやサブネットマスクでネットワーク部を確認する
4.1で求めたアドレスに3のサブネットを考慮する』
これが概要じゃ!
ネットワーク集約(スーパーネット化)とは?
ネットワーク集約(スーパーネット化)とは、複数のサブネット(ネットワーク)をまとめて一つの大きなネットワークにすることで、IPアドレスの管理を簡略化し、ルーティングテーブルのエントリ数を削減する技術です。この技術は特にCIDR(Classless Inter-Domain Routing)と呼ばれるIPアドレスの可変長サブネットマスクの方式を用いて行われます。
目的とメリット
- ルーティング効率の向上:一つのスーパーネットにまとめることで、ルーターや他のネットワーク機器が扱うルーティングテーブルの数が減り、効率が向上します。
- 管理の簡略化:複数の小さなネットワークを一つの大きなネットワークに集約することで、管理がしやすくなります。
スーパーネット化の手順
スーパーネット化の問題を解くとき、次のような手順で進めると良いです。
ステップ1:与えられたネットワーク範囲の確認
最初に、与えられたIPアドレス範囲を確認し、最小のネットワークアドレスと最大のネットワークアドレスを見つけます。この2つのアドレスによって、スーパーネット化に必要な範囲が決まります。
例: 問題で次のような4つのネットワークが与えられたとします。
- 192.168.32.0 /24
- 192.168.33.0 /24
- 192.168.34.0 /24
- 192.168.35.0 /24
これらの範囲を確認すると、最小アドレスは「192.168.32.0」で、最大アドレスは「192.168.35.0」になります。
いちいち1つずつ、2進数変換して、すべての論理積からネットワーク部を求めるよりも、最小と最大をとれば、手っ取り早く範囲を求められます。
ステップ2:最適なCIDRビット数を決める
次に、この範囲をカバーするのに必要な最小のCIDRビット数を求めます。CIDRビット数はサブネットマスクのビット数のことを指し、ネットワーク部の長さを示します。ビット数が少ないほど広い範囲をカバーできるため、スーパーネット化では、必要な範囲をカバーしつつ、最小のビット数(最大のカバー範囲)を求めるのがポイントです。
2進数での確認方法
与えられたIPアドレスを2進数で表し、最小と最大のアドレスが共通しているビット部分を確認すると、CIDRビット数を求めやすくなります。
例:
- 192.168.32.0 は 2進数で 「11000000.10101000.00100000.00000000」
- 192.168.35.255 は 2進数で「11000000.10101000.00100011.11111111」
この2つのアドレスのうち、共通しているビット数は最初の22ビットまでです。このため、ネットワーク部のビット数は22ビット、つまり/22が最小のCIDRビット数となります。これで範囲が「192.168.32.0/22」と決定できます。
アドレスの最小と最大の論理積をしたものがネットワークアドレスとなります。
11000000.10101000.00100000.00000000
11000000.10101000.00100011.11111111
----------------------------------------(論理積)
11000000.10101000.00100000.00000000 つまり、192.168.32.0となる。
ステップ3:ネットワークアドレスの決定
CIDRビット数が決まったら、最小のアドレスにそのビット数を適用して、スーパーネットのネットワークアドレスを決定します。
例:
- 192.168.32.0 /22(サブネットマスク:255.255.252.0)
このアドレスは、192.168.32.0から192.168.35.255までの範囲をカバーします。したがって、この4つのネットワーク(192.168.32.0、192.168.33.0、192.168.34.0、192.168.35.0)を一つのスーパーネット「192.168.32.0/22」として集約できることがわかります。
練習問題
以下のような問題を解く際、この手順で解答できます。
問題例
次のネットワークを最小のスーパーネットで集約する場合、適切なCIDR表記はどれか?
- 172.16.8.0 /24
- 172.16.9.0 /24
- 172.16.10.0 /24
- 172.16.11.0 /24
- 172.16.12.0 /24
- 172.16.13.0 /24
解法
1. アドレス範囲の確認
- 最小アドレスは「172.16.8.0」
- 最大アドレスは「172.16.13.0」
2. CIDRビット数の計算
- 172.16.8.0から172.16.15.255までをカバーできるビット数を確認。2進数で共通するビットが21ビットであることから、/21が最適なCIDR表記。
- ネットワークアドレスの決定
- 172.16.8.0 /21 として、172.16.8.0~172.16.15.255をカバーする。
したがって、答えは 172.16.8.0 /21 です。
まとめ
- ネットワーク集約(スーパーネット化)は、複数のネットワークを一つにまとめ、ルーティングテーブルの効率化を図る技術です。
- CIDR表記を用いることで、ネットワーク部のビット数を可変にし、必要な範囲を最小のビット数でカバーできます。
- 問題を解く際は、最小と最大のアドレス範囲を確認し、2進数で共通ビット数を計算してCIDRビット数を決めます。
- CIDRビット数が少ない(小さな数字)ほど、広い範囲をカバーできるため、スーパーネット化後のアドレスは通常小さな数字になります。