ゼロから学ぶサブネッティング:CIDR表記を読んで計算する方法
ルーターのインターフェースを設定したり、ファイアウォールルールを書いたり、IPアドレス体系を計画したりするたびに、サブネットとCIDR表記を扱っています。これらの計算がまだ少し不安を感じる場合、またはCCNA、CompTIA Network+や類似の資格試験の勉強中であれば、このガイドが一から全プロセスを解説します。あいまいな部分はなく、ステップを飛ばすこともありません。
IPアドレスとは?
IPアドレスは32ビットの数値です。毎日目にするドット区切りの10進数表記——192.168.1.100——は単にその数値を人間が読みやすい形で書いたもので:8ビットの4グループ、それぞれ0から255の10進整数で表されます。
IPv4の構造:4つのオクテット、32ビット
各グループはオクテット(8ビット)と呼ばれます。192.168.1.100の完全な2進数表記は:
192 168 1 100
11000000 10101000 00000001 01100100
この32ビットの文字列がハードウェアが実際に処理するアドレスです。ドット10進数表記は、人間が32ビットの2進数文字列を記憶するのが困難なためだけに存在します。
なぜ40億のアドレスが枯渇したか
2^32 = 4,294,967,296。巨大に聞こえますが、そうではありません——スマートフォン、IoTセンサー、クラウドVM、そして家庭用ルーターのすべてがアドレスを必要とするのですから。インターネットコミュニティは1990年代に枯渇を予測し、2つの対策を設計しました:NAT(多くのデバイスが1つのパブリックIPを共有できる)とIPv6(128ビットアドレスを使用)。サブネッティング——利用可能なアドレス空間をより小さく効率的なブロックに分割する——はもう一つの重要なツールです。一度に数百万の固定ブロックでアドレスを割り当てていた旧来のクラスフルシステムによる無駄を防ぎます。
サブネットとは?
サブネット(sub-networkの略)はIPネットワークの論理的な細分です。組織全体に65,536アドレスのフラットブロックを与えるのではなく、そのブロックを小さなセグメントに分割します——部門、フロア、機能、セキュリティゾーンごとに1つずつ。
ネットワーク部分とホスト部分
すべてのIPアドレスは同時に2つの部分として解釈されます:
- ネットワーク部分——アドレスがどのサブネットに属するかを識別します。同じサブネット上のすべてのデバイスがこの部分を共有します。
- ホスト部分——そのサブネット内の個別のデバイスを識別します。
サブネットマスクが2つの間の境界を定義します。ドット10進数形式の255.255.255.0は「最初の24ビットがネットワーク部分、最後の8ビットがホスト部分」を意味します。
なぜネットワークをサブネットに分割するのか
サブネッティングには3つの主要なメリットがあります:
- トラフィック分離——ブロードキャストトラフィックはサブネット内に留まり、ネットワーク全体に溢れません。
- セキュリティセグメンテーション——ファイアウォールとACLはサブネット境界で動作し、ゾーン間のトラフィックを制限できます。
- アドレス効率——各セグメントが実際に必要とするホストアドレスだけを割り当てます。ポイントツーポイントリンクに/16を無駄にすることはありません。
CIDR表記を理解する
CIDRはClassless Inter-Domain Routing(クラスレスドメイン間ルーティング)の略です。1993年に旧来のクラスフルシステム(クラスA/B/C)を置き換え、現在は普遍的に使用されています。CIDR表記はIPアドレスとプレフィックス長を1つの文字列に結合します:
192.168.1.0/24
スラッシュの後の数字はプレフィックス長——左から数えて、ネットワーク部分に属するビット数です。
/24(プレフィックス長)が意味すること
/24は最初の24ビットがネットワークであることを意味します。全部で32ビットあるので、ホストに8ビット残ります。
- 8ホストビット → 2^8 = 256アドレス
- 2を引く(ネットワークアドレス + ブロードキャスト) → 254の使用可能なホストアドレス
/25は7ホストビット:2^7 = 128アドレス、126使用可能。
/30は2ホストビット:2^2 = 4アドレス、2使用可能——ポイントツーポイントリンクの最小ブロック。
スラッシュ表記とドット10進数マスクの変換方法
32ビットを書きます。最初のnビット(nはプレフィックス長)を1で埋め、残りのビットを0で埋めます。次に4つのオクテットとして10進数で読みます。
/24の場合:
11111111 11111111 11111111 00000000
255 255 255 0
サブネットマスク:255.255.255.0
/22の場合:
11111111 11111111 11111100 00000000
255 255 252 0
サブネットマスク:255.255.252.0
逆——マスクをスラッシュ表記に戻す——は単に1ビットを数えるだけです。FileCrankのサブネットからCIDRへのコンバーター →を使うと即座に行えます。
サブネットを手計算する方法
一度計算を手でやり通すことで、ツールの出力だけでは決して得られない方法で概念が定着します。以下が体系的なプロセスです。
ステップ1——2進数に変換する
IPアドレスを取り、すべての32ビットを書き出します。172.16.5.0の場合:
172 16 5 0
10101100 00010000 00000101 00000000
ステップ2——ネットワークビットとホストビットを識別する
/22プレフィックスでは、最初の22ビットがネットワーク部分、最後の10ビットがホスト部分です。ビット22に線を引きます:
10101100 00010000 000001 | 01 00000000
<---------- ネットワーク(22ビット)----> <-- ホスト(10ビット)-->
分割が第3オクテットの中央に落ちていることに注意してください。これがサブネッティングの混乱の多くの原因です——境界はオクテット境界に合わせる必要はありません。
ステップ3——ネットワークアドレス、ブロードキャスト、使用可能な範囲を見つける
- ネットワークアドレス: すべてのホストビットを0に設定します。
10101100 00010000 00000100 00000000 → 172.16.4.0 - ブロードキャストアドレス: すべてのホストビットを1に設定します。
10101100 00010000 00000111 11111111 → 172.16.7.255 - 使用可能な範囲: ネットワークアドレス+1からブロードキャスト-1まで。
172.16.4.1から172.16.7.254
解法例:172.16.5.0/22
入力アドレス172.16.5.0はサブネット内のホストアドレスであることに注意してください——この/22ブロックのネットワークアドレスは172.16.4.0です。これはよくある試験の罠:与えられたアドレスは必ずしもネットワークアドレス自体ではありません。
ヒント: 手計算の結果をすぐにFileCrankのIPv4サブネット計算機 →で確認してください。
172.16.5.0/22を入力して、より難しい演習に進む前に6つの値がすべて一致することを確認しましょう。
一般的なサブネットサイズ一覧
/24は実際には圧倒的に最も一般的です。なぜなら254ホストはほとんどのVLANに適切なサイズで、計算も簡単だからです(ホスト部分は常に最後のオクテット)。
FileCrankのサブネット計算機を使う
日常業務——ファイアウォールルールの作成、アドレス割り当ての計画、設定の確認——では、手動で2進数計算を行う必要はありません。FileCrankのIPv4サブネット計算機 →に任意のIPアドレスとプレフィックス長を入力すると、ネットワークアドレス、ブロードキャスト、使用可能な範囲、サブネットマスク、ワイルドカードマスク、ホスト数が即座に返ります。
CIDRブロック内のすべての個別IPアドレスを確認する必要がある場合——ホワイトリストの設定や割り当ての監査に便利——CIDR範囲エキスパンダー →がすべてをリストアップします。両方のツールはブラウザ内で完全に動作します:データがデバイスから出ることはなく、アカウントも不要です。
すべてのサブネットとCIDRユーティリティに一か所からアクセスするには、ネットワークツール →ハブに全24のツールが一覧表示されています。
VLSMとは何か、なぜ資格試験受験者に重要か?
**可変長サブネットマスキング(VLSM)**は、同じネットワーク内の異なるサブネットが異なるプレフィックス長を使用できるようにすることで、基本的なサブネッティングを拡張します。/24を4つの等しい/26(それぞれ62の使用可能なホスト)に分割する代わりに、VLSMを使えば各セグメントが必要とするブロックサイズを正確に割り当てられます。
例: 10.0.0.0/24を4つのセグメントに分配する場合:
VLSMはアドレスの無駄を最小化し、CCNAとNetwork+の試験で重点的に出題されます。試験官がテストする重要なスキルは:要件(ホスト数)が与えられたとき、それを満たす最小のプレフィックスを特定し、アドレス空間から重複しないブロックを順番に割り当てることです。
CCNAとNetwork+の試験シミュレーションはどちらも、固定のアドレスプールを与えて複数の要件に同時にサブネット分割するよう求めます——VLSMが唯一実用的なアプローチです。手計算で練習しIPv4サブネット計算機 →で確認することが、熟練を身につける最も速い方法です。
よくある質問
サブネットマスクとワイルドカードマスクの違いは何ですか?
サブネットマスクはネットワーク部分に1、ホスト部分に0があります。ワイルドカードマスクはそのビット単位の反転——ネットワーク部分に0、ホスト部分に1があります。ワイルドカードマスクはCiscoのACLとOSPFのnetworkステートメントで使用されます。/24の場合、サブネットマスクは255.255.255.0でワイルドカードは0.0.0.255です。
「全ホストビットがゼロ」と「全ホストビットが1」とはどういう意味ですか?
全ホストビットが0のとき、そのアドレスはネットワークアドレス——サブネット自体を識別し、デバイスに割り当てることはできません。全ホストビットが1のとき、そのアドレスはブロードキャストアドレス——ここに送られたパケットはサブネット上のすべてのホストに配信されます。どちらもホストアドレスとして使用できません。
2つのサブネットは重複できますか?
できません。重複するサブネットはルーティングの曖昧さを引き起こします:ルーターはどのインターフェースを通じてパケットを転送するか判断できません。範囲が交差しないことを確認することで、新しく割り当てたブロックにすでに使用中のアドレスが含まれていないことを常に確認してください。
ポイントツーポイントリンクで使うべき最小のサブネットは何ですか?
/30(4アドレス:ネットワーク、2つのホスト、ブロードキャスト)が従来の選択です。/31(RFC 3021)はネットワークやブロードキャストなしでちょうど2アドレスを提供します——ほとんどの現代のIOS/NX-OSバージョンでのポイントツーポイント使用に有効で、アドレスを無駄にしないため一般的に推奨されます。
サブネットマスクをCIDR表記に変換するには?
マスクの2進数表現の連続する1ビットを数えます。255.255.255.0 = 24個の1 = /24。255.255.252.0 = 22個の1 = /22。FileCrankのサブネットからCIDRへのコンバーター →が一ステップで行います。
なぜルーターが/32の「ホストルート」を表示するのですか?
/32はホストビットがゼロ——ネットワークではなく特定の単一アドレスへのルートです。ルーターは/32ホストルートを使って個別アドレスに特定のネクストホップを強制します(BGP、ループバックインターフェース、ポリシーベースルーティングで一般的)。