KENスクールブログ | パソコン教室・パソコン講座なら個別指導のKENスクール

BLOGKENスクールブログ

ネットワーク

RSTPとBPDUGard

今回の記事ではRSTPによる冗長スイッチングテクノロジーとBPDUGuardについてご紹介します。

RSTP概要

STPの弱点を克服するべく開発されたプロトコルが、RSTP(Rapid Spanning Tree Protocol)です。
RSTPを使用することによりSTPの再計算は数秒以内となり、瞬断レベルでの切り替えも可能になります。
RSTPはIEEE802.1Wとして標準化されており、STP(IEEE802.1D)とは互換性があるため、STPとの混在環境でも動作が可能です。
STPと同様にRSTPの基本機能は、単一のインスタンス及び複数のインスタンスとして適用可能です。

また、STPではポートの状態が細かく分かれていましたが、RSTPでは3つにまとめられています。
RSTPでは、STPでのブロッキング、リスニングはデータの転送を行わず、MACアドレスの学習も行わないので、1つの破棄状態として定義されています。 ラーニング、フォワーディングについてはSTPと同様です。

なお、Catalystスイッチでは、Cisco独自のPVST+と組み合わせた「Rapid PVST+」が動作します。

RSTPポートの役割

RSTPのポートには以下の4つがあり、スイッチのポートから送信される BPDUによって決定されます。

ルートポート
ルートブリッジへの最小コストを持つポート。

指定ポート(Designated Port)
ネットワークセグメント上で、ルートブリッジへの最小ルートパスコストを持つスイッチ側のポート。

代替ポート(Alternate Port)
ルートブリッジへの代替パスを持つポートで、ルートポートとは異なるパスを取ります。

バックアップポート
自ブリッジから上位のBPDUを受信してブロックされるポートで、冗長用の接続をするポート。

RSTPのトポロジー変更

RSTP では、トポロジー変更の発生源であるスイッチが、TC ビットのセットされたBPDU をネットワーク全体にフラッディングします。
全ての非エッジポート(指定ポート、ルートポート)に対してハロータイムの2 倍のTC While タイマーが開始され、タイマーが動作している間は、ルートポートからもTC ビットがセットされたBPDU が送信されます。
また、これらのポートすべてに関連して学習したMAC アドレスをフラッシュ(消去)します。

TC ビットがセットされたBPDU を受信したスイッチは、BPDU を受信したポートを除き、すべてのポート上で学習したMAC アドレスがフラッシュされます。
また、このスイッチ上でもTC While タイマーが開始され、同様にTC ビットが設定されたBPDU が送信されます。

TC ビットがセットされたBPDU を受信したスイッチ上で代替ポートを指定ポートに変更する必要がある場合に、プロポーザル/アグリメントプロセスにより指定ポートの決定を行い、高速に収束します。
これにより、ルートブリッジまでBPDU が到達するまで待機したり、収束するまで最大50 秒待つ必要がなくなります。

代替ポートを持つスイッチのルートポートのリンクがダウンした場合は、即座に代替ポートがルートポートに切り替わり、TC ビットがセットされたBPDU も送信されません。

BPDU Guardの機能

PortFast が有効にされたポートに誤ってスイッチを接続した場合、一時的にブリッジングループが形成される可能性があります。
BPDU Guard が有効にされたポートでBPDU が受信されると、そのポートはerr-disable の状態におかれてシャットダウン状態となります。 これにより、誤った接続によるループを防ぐことが可能となります。
err-disable 状態となったポートは、ポートセキュリティの復旧手順と同様に、「shutdown」および「noshutdown」コマンドを実行するか、タイムアウト機能によって自動的に有効になるようにしておきます。

BPDU Guard コマンド

デフォルトの状態でBPDU ガード機能は全てのポートで無効化されています。 BPDU ガード機能をグローバルコンフィグレーションモードで設定すると、PortFast を有効にしたポートについて自動的にBPDU Guard が設定されます。
ポート単位でBPDU Guard 機能を有効化した場合は、PortFast 設定の有無に関係なく、該当ポートでBPDU Guard を設定することになります。

なお、err-disable 状態となったポートをタイムアウト機能により自動的に有効にするには、下記のコマンドを実行しておきます。

これにより、デフォルトでは300 秒ごとに自動的に復旧させることができます。

 

いかがでしたでしょうか。
ぜひお勉強の際にお役立て下さい。

この記事に関連する講座

CCNP講師監修による基礎から実践までを網羅したカリキュラム!

詳しくはこちら