スタブエリア

スタブエリアって何?
OSPFにおけるスタブエリアとは?
スタブエリア(Stub Area) とは、OSPF(Open Shortest Path First)のエリア設計の一種で、外部ルート(LSA Type 5)をエリア内に流さないようにする設定 のことです。
なぜスタブエリアを使うのか?
OSPFでは、外部ネットワーク(例えばBGPで学習したインターネット経由のルートなど)は、LSA Type 5 という形で全エリアに広がります。しかし、以下のような問題が発生することがあります。
✅ ルーティングテーブルが大きくなる → 小さなルータではメモリ消費が増える
✅ 計算負荷が増加する → OSPFのルート計算が複雑になる
これを解決するために、スタブエリアを設定すると、LSA Type 5(外部ルート)をエリア内に流さず、代わりに「デフォルトルート(0.0.0.0/0)」をABR(Area Border Router)が広報する 仕組みになります。
スタブエリアの動作
スタブエリアを設定すると、
- LSA Type 5(外部ルート情報)がエリア内に流れなくなる。
- 代わりに、ABR(エリアボーダールータ)がデフォルトルート(0.0.0.0/0)をエリア内に広報する。
例えば、以下のようなネットワークを考えます。
[外部ネットワーク] -- [R3(ABR)] -- [R4] -- [R5]
エリア1(スタブエリア)
- 通常のOSPFエリアなら
R3はLSA Type 5(外部ルート)をエリア1に広報する。
→ R4とR5はすべての外部ルートを持つ。 - スタブエリアなら
R3はLSA Type 5を流さない代わりに、デフォルトルート(0.0.0.0/0)のみを広報する。
→ R4とR5は「外部ネットワークに行きたいときはR3を通ればいい」とシンプルに判断できる。
スタブエリアの設定方法(Ciscoの場合)
ABR(R3側):
router ospf 1
area 1 stub
エリア内のルータ(R4, R5側):
router ospf 1
area 1 stub
この設定をすることで、エリア1はスタブエリアとして動作します。
スタブエリアのメリットとデメリット
項目 | 内容 |
---|---|
✅ メリット | OSPFの負荷が減る(ルーティングテーブルが小さくなる) |
ネットワークの設計がシンプルになる | |
❌ デメリット | スタブエリア内のルータは詳細な外部ルート情報を得られない |
すべての外部宛先をデフォルトルートに依存するため、ルートの最適化ができない |
まとめ
🔹 スタブエリアとは、LSA Type 5(外部ルート)をブロックすることで、ルータの負荷を軽減するOSPFのエリア設計の一種 である。
🔹 代わりに、ABR(エリアボーダールータ)がデフォルトルート(0.0.0.0/0)を広報する。
🔹 メモリとCPUの使用量を抑え、ルーティングテーブルを小さくするメリットがある。

