ルートガードとは

ルートガードは、ルートポートが意図せずに変わってしまわないようにするための機能です。ブリッジプライオリティが小さい不正なスイッチがネットワークに追加されると、ルートブリッジの認識が変わり、ルートポートが変更されてしまいます。ルートブリッジの認識が変わり、ルートポートが変更されてしまうと、イーサネットフレームの転送経路も変わってしまうことになります。このようなことを防ぐためにルートガードを利用します。


ルートブリッジ、ルートポートなどスパニングツリーの動作の仕組みは以下の記事で解説しています。


ルートガードの動作

以下の図は、ルートガードの動作の概要を示しています。

図 ルートガード
図 ルートガード

図のSW2がルートブリッジです。また、SW3はセカンダリルートブリッジです。そのため、SW1 Fa0/1がルートポートとなり、Fa0/2は非代表ポートとしてブロックされます。もし、ルートポートであるFa0/1がダウンすると、Fa0/2が新しいルートポートになることを想定しています。この例のネットワーク構成では、SW1のルートポートになる可能性があるのは、Fa0/1とFa0/2です。Fa0/3はルートポートになるはずがないポートです。

ところが、SW1 Fa0/3に不正なスイッチが接続されてしまい、そのスイッチのプライオリティが現在のルートブリッジよりも小さい値だと、ルートブリッジが変更されてしまいます。その結果、Fa0/3がルートポートになってしまいます。SW1だけではなくSW2、SW3でもルートブリッジの認識が変わり、ルートポートをはじめとしてスパニングツリー全体の構成が変わります。その結果、イーサネットフレームの転送経路も変わってしまいます。

ルートガードを有効にすることで、こうした意図しないルートポートの変更を防止します。SW1 Fa0/3でルートガードを有効にしていると、現在のルートブリッジよりも小さいプライオリティのBPDUを受信すると、Fa0/3はRoot Inconsistent状態に移行します。Root Inconsistent状態はフレームの転送をブロックします。

ルートガードの設定

ルートガードは、ルートポートになってはいけないポートに対して有効化します。インタフェースコンフィグレーションモードで次のコマンドを利用します。

ルートガードの設定

(config-if)#spanning-tree guard root

レイヤ2スイッチの仕組み