STPについて
STP(spanning tree protocol)とはL2レイヤーでループが発生することを防ぐプロトコルです。
ループとは下記の図のようにL2SWを輪っか上に繋いで自機器で投げたパケットが自分自身に帰ってきてしまうような構成です。
※ルータなどの機器はブロードキャスト・マルチキャストは宛先不明で破棄するので基本は大丈夫
STP 設定方法
グローバルコンフィグレーションモード(スイッチ全体)で設定 | |
spanning-tree mode ( pvst | rapid-pvst | mst ) | STPのモード指定 PVST(Per-VLAN Spanning Tree)=VlanごとにSTPを有効化する rapid-PVST=PVSTの高速版 MST(Multiple Spanning Tree)=複数のVlanを纏めてSTPを有効にする |
spanning-tree etherchannel guard misconfig | 接続したデバイス間での EtherChannel の設定の矛盾を検出できる。 接続相手SWにポートチャネルを設定して無かった時などに検出する。 デフォルトで有効 |
spanning-tree vlan 10,20,30 | スパニングツリーを有効にするVlanの設定 |
spanning-tree vlan 10 priority 0 | Vlan10のプライオリティを0に設定する。 値が小さいほうがルートスイッチになる。 プライオリティ値には、4096の倍数を設定する。デフォルトは32768 0→4096→8192・・・61440 |
spanning-tree portfast default | 全てのポートでPortfastを有効にする ※非推奨 |
spanning-tree portfast bpduguard default | グローバルで設定するとPortfastが有効なインターフェースのみで有効となる |
spanning-tree portfast bpdufilter default | グローバルで設定するとPortFastが有効なインターフェースのみ有効となる |
udld (enable | aggressive) | UDLDを有効にする enable=通常モード aggressive=アグレッシブモード |
インターフェースコンフィグレーションモードで設定 | |
spanning-tree portfast | 指定したポートでPortfastが有効となる |
spanning-tree bpduguard enable | 指定したポートでBPDUGuardが有効となる 有効にしたポートでBPDUを受信すると、ポートを error-disable にする。 基本はポートファーストとセットで設定する |
spanning-tree guard root | ルートガードを有効にする ※ループガードとルートガードの設定は両方の機能を同時に有効には出来ない |
spanning-tree guard loop | ループガードを有効にする ※ループガードとルートガードの設定は両方の機能を同時に有効には出来ない |
udld port 「aggressive」 | UDLDを有効にする aggressiveを付与すると有効になる |
各機能詳細説明
PortFast
スパニングツリーの計算をせず、ポートを即座にフォワーディング状態にする機能。
主にポートに接続する機器がPCなどでループが発生しない機器との接続に使用する
BPDU(Bridge Protocol Data Unit)
ルートブリッジ選出やトポロジの把握・ループ障害を検知したりするのに使用するフレーム。
BPDUガード
想定していない機器がポートに接続されることを防ぐ機能。
有効にしたポートでBPDUを受信するとポートがerror-disableになるので、本来はPCなどを接続する予定のポートでスイッチなどを接続されてループなどが発生しないようにする。
ポートで有効にする場合はポートがPortfastを無効でもBPDUガードは有効になる
グローバルで有効の場合はPortfastが有効なポートのみで有効になる
BPDUフィルタリング
設定したポートからBPDUを送信しなくなる機能。
有効にしたポートでBPDUを受信すると機能が無効化されて通常のSTPポートになってしまうので注意
ポートで有効にする場合はポートがPortfastを無効でもBPDUガードは有効になる
グローバルで有効の場合はPortfastが有効なポートのみで有効になる
ルートガード
新たに追加するL2SWがルートブリッジになる事を防止する機能。
有効にしたポートで今の状態よりもプライオリティ値が小さいBPDUを受信するとポートをroot-inconsistent 状態にして通信ができないようになります。
優先度の高いBPDUを受信しなくなるとポートエラー状態は解消する。
ループガード
光ケーブルの片リンク障害やLANケーブルのTX障害や誤接続等によりブロッキングポートでBPDUを受信しなくなった際にL2ループの発生を防止する機能。
有効にしたポートでBPDUを受信しなかった場合、ポートをloop-inconsistent 状態にする
再度BPDUを受信するようになるとポートエラー状態は解消する
UDLD
光ケーブルの片リンク障害やLANケーブルのTX障害による単一方向リンクを検出することができる機能。
単一方向リンクとは、機器で送信できるが受信できない、相手機器でトラフィックを受信できるが送信できない状態
有効にしたポートで単一方向リンクを検出したらポートを err-disabled にする
コメント