LSA(Link-State Advertisement)の種類は?
OSPFでは、ネットワーク内のルート情報をやり取りするために「LSA(リンクステート広告)」というメッセージを使います。LSAにはいくつかの種類があり、それぞれ役割が異なります。
OSPFのLSAタイプ一覧
LSAタイプ | 名称 | 発信元 | 適用範囲 | 主な役割 |
---|---|---|---|---|
Type 1 | ルータLSA | すべてのOSPFルータ | 同じエリア内 | – 自身の接続情報(インターフェースやコスト)を通知 |
Type 2 | ネットワークLSA | DR(指定ルータ) | 同じエリア内 | – マルチアクセスネットワーク(Ethernetなど)の情報を広報 |
Type 3 | ネットワーク集約LSA(Summary LSA) | ABR(エリアボーダールータ) | OSPFの異なるエリア間 | – あるエリアのルート情報を、別のエリアに通知 |
Type 4 | ASBR概要LSA | ABR(エリアボーダールータ) | OSPFの異なるエリア間 | – ASBR(外部ルートを持つルータ)への経路情報を通知 |
Type 5 | 外部LSA(External LSA) | ASBR(外部ルートを持つルータ) | 全OSPFエリア(スタブエリアを除く) | – OSPF外のネットワーク(BGPや静的ルートなど)の情報をOSPF内に広報 |
Type 6 | MOSPF用LSA(Multicast LSA) | ルータ(MOSPF専用) | OSPFドメイン内 | – マルチキャストルーティング(MOSPF)用(通常のOSPFでは使わない) |
Type 7 | NSSA外部LSA | NSSA(Not-So-Stubby Area)のASBR | NSSA内のみ | – NSSA内のASBRが外部ルートをOSPF内に広報(Type 5の代わり) |
Type 8 | リンクLSA(OSPFv3のみ) | ルータ | 同じリンク上 | – OSPFv3(IPv6版OSPF)で使用、リンクローカル情報を広報 |
Type 9 | Intra-Area Prefix LSA(OSPFv3のみ) | ルータ | 同じエリア内 | – OSPFv3で、エリア内のプレフィックス情報を広報 |
Type 10 | エリアスコープLSA(OSPFv3のみ) | ルータ | 同じエリア内 | – 特定のエリア内で使用する情報を広報(ルータの設定や機能拡張向け) |
Type 11 | ASスコープLSA(OSPFv3のみ) | ルータ | OSPFドメイン全体 | – AS全体に影響する情報を広報(あまり使われない) |
OSPFのLSAの特徴と関係性
- エリア内で使われるLSA
- Type 1(ルータLSA): ルータ自身の情報
- Type 2(ネットワークLSA): DR(指定ルータ)が発信
- Type 9, 10(OSPFv3のみ)
- エリア間で使われるLSA
- Type 3(ネットワーク集約LSA): ABRが他のエリアへルート情報を広報
- Type 4(ASBR概要LSA): ASBRへの経路情報を他のエリアへ広報
- 外部ルートに関連するLSA
- Type 5(外部LSA): OSPF外のネットワークを広報(BGPや静的ルートなど)
- Type 7(NSSA外部LSA): NSSAエリア用の外部ルート情報(Type 5の代わり)
LSA Type 5とType 7の違い
項目 | Type 5(外部LSA) | Type 7(NSSA外部LSA) |
---|---|---|
発信元 | ASBR(外部ルートを持つルータ) | NSSA内のASBR |
適用範囲 | OSPF全体(スタブエリア除く) | NSSA(Not-So-Stubby Area)内のみ |
ABRでの変換 | なし | NSSA外のエリアに出るとType 5に変換 |
ポイント:
- NSSA(Not-So-Stubby Area) では、通常のスタブエリアと異なり、外部ルートを許可したいことがある。そのため、Type 7を使って外部ルートを広報し、ABRがType 5に変換して通常のエリアに流す。
まとめ
OSPFのLSAには、内部・エリア間・外部ルートの情報を伝えるさまざまな種類がある。
- Type 1~2: エリア内の情報
- Type 3~4: エリア間の情報
- Type 5~7: 外部ルート(スタブ/NSSAの違いに注意)
- Type 8~11: OSPFv3(IPv6)の拡張用

