STP(Spanning Tree Protocol)の詳細動作とポートステートを徹底解説

  • URLをコピーしました!

スイッチ間を複数のリンクで接続して冗長化を図ると、ループ(循環通信)が発生する危険性があります。 このループを防止するために使われるのが、STP(Spanning Tree Protocol)です。 本記事では、STPの仕組みや動作原理、各ポートステート(状態)を図解でわかりやすく解説します。

目次

🔹 STPとは?

STP(Spanning Tree Protocol)は、スイッチ間で冗長なパスを自動的に検出・遮断し、ループを防止するプロトコルです。 IEEE 802.1Dで標準化されており、ほぼすべてのスイッチで利用可能です。

📘 STPの目的

  • ネットワークループを防止
  • 冗長パスを保持し、障害時に自動復旧
  • 安定したブロードキャストドメインの維持

【ループ発生イメージ】
  ┌──────┐       ┌──────┐
  │Switch A│──────│Switch B│
  └──────┘  ╲   ╱  └──────┘
             ╲ ╱
            ┌──────┐
            │Switch C│
            └──────┘

※A-B-C-A の経路でループが発生

🔹 STPの基本動作の流れ

STPは「ツリー構造」を作ることでループを防ぎます。 以下の手順で経路を決定します。

  1. ルートブリッジの選出: ネットワーク内で最も優先度(Bridge ID)の低いスイッチを「ルートブリッジ」とする。
  2. 最短経路の計算: 各スイッチがルートブリッジまでの最短パスを計算。
  3. ブロッキングポートの決定: 冗長経路上でループが発生しそうなリンクを遮断。

🧩 Bridge ID(ブリッジID)の構成

構成要素説明
プライオリティ値デフォルト32768。小さいほど優先される。
MACアドレス同一プライオリティならMACアドレスの小さい方が優先。

Bridge ID = プライオリティ値 + MACアドレス
例:32768.001A.2B3C.4D5E

🔹 各ポートの役割

ポート種類役割
Root Portルートブリッジへの最短経路にあるポート(各スイッチに1つ)
Designated Port各ネットワークセグメントで最もルートに近いポート
Blocked Portループ防止のために通信を遮断するポート

例)
Switch A(Root Bridge)
 ├─ DP ─ Switch B(RP)
 ├─ DP ─ Switch C(RP)
Switch BとCの間は1本がBlocked

🔹 STPのポートステート(状態)

STPでは、ポートが以下の5つの状態を順番に経て稼働します。

ステート名動作内容
Disabledポートが無効化されている状態(STP動作なし)
Blockingループを防ぐためフレーム転送を停止。BPDUのみ受信。
ListeningBPDUの受信・送信を行い、ループ有無を判定。
LearningMACアドレスを学習するが、データ転送はまだ行わない。
Forwardingフレーム転送・MAC学習が可能。正常稼働状態。

【ポート状態の遷移】
Blocking → Listening → Learning → Forwarding

この遷移には通常30〜50秒ほどかかるため、再起動時などは通信が一時的に停止します。 この問題を解決するために、RSTPやPortFastなどが登場しました(後述)。

🔹 STPのタイマー設定

タイマー名デフォルト値説明
Hello Time2秒BPDU送信間隔
Forward Delay15秒Listening/Learning各状態の保持時間
Max Age20秒BPDUが無効とみなされるまでの時間

🔹 トラブル時の確認コマンド(Cisco例)


show spanning-tree
show spanning-tree interface gigabitEthernet0/1 detail
show spanning-tree summary

これらのコマンドで、ルートブリッジ・各ポートの状態・STPバージョンなどを確認できます。

🔹 STPの発展プロトコル

STPの遅延や制御範囲の問題を改善するために、以下の派生プロトコルが登場しました。

プロトコル名特徴
RSTP(IEEE 802.1w)高速収束(数秒以内で切り替え可能)
MSTP(IEEE 802.1s)複数VLANを1つのSTPインスタンスで管理
PVST+(Cisco独自)VLANごとに独立したSTPインスタンスを持つ

🔹 まとめ

  • STPはループ防止のための必須プロトコル(IEEE 802.1D)
  • ルートブリッジ選出 → 経路決定 → 不要ポート遮断の流れで動作
  • ポート状態は「Blocking → Listening → Learning → Forwarding」の順
  • RSTPやMSTPで高速化・効率化が可能

STPはネットワーク設計の基本中の基本であり、理解が浅いとトラブル時に原因を特定できません。 特にCCNA試験では、ルートブリッジ選出・ポートロール・状態遷移の理解が頻出ポイントです。

目次