Skip to main content
  1. Posts/

STP

··1834 words·4 mins
aomori446
Author
aomori446
Introduction coming soon…
Table of Contents
CCNA - This article is part of a series.
Part 8: This Article

1. STP 概要
#

1.1 背景
#

STPを使用しない場合、スイッチ間の冗長リンクによって L2ループ (Layer 2 Loops) が形成され、ネットワークが麻痺する。

  1. ブロードキャストストーム (Broadcast Storms):ブロードキャストフレームがループ内を無限に循環し、帯域幅とCPUリソースを枯渇させる。
  2. MACアドレステーブルの不安定化 (MAC Database Instability):同一の送信元MACアドレスが異なるポート間で頻繁に書き換わる。
  3. フレームの重複受信 (Multiple Frame Transmission):宛先ホストが同じデータを重複して受信する。

1.2 コア機能
#

STPはアルゴリズムにより特定のポートを論理的に ブロック (Block) することで物理ループを断ち切り、ループのない論理トポロジを構築する。メインリンク障害時は、ブロックポートが自動的に転送を再開し、冗長性を確保する。


2. STP 選出プロセス (PVST+)
#

STPネットワークの収束は、厳格な 4ステップの選出順序 に従う。

選出原則:値が小さいほど優先される (Lower is Better)。

2.1 手順 1:ルートブリッジ (Root Bridge) の選出
#

  • 範囲:ブロードキャストドメイン全体(VLANごとに独立して選出)。
  • ルールBID (Bridge ID) が最小 のスイッチが選出される。
    • BID = Priority (デフォルト 32768) + SysID (VLAN ID) + MAC Address
    • まずプライオリティを比較し、同じならMACアドレスを比較。
  • 特性:ルートブリッジ上の全ポートは 指定ポート (DP) となり、転送状態になる。

2.2 手順 2:ルートポート (Root Port - RP) の選出
#

  • 対象:各 非ルートブリッジ (Non-Root) スイッチ。
  • :各デバイスにつき 1つ のみ。
  • 目的:ルートブリッジへのパスコストが最小となるインターフェース。
  • 選出基準 (受信した BPDU を比較)
    1. 最小の Root Cost:累積パスコストが最小 (100M=19, 1G=4)。
    2. 最小の Sender BID:上流スイッチの BID が最小。
    3. 最小の Sender Port ID:上流ポートの (Priority.番号) が最小。

2.3 手順 3:指定ポート (Designated Port - DP) の選出
#

  • 対象:各 リンク (セグメント)
  • :各リンクにつき 1つ のみ。
  • 目的:そのセグメントへのトラフィック転送を担当。
  • 選出基準
    1. 最小の Root Cost:どちらがルートブリッジに近いか。
    2. 最小の My BID:コストが同じ場合、自身の BID を比較。
    3. 最小の My Port ID:BID も同じ場合、自身の Port ID を比較。

2.4 手順 4:非指定ポート (Blocking / NDP) のブロック
#

  • 対象:RP でも DP でもないポート。
  • 動作NDP (Non-Designated Port) となり、Blocking 状態に移行。
  • 特性:BPDU の受信のみ行う。送信はしない。データ転送もしない。

3. ポート状態と RSTP による改善
#

3.1 従来の STP (802.1D) の状態
#

収束が遅い (30-50秒)。

状態説明BPDU 送受信MAC学習データ転送所要時間
Disabledインターフェース Shutdown-
Blocking(安定) ブロック中、ループ防止受信のみMax Age (20s)
ListeningBPDU 聴取、選出中Fwd Delay (15s)
Learning送信元 MAC 学習Fwd Delay (15s)
Forwarding(安定) 通常転送-

3.2 RSTP (802.1w) の改善
#

状態の統合と新しい役割により 秒単位の高速収束 を実現。

状態のマッピング

802.1D 状態RSTP 状態動作
Disabled / Blocking / ListeningDiscardingデータ転送しない
LearningLearningMAC学習する
ForwardingForwardingデータ転送する

新しいポートの役割

  • Alternate Port (AP):ルートポートのバックアップ。メイン経路障害時、即座に RP に切り替わる。
  • Backup Port (BP):指定ポートのバックアップ(ハブ環境でのみ使用)。

設定モード切替

Switch(config)# spanning-tree mode rapid-pvst

4. Cisco 拡張機能 (Toolkit)
#

4.1 PortFast (ポートファスト)
#

  • 機能:Listening/Learning 段階をスキップし、即座に Forwarding に移行させる。
  • 適用:エンド端末 (PC/Server) を接続する Access インターフェースのみに使用。
# インターフェース設定 (推奨)
Switch(config-if)# spanning-tree portfast

# グローバル設定 (Trunk 以外の全ポートに適用)
Switch(config)# spanning-tree portfast default

4.2 BPDU Guard (BPDU ガード)
#

  • 機能:PortFast ポートにスイッチが誤接続されるのを防ぐ。BPDU を受信すると、そのポートを即座に err-disabled 状態にする。
  • 適用:PortFast と組み合わせて使用し、アクセス層のセキュリティを強化する。
# インターフェース設定
Switch(config-if)# spanning-tree bpduguard enable

# グローバル設定
Switch(config)# spanning-tree portfast bpduguard default

4.3 Root Guard (ルートガード)
#

  • 機能:配下のデバイスがルートブリッジを乗っ取るのを防ぐ。より優れた BPDU を受信すると、ポートは root-inconsistent 状態になる。
  • 適用:コア/ディストリビューション層で、下流へ接続する指定ポート (DP) に設定。
Switch(config-if)# spanning-tree guard root

5. 設定と確認
#

5.1 ルートブリッジ プライオリティの調整
#

# 方法 A:自動計算 (Primary=24576, Secondary=28672)
Switch(config)# spanning-tree vlan 10 root primary
Switch(config)# spanning-tree vlan 10 root secondary

# 方法 B:手動指定 (4096 の倍数である必要あり)
Switch(config)# spanning-tree vlan 10 priority 4096

5.2 よく使う確認コマンド
#

# STP 状態の概要確認 (最頻出)
Switch# show spanning-tree

# 特定 VLAN の選出詳細を確認
Switch# show spanning-tree vlan 10

# モードや PortFast/BPDU Guard のグローバル状態確認
Switch# show spanning-tree summary

# タイマーや BPDU 統計の確認
Switch# show spanning-tree detail
CCNA - This article is part of a series.
Part 8: This Article

Related