stub no-summaryを使うのはどんな状況か?
stub no-summary
✅ stub no-summary
を使うのは、エリア内のルータに LSA Type 5(外部ルート情報)と LSA Type 3(エリア間ルート情報)の両方を流さないため
✅ この設定をすることで、ルーティングテーブルを小さくできる(エリア内のルータはデフォルトルートだけを使用するため)
✅ 動作としては「とりあえずすべてのトラフィックをデフォルトルートに投げる」ようになる
通常の STUB(area X stub)との違い
✅ 通常のスタブ(area X stub
)では LSA Type 5 を流さないが、LSA Type 3(エリア間ルート情報)は流れる
✅ ABR はデフォルトルートを自動で広報するのが基本動作(ただし、設定次第で広報されないこともある)
✅ エリア内のルータは LSA Type 3 の情報を使ってルーティングするため、デフォルトルートが使われないこともある
stub no-summary を使うときの具体的なメリット
✅ エリア内のルータを「デフォルトルート経由でしか外部と通信できない」ように強制できる → ルーティングのシンプル化が可能
✅ LSA Type 3 を排除することでルーティングテーブルを削減し、リソースを節約できる
✅ デフォルトルートが適切に広報されないリスクを減らせる(ABRが確実に 0.0.0.0/0 を広報するため)
まとめ
✅ stub no-summary
を使うのは、LSA Type 3 も流さずに、エリア内のルータをシンプルにデフォルトルートだけでルーティングさせたいとき。
✅ これにより、ルーティングテーブルが小さくなり、無駄な情報を持たずに済む。
✅ 通常のスタブ(area X stub
)では LSA Type 3 を流すため、詳細ルートがエリア内のルータに伝わるが、それを防ぎたい場合に stub no-summary
を使う。

エリアって具体的に何なの?
大企業のネットワークをOSPFに当てはめて考える
1. AS(自律システム) = 大企業全体
- OSPFは一つのAS(自律システム)内で動作するルーティングプロトコルなので、
「AS = その企業のネットワーク全体」 と考えられる - 例えば、「会社全体がISP(インターネットプロバイダ)に接続する1つのネットワーク」として機能する。
2. OSPFの「エリア」 = 会社の支社や部門
- エリアの分割は、本社・支社・部門ごとに行うのが一般的
- 各エリア内では、詳細なルーティング情報を共有するが、エリア間ではサマリー(要約)だけを伝える
- 例: 本社(エリア1)、東京支社(エリア2)、大阪支社(エリア3)
- 本社(エリア1)のネットワーク機器は、東京や大阪の詳細なネットワーク情報は知らず、「東京支社に行くならR1へ」みたいな情報だけ持つ
3. バックボーンエリア(エリア0) = 会社の「幹線ネットワーク」
- OSPFでは、エリア間を通信するためには「エリア0(バックボーンエリア)」を必ず経由しなければならない
- これは会社の「基幹ネットワーク」や「データセンター」と考えると分かりやすい
- 例えば…
- 本社のコアネットワーク がエリア0
- 各支社のネットワーク はエリア1, エリア2, エリア3 として個別に管理
- 支社間の通信は、必ず本社のネットワーク(エリア0)を経由する
4. サブネット = 企業の各部署やフロア
- OSPFエリアの中には、さらに小さな サブネット(IPネットワークの範囲) がある
- サブネット = 会社の部署・オフィスのフロア
- 例: エリア1(本社)の中に、192.168.1.0/24(営業部)、192.168.2.0/24(開発部) などのサブネットが存在する
- これらのサブネットは、同じエリア内なのでLSAで詳細情報を共有できる
大企業のOSPF構成(例)
AS(自律システム) = ある大企業全体
└── エリア0(バックボーン) = 本社の基幹ネットワーク・データセンター
├── エリア1 = 本社のネットワーク
│ ├── サブネット 192.168.1.0/24(営業部)
│ ├── サブネット 192.168.2.0/24(開発部)
│ ├── サブネット 192.168.3.0/24(経理部)
│
├── エリア2 = 東京支社のネットワーク
│ ├── サブネット 10.1.1.0/24(営業)
│ ├── サブネット 10.1.2.0/24(技術)
│
├── エリア3 = 大阪支社のネットワーク
├── サブネット 10.2.1.0/24(営業)
├── サブネット 10.2.2.0/24(技術)
- 支社間の通信は、必ずエリア0(本社)を経由する
- 各支社のネットワーク(エリア2, エリア3)は、詳細なルーティング情報を本社に伝えない(要約される)
- 本社内の各部署(サブネット)は、直接通信可能(同じエリアだから)
まとめ
✅ AS(自律システム) = 大企業全体(1つの組織のネットワーク)
✅ エリア = 会社の本社・支社・部門ごとのネットワーク単位(ルーティング負荷分散のため)
✅ バックボーンエリア(エリア0) = 本社の幹線ネットワークやデータセンター(すべてのエリアをつなぐ)
✅ サブネット = 各エリア内の部署・フロア単位のIPネットワーク(同じエリア内なら直接通信可能)

