VLSM とサブネット設計の最適化
固定長分割で死蔵していたアドレスを使い切れるようになる。必要ホスト数からプレフィックスを逆算し、集約も壊さないアドレス計画の手順が身につく。
- 1.可変長サブネットマスク(VLSM)はセグメントごとに最適なプレフィックス長を選び、固定長分割(FLSM)で生じる未使用アドレスの死蔵を排する。
- 2.設計はホスト数の多いセグメントから降順に、必要ホスト数+2 を満たす最小ブロックを境界整列させて割り当てるのが鉄則。
- 3.降順かつ連続割り当てにすると、配ったブロックが上位プレフィックスへ束ねやすくなり、経路集約とアドレス利用率を同時に満たせる。
固定長分割(FLSM)の無駄
サブネット分割の素朴なやり方は、親ブロックを同じプレフィックス長で均等に割る固定長分割(FLSM: Fixed Length Subnet Mask)です。192.168.1.0/24 を4つに分けるなら全部 /26(62ホスト)といった具合です。実装は単純ですが、各セグメントの実需要が大きく異なると深刻な無駄が出ます。100台のLAN・50台のLAN・2台のポイントツーポイントリンクが混在する組織で、最大の100台に合わせて全セグメントを /25(126ホスト)に統一すると、2台しか要らないルータ間リンクにも126アドレスを割り当て、124アドレスを死蔵します。境界が一段階しか取れないため、需要と割り当てサイズのミスマッチが構造的に発生する。これは クラスフルアドレッシング が抱えた問題を、組織内の小さな縮図として再現したものです。
VLSM(Variable Length Subnet Mask、可変長サブネットマスク)は、この制約を外します。同じ親ブロックの中でセグメントごとに異なるプレフィックス長を許し、100台LANには /25、ルータ間リンクには /30(2ホスト)や /31 を当てる。各セグメントが必要な分だけを取るため、利用率が跳ね上がります。VLSM が成立する前提は、ルーティングプロトコルが経路ごとにサブネットマスクを運べること、すなわちクラスレス転送(最長一致転送)が使えることです。
必要ホスト数からのプレフィックス逆算
設計の出発点は、各セグメントの必要ホスト数です。プレフィックス長は次の関係から逆算します。ホスト部ビット数を h とすると、そのブロックに入るアドレスは 2 の h 乗、実際に機器へ振れるのは先頭のネットワークアドレスと末尾のブロードキャストを除いた 2^h - 2 台です。したがって必要ホスト数 N に対しては、2^h - 2 >= N を満たす最小の h を選びます。
必要ホスト数 N → ホスト部ビット h を求める
2^h - 2 >= N を満たす最小の h
プレフィックス長 = 32 - h
例: N = 100 → 2^7 - 2 = 126 >= 100 → h=7 → /25
N = 50 → 2^6 - 2 = 62 >= 50 → h=6 → /26
N = 2 → 2^2 - 2 = 2 >= 2 → h=2 → /30
ここで「ぴったり」を狙いすぎないことが重要です。-2 の予約に加え、各セグメントは通常デフォルトゲートウェイのIPを1つ消費し、将来の増設やDHCPプール、仮想IPの余地も要ります。100台のセグメントを 2^7 - 2 = 126 の /25 に収めると残り余裕は26台分弱で、増設が見込まれるなら /24(254ホスト)へ一段広げる判断もあり得ます。プレフィックス長は「現在の台数」ではなく「設計寿命内のピーク台数」で決めるのが原則です。
プレフィックス長が決まれば、第4オクテットでのブロックサイズは 2^h(ホスト部ビット分)で出ます。/26 ならブロックサイズ64で境界は 0,64,128,192、/30 ならサイズ4で 0,4,8,12,... と並びます。割り当ては必ずこのブロックサイズの倍数の位置から始める(境界整列する)ことで、後の集約が効くようになります。境界に整列しない割り当てはアドレスの重複や穴を生みます。
降順割り当ての手順
VLSM 設計の鉄則は、ホスト数の多いセグメントから降順に割り当てることです。大きいブロックを先に確定し、その直後から小さいブロックを詰めていくと、隙間なく境界整列した連続配置になります。逆に小さいブロックを先に置くと、後から大きいブロックを境界整列させる場所が断片化して取れなくなる(外部断片化)。192.168.1.0/24 を、LAN-A=100台、LAN-B=50台、LAN-C=25台、ルータ間リンク2本(各2台)へ配る例を示します。
| セグメント | 必要数 | 選択 | ネットワーク | 範囲 | ブロードキャスト |
|---|---|---|---|---|---|
| LAN-A (100) | 100 | /25 (126) | 192.168.1.0 | .1 〜 .126 | 192.168.1.127 |
| LAN-B (50) | 50 | /26 (62) | 192.168.1.128 | .129 〜 .190 | 192.168.1.191 |
| LAN-C (25) | 25 | /27 (30) | 192.168.1.192 | .193 〜 .222 | 192.168.1.223 |
| Link-1 (2) | 2 | /30 (2) | 192.168.1.224 | .225 〜 .226 | 192.168.1.227 |
| Link-2 (2) | 2 | /30 (2) | 192.168.1.228 | .229 〜 .230 | 192.168.1.231 |
降順に並べたことで、各ブロックは前のブロックの終端の次から始まり、すべてプレフィックス境界に整列します。/24(256アドレス)のうち実際に消費したのは 128+64+32+4+4 = 232 アドレスで、残り 192.168.1.232 〜 .255(24アドレス)が次の小規模セグメント用に連続して残ります。FLSM で全セグメントを /25 にしていたら、そもそも4セグメントしか作れず、リンク用には別ブロックが要りました。
ルータ間のポイントツーポイントリンクは2台しか繋がらないため /30 が定番ですが、/30 は4アドレス中2つ(ネットワーク・ブロードキャスト)を予約に取られ利用率50%です。RFC 3021 はこうしたリンクで /31 を許し、2アドレスを両端のホストへそのまま割り当てます(ネットワーク/ブロードキャストの概念を持たない)。多数のリンクを抱える環境では /31 でアドレス消費を半減できますが、両端機器が RFC 3021 に対応している必要があります。
アドレス計画と集約の両立
VLSM はアドレス利用率を上げる一方で、無計画に使うと細かいプレフィックスが散らばり経路表を膨らませます。利用率と経路集約を両立させる鍵は、割り当てを階層的かつ連続的に行うことです。サイトや部門という単位で大きな親ブロックを切り、その内側だけで降順 VLSM を行えば、サイト外から見たときは親ブロック1本に束ねて広告できます。集約が成立する条件は、(1) 配下のブロックが連続していること、(2) 集約後のプレフィックス境界に親ブロックの先頭が整列していること、の二点です。降順・連続・境界整列の割り当ては、この集約条件を自然に満たします。
拠点ごとに /22 を配り、内部を VLSM で細分(集約と両立)
東京 10.10.0.0/22 → 内部で /25, /26, /30 ... に細分
大阪 10.10.4.0/22 → 同上
名古屋 10.10.8.0/22 → 同上
WAN から見える広告は各拠点 /22 が1本ずつ(内部の細分は隠れる)
さらに上位で 10.10.0.0/20 に束ねればコアの経路はさらに減る
逆に、空いている隙間を埋めようと各拠点へ飛び地のブロックを継ぎ足すと、連続性が崩れて集約できなくなり、BGP 経路選択 や内部ルーティングで広告する経路数が増えます。アドレス計画では、当面使わなくても将来の成長分を見越した連続範囲を予約しておくことが、利用率と集約の両立につながります。アドレスは詰めて使うほど利用率は上がりますが、詰めすぎて成長の連続枠を潰すと、後から飛び地割り当てを強いられ集約性を失う。この緊張関係を踏まえ、「拠点には集約可能な大枠を、大枠の内部は VLSM で稠密に」という二段構えが実務の定石です。
VLSM 問題は「降順割り当て」と「2^h - 2 >= N から最小ブロックを選ぶ」「境界整列の確認」の3点が採点軸です。各セグメントのネットワーク/ブロードキャスト/割り当て可能範囲を、ブロックサイズの倍数で機械的に追えること、そして配ったブロックが上位プレフィックスへ集約可能かを判定できることが、設計問題で差がつくポイントです。
まとめ
FLSM は単純さと引き換えに、需要差の大きいセグメント群でアドレスを死蔵します。VLSM はセグメントごとにプレフィックス長を変え、必要ホスト数 N に対し 2^h - 2 >= N を満たす最小ブロックを当てることで利用率を最大化します。設計の手順は、ホスト数の多い順に、境界整列した連続ブロックを降順で詰めること。これにより断片化を避けつつ、配ったブロックが上位プレフィックスへ束ねやすくなり、CIDR の経路集約とアドレス効率を同時に達成できます。VLSM と集約は、基本のサブネットの上に立つ最適化であり、稠密なアドレス利用と小さな経路表という相反しがちな目標を、階層的・連続的な計画によって橋渡しする技術です。
ネットワーク Article
VLSM とサブネット設計の最適化を実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
VLSM
比較で見る軸
難易度: advanced / カテゴリ: ネットワーク / タグ数: 6
導入後に効く点
設計はホスト数の多いセグメントから降順に、必要ホスト数+2 を満たす最小ブロックを境界整列させて割り当てるのが鉄則。
先に潰すリスク
用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。
- 難易度
- advanced
- カテゴリ
- ネットワーク
- タグ数
- 6
判断チェックリスト
- 自社の用途が「VLSM / サブネット」に近いか確認する。
- 強みである「可変長サブネットマスク(VLSM)はセグメントごとに最適なプレフィックス長を選び、固定長分割(FLSM)で生じる未使用アドレスの死蔵を排する。」が本当に評価軸になるか確認する。
- 注意点の「用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。