試験項目 2.5 · CCNA-071
STP / Rapid PVST+ Fundamentals
ドメイン 2 · Switching and Network Access · Rapid PVST+
このページのゴール
Rapid PVST+がVLANごとにLoop-freeなLayer 2 Topologyを形成する目的を理解し、Mode・VLAN Instance・Root / Role / Stateの基本確認から正常な冗長Pathを判断できるようにする。
このページのゴール
Rapid PVST+の基本動作を、L2ループを防ぎながら冗長性を維持する仕組みとして理解し、VLANごとのSTPインスタンス、動作モード、Root Bridge、ポートの役割と状態を確認できるようにします。
特に重要なのは、
冗長リンクがある
=
すべてのリンクを常時Forwardingにする
ではないことです。
Rapid PVST+では、ループを防ぐために一部の経路を非Forwardingとして待機させることがあります。
そのため、
ポートがForwardingではない
=
必ず障害
とは判断しません。
このページで学ぶこと
- Rapid PVST+がL2ループを防ぐ目的
- VLANごとにSTPインスタンスを持つ考え方
- Rapid PVST+モードの基本設定
- STP確認コマンドの使い分け
- 正常な非Forwarding経路の考え方
- VLANごとにRoot Bridgeやポート役割が異なり得ること
- Rapid PVST+がRSTPを基礎にすること
- STP出力から直接確認できる範囲と限界
なぜSTPが必要なのか
L2ネットワークでは、可用性を高めるために複数のリンクを用意することがあります。
例:
+-------- SW2 --------+
| |
SW1 --+ +-- SW3
| |
+-------- SW4 --------+
SW1からSW3へ複数のL2経路があるため、片方に障害が起きても別経路を使える構成にできます。
しかし、すべての冗長経路を同時に無制限で転送させると、L2ループが発生する危険があります。
L2ループの問題
L2でループができると、ブロードキャストやUnknown Unicastなどが同じ経路を循環する危険があります。
概念図:
SW1
| \
| \
SW2--SW3
3台のスイッチ間で冗長リンクがあり、すべてが転送状態なら、フレームが循環できる経路が成立します。
STPの基本目的
STPの基本目的は、
冗長性を残す
+
L2ループを防ぐ
ことです。
そのために、論理的なループができないよう、一部の経路を非Forwardingとして扱います。
冗長性とループ防止を両立する
イメージ:
経路A
SW1 ---------------- SW2
| |
| |
+------ 経路B -------+
経路A
→ Forwarding
経路B
→ 非Forwarding
このように、片方を通常の転送経路として使い、もう片方をループ防止のために待機させることがあります。
非Forwardingは必ずしも異常ではない
STPで非Forwardingとなっているポートを見つけても、すぐに障害とは判断しません。
正常な冗長設計では、
一方
→ Forwarding
もう一方
→ 非Forwarding
という状態が意図された結果になり得ます。
「止まっている」ではなく「役割を確認する」
悪い判断:
ポートがForwardingではない
↓
リンク障害と断定
良い判断:
ポートがForwardingではない
↓
STPの役割と状態を確認
↓
設計上の冗長経路か確認
です。
Rapid PVST+とは
Rapid PVST+は、Cisco環境でVLANごとにSTPインスタンスを持ち、RSTPの高速収束の考え方を利用する方式です。
重要なのは、
VLAN 10
→ VLAN 10用のSTPインスタンス
VLAN 20
→ VLAN 20用のSTPインスタンス
という点です。
VLANごとに別のSTPインスタンス
Rapid PVST+では、VLANごとにRoot Bridgeやポート役割、状態が異なり得ます。
例:
VLAN 10
Root Bridge: SW1
VLAN 20
Root Bridge: SW2
このような構成は成立します。
全VLANで同じRoot Bridgeとは限らない
誤り:
VLAN 10でSW1がRoot Bridge
↓
VLAN 20も必ずSW1がRoot Bridge
とは限りません。
Rapid PVST+ではVLANごとに独立したSTPインスタンスを持つためです。
同じ物理ポートでも役割が異なり得る
同じトランクポートであっても、VLANごとに役割が異なることがあります。
例:
Gi1/0/1
VLAN 10
→ Root
VLAN 20
→ Alternate
これはRapid PVST+のVLAN単位動作として成立し得ます。
物理ポートとSTP役割を1対1で固定しない
悪い考え方:
Gi1/0/1はRoot
↓
すべてのVLANでRoot
良い考え方:
Gi1/0/1
VLAN 10ではRoot
VLAN 20ではAlternate
のように、VLANごとに確認します。
VLAN単位で確認する理由
STPの確認では、
どのVLANの情報か
を必ず意識します。
同じインターフェースでも、対象VLANが変わればRoot Bridgeや役割、状態が異なる可能性があるためです。
Rapid PVST+の基本設定
Cisco IOSでRapid PVST+モードを選択する基本設定は、
spanning-tree mode rapid-pvst
です。
設定の意味
この設定は、装置のSTPモードとしてRapid PVST+を選択します。
spanning-tree mode rapid-pvst
を見たときは、
Rapid PVST+モードを選択している
と読みます。
別の設定と混同しない
次の設定とは意味が異なります。
Rapid PVST+のモード設定と、個別ポートに対するSTP関連設定、実際のSTP動作状態の確認は、それぞれ確認する対象が異なります。
このページでは、装置のSTPモードを選択する設定と、VLANごとの実際のRoot Bridge・ポート役割・ポート状態を分けて確認します。
running-configで確認する考え方
設定確認では、
spanning-tree mode rapid-pvst
が存在するかを確認します。
直接確認できるのは、
装置でRapid PVST+モードが設定されている
ことです。
モード設定だけでSTP全体を断定しない
モード設定を確認しても、
各VLANのRoot Bridge
各ポートの役割
各ポートの状態
までは分かりません。
それらはSTP状態の確認コマンドで確認します。
STP確認コマンド
基本的な確認コマンドとして、
show spanning-tree
show spanning-tree vlan 10
show spanning-tree summary
を使い分けます。
show spanning-tree
show spanning-tree
はSTP情報を確認する基本コマンドです。
見る観点:
対象VLAN
Root Bridge
ポートの役割
ポートの状態
です。
show spanning-tree vlan 10
特定のVLANだけを確認したい場合は、
show spanning-tree vlan 10
を使います。
例:
VLAN 10だけの
Root Bridgeとポート役割を確認したい
という場合に適します。
VLAN番号を変えて比較する
VLANごとの差を見るときは、
show spanning-tree vlan 10
show spanning-tree vlan 20
のように対象VLANを分けて確認します。
VLANごとの差を表で整理する
例:
| 確認対象 | VLAN 10 | VLAN 20 |
|---|---|---|
| Root Bridge | SW1 | SW2 |
| Gi1/0/1の役割 | Root | Alternate |
このようにVLAN単位で整理すると、同じ物理ポートの役割差を見分けやすくなります。
show spanning-tree summary
装置全体のSTPモード概要を確認したい場合は、
show spanning-tree summary
を使います。
このページでは、
装置全体のSTPモード概要
を確認するコマンドとして区別します。
コマンド選択の基準
特定VLANのSTP詳細
→ show spanning-tree vlan <VLAN番号>
装置全体のSTPモード概要
→ show spanning-tree summary
STP情報の基本確認
→ show spanning-tree
と整理します。
目的に合う確認コマンドを選ぶ
悪い例:
VLAN 30のRoot Bridgeを確認したい
↓
show interfaces statusだけを見る
よりも、
show spanning-tree vlan 30
で対象VLANのSTP情報を直接確認する方が適切です。
Root Bridgeを確認する意味
STPではRoot Bridgeが基準になります。
Rapid PVST+ではVLANごとにSTPインスタンスがあるため、
VLAN 10のRoot Bridge
VLAN 20のRoot Bridge
を分けて確認します。
Root BridgeがVLANごとに異なる例
VLAN 10
Root Bridge = SW1
VLAN 20
Root Bridge = SW2
この状態はRapid PVST+として成立します。
Root Bridgeの存在を全VLANで1台に固定しない
Rapid PVST+では、
ネットワーク全体でRoot Bridgeは必ず1台だけ
とは考えません。
VLANごとのSTPインスタンスで確認します。
ポート役割の基本的な読み方
このページでは、STP出力に表示される代表的な役割として、
Root
Designated
Alternate
を識別できるようにします。
詳細な選出計算よりも、まず、
どのVLANで
どのポートが
どの役割として表示されているか
を正確に読むことが重要です。
Root表示
ポート役割としてRootが表示される場合、そのVLANのSTPでRoot役割として動作していることを確認します。
同じポートでも別VLANで同じ役割とは限りません。
Designated表示
DesignatedもSTPで確認する代表的なポート役割です。
この段階では、
対象VLANでDesignatedとして表示されている
という事実を正確に読み取ります。
Alternate表示
Alternateは冗長経路で見られる代表的な役割です。
正常な冗長構成では、Alternateが非Forwardingとなることがあります。
Alternateと非Forwarding
例:
Gi1/0/2
役割: Alternate
状態: BLK
このような表示を見ても、
物理リンク障害
と即断しません。
BLK表示を故障と決めない
BLKの表示は、STPがループを防ぐために非Forwardingとしている正常状態になり得ます。
判断:
Alternate + BLK
↓
冗長設計上の待機経路か確認
です。
非Forwardingを評価する手順
AlternateやBLKなどの非Forwarding表示を確認したときは、状態だけで障害や物理リンク断と決めず、次の順序で評価します。
1. 対象VLANを確認
2. ポート役割を確認
3. ポート状態を確認
4. 冗長設計と一致するか確認
正常な冗長設計では、通常利用する経路をForwardingとし、別経路をAlternate / BLKとして待機させることがあります。
そのため、非Forwardingを見つけただけでshutdown / no shutdownを実行したり、両方の経路を強制的にForwardingへ変更したりしません。まずSTPによる正常なループ防止動作かを確認します。
通常利用側の障害時における冗長性
冗長構成では、通常利用している経路に障害が起きたとき、待機していた経路を利用できるようにすることが目的です。
確認すべきなのは、
非Forwardingであること
そのものではなく、
期待した冗長設計と役割・状態が一致しているか
です。
VLANごとの役割差を読む
例:
Gi1/0/1
VLAN 10
役割: Designated
VLAN 20
役割: Alternate
この表示は、
同じ物理ポートでも
VLANごとに役割が異なる
ことを示します。
VLAN単位のインスタンスと役割差
Rapid PVST+ではVLANごとにSTPインスタンスがあるため、
VLAN 10ではDesignated
VLAN 20ではAlternate
という組み合わせは成立し得ます。
役割表示が違うことを故障と決めない
同じ物理ポートの役割がVLAN間で異なっても、
表示が壊れている
とは判断しません。
まずVLAN単位のSTPインスタンスとして解釈します。
Rapid PVST+とRSTP
Rapid PVST+は、Rapid Spanning Tree Protocolの高速収束の考え方をVLANごとに適用するCisco実装として理解します。
RSTPを基礎にする
試験では、
Rapid PVST+
→ RSTPを基礎にする
という関係を押さえます。
全く別のループ防止方式と考えない
Rapid PVST+を、
RSTPとは無関係な独自ループ防止方式
と考えるのは適切ではありません。
VLANごとにRSTPの考え方を利用する
整理:
RSTPの高速収束の考え方
+
VLANごとのSTPインスタンス
=
Rapid PVST+の基本理解
です。
RSTPとSTPの確認で重要なもの
このページでは、
Root Bridge
ポート役割
ポート状態
VLANごとのインスタンス
を確認軸として扱います。
役割の細かな選出計算や状態遷移を先に覚えるのではなく、まず出力から対象VLANと現在の役割・状態を読み取ります。
STP出力から直接確認できること
STP出力では、
STPモード
対象VLAN
Root Bridge
ポート役割
ポート状態
などを確認できます。
STP出力だけで証明できないこと
STP出力が期待どおりでも、
HTTPSアプリケーションが正常
L3通信が正常
VLAN設定全体が正常
物理インターフェース全体が正常
まで直接証明するものではありません。
STPが正常でも通信障害はあり得る
例:
STP
→ 期待どおり
通信
→ 失敗
という状態はあり得ます。
その場合、
STPは確認済み
↓
別の確認情報へ進む
と考えます。
STP正常を「障害なし」と読み替えない
悪い判断:
STP出力に異常なし
↓
ネットワーク全体に障害なし
良い判断:
STP出力に異常なし
↓
STPの範囲では期待状態
↓
症状に応じてVLAN、インターフェース、L3などを確認
です。
STP確認情報の境界
STPの確認結果は、
L2ループ防止の状態
Root Bridge
ポート役割
ポート状態
についての確認情報です。
これをアプリケーションや全通信経路の正常性まで広げません。
障害切り分けでの基本姿勢
症状を確認
↓
対象VLANを確認
↓
STPモードを確認
↓
Root Bridgeを確認
↓
ポート役割を確認
↓
ポート状態を確認
↓
設計と一致するか判断
↓
STPに問題がなければ別の確認情報へ進む
という順序で考えます。
代表的な確認シナリオ1
症状:
冗長リンクの片方がBLK
確認:
show spanning-tree vlan 10
結果:
対象ポート
役割: Alternate
状態: BLK
判断:
ループ防止の正常な非Forwarding経路になり得る
です。
代表的な確認シナリオ2
症状:
VLAN 10ではGi1/0/1がRoot
VLAN 20ではGi1/0/1がAlternate
判断:
VLANごとにSTPインスタンスが異なるため成立し得る
です。
代表的な確認シナリオ3
確認したいこと:
VLAN 30のRoot Bridgeとポート役割
使用:
show spanning-tree vlan 30
です。
代表的な確認シナリオ4
確認したいこと:
装置全体のSTPモード概要
使用:
show spanning-tree summary
です。
代表的な確認シナリオ5
設定:
spanning-tree mode rapid-pvst
判断:
Rapid PVST+モードを選択している
です。
よくある誤り
冗長リンクをすべてForwardingにすればよいと考える
L2ループを作る危険があるため、STPは一部経路を非Forwardingにします。
非Forwardingをすべて障害と判断する
正常な冗長設計ではAlternateなどが非Forwardingとなり得ます。
BLKを物理リンク断と決める
STPの状態表示と物理障害を混同しません。
VLAN 10のRoot Bridgeを全VLANへ当てはめる
Rapid PVST+はVLANごとにSTPインスタンスを持ちます。
同じ物理ポートは全VLANで同じ役割だと考える
VLANごとにRoot、Designated、Alternateなどの役割が異なり得ます。
(個別ポート向けSTP設定)をRapid PVST+モード設定と考える
Rapid PVST+モードの設定は、
spanning-tree mode rapid-pvst
です。
VLAN固有情報を概要情報だけで判断する
特定VLANのRoot Bridgeやポート役割を確認するなら、
show spanning-tree vlan <VLAN番号>
を使います。
STP正常ならアプリケーションも正常と考える
STP出力が示す範囲と、アプリケーションの正常性は分けます。
STP正常なら通信障害は存在しないと考える
STP以外のVLAN、インターフェース、L3などに問題がある可能性があります。
確認時に記録する情報
対象装置
対象VLAN
STPモード
Root Bridge
対象ポート
ポート役割
ポート状態
期待する冗長経路
実際の表示
を整理します。
VLANごとの記録例
VLAN 10
Root Bridge: SW1
Gi1/0/1: Root
Gi1/0/2: Alternate / BLK
VLAN 20
Root Bridge: SW2
Gi1/0/1: Alternate / BLK
Gi1/0/2: Root
このように記録すると、
同じ物理ポートでも
VLANごとに役割が異なる
ことを確認しやすくなります。
正常な非Forwardingの判断例
確認結果:
対象VLAN: 10
対象ポート: Gi1/0/2
役割: Alternate
状態: BLK
設計:
Gi1/0/1
→ 通常経路
Gi1/0/2
→ 冗長待機経路
判断:
Gi1/0/2の非Forwardingは
ループ防止の正常状態になり得る
です。
STP確認後の切り分け例
STPモード
→ 期待どおり
Root Bridge
→ 期待どおり
役割
→ 期待どおり
状態
→ 期待どおり
通信障害
→ 継続
この場合、
STP以外の確認情報へ進む
と判断します。
まとめ
Rapid PVST+は、冗長なL2ネットワークでループを防ぎながら冗長性を維持するための仕組みです。
基本動作は、
必要な経路
→ Forwarding
冗長経路
→ 非Forwardingになり得る
と整理できます。
Rapid PVST+では、
VLANごとにSTPインスタンスを持つ
ため、
VLAN 10ではSW1がRoot Bridge
VLAN 20ではSW2がRoot Bridge
のような構成が成立します。
同じ物理ポートでも、
VLAN 10
→ Root
VLAN 20
→ Alternate
のように役割が異なる場合があります。
モード設定は、
spanning-tree mode rapid-pvst
です。
確認では、
show spanning-tree
show spanning-tree vlan <VLAN番号>
show spanning-tree summary
を目的に応じて使い分けます。
AlternateやBLKなどの非Forwarding表示を見ても、すぐに障害とは判断せず、
対象VLAN
役割
状態
冗長設計
を照合します。
また、Rapid PVST+はRSTPを基礎とし、その高速収束の考え方をVLANごとに適用する方式として理解します。
最後に、STP出力が期待どおりでも、
アプリケーション
VLAN設定全体
インターフェース全体
L3通信
まで正常と証明するものではありません。
STPで直接確認できる範囲を正確に読み、非Forwardingを正常なループ防止動作と障害に分けることが、このページの中心です。
理解確認
このページの内容を16問で確認します。
理解確認16問へ →