エリア0(バックボーンエリア)を必ず経由って非効率じゃない?
「なんでエリア0(バックボーンエリア)が必要なのか?」という疑問は、OSPFを理解する上でかなり重要なポイントです。
1. エリア間のルーティングを効率的に管理するため
OSPFは「階層的なルーティング」を採用しており、エリア0を エリア間のハブ(中心) にすることで、ネットワーク全体の管理をシンプルにしています。
もしエリア0がなかったら?
例えば、以下のようなネットワークを考えてみます。
エリア1(東京) ─── エリア2(大阪) ─── エリア3(福岡)
この場合、東京が大阪を経由して福岡に通信する ことになりますよね?
これだと「どのエリアを経由すればいいか?」がネットワークの設計次第でバラバラになってしまい、経路が複雑になります。
一方で、エリア0を中心にすると すべてのエリアはエリア0だけを見ればよくなる ので、経路がシンプルになります。
エリア1(東京) ─── エリア0(本社) ─── エリア2(大阪)
│
エリア3(福岡)
この形にすれば、どのエリアからどのエリアに通信する場合も、必ずエリア0を通るだけでOK です。
👉 エリア間の経路を単純化し、管理しやすくするのがエリア0の役割 なんです。
2. ループを防ぐため
OSPFは リンクステート型プロトコル なので、各ルータは「ネットワーク全体のトポロジ情報」を持っています。
しかし、エリアごとにLSA(リンクステート情報)の範囲を制限することで、ルータの負荷を減らす 仕組みになっています。
- エリア内のルータは、エリア内の詳細情報だけを持つ
- エリア間の情報は、要約されて交換される(サマリーLSA)
もしエリア0がなかったら、エリア間の情報が どこを通るべきか統一されず、ルーティングループが発生しやすくなる 可能性があります。
3. スケーラビリティ(拡張性)を確保するため
企業のネットワークはどんどん大きくなりますよね?
もしエリア0なしで「すべてのエリアがフルメッシュでつながっている」と、以下のような問題が起こります。
- ルーティングテーブルが 巨大化する(全エリアの情報を持たなければならない)
- エリア間のルート変更が 全体に影響する(あるエリアの変更が全ルータに伝播する)
- ネットワークが複雑になり、設計・管理が困難になる
👉 エリア0をハブにすることで、エリアごとにルーティング情報を要約でき、スケーラブルなネットワーク設計が可能になる!
✅ もし、エリア0がなかったら…
- エリア1とエリア2をつなぐために、直接エリア間でルーティング情報を交換する必要がある
- すると、エリア数が増えるほど「どのエリアとどのエリアを接続するのか?」という設計が超複雑になる
- ネットワークが大きくなると、管理が破綻する
例えば、こんなフルメッシュ状態になったら悲惨ですよね?
エリア1 ── エリア2 ── エリア3
│ ╲ │ ╱ │
│ ╲ │ ╱ │
エリア4 ─── エリア5 ─── エリア6
OSPFが「エリア0を使え」と言っているのは、このカオスな状態を避けるため なんです。
エリア0(バックボーンエリア)の役割
✅ エリア間のルーティングを一元管理し、シンプルにする
✅ ルーティングループを防ぐ
✅ スケーラビリティを確保する(ネットワークが大きくなっても運用しやすい)
👉 OSPFは「エリア0を中心にする」というルールを決めることで、
「エリア間の通信経路を統一し、ネットワークの設計をシンプルにする」というメリットを生み出しているんです!