Catalyst 2950 LRE デスクトップ スイッチ ソフトウェア コンフィギュレーション ガイド
STPの設定
STPの設定
発行日;2012/01/12 | ドキュメントご利用ガイド | ダウンロード ; この章pdf | フィードバック

目次

STPの設定

スパニングツリー機能の概要

STPの概要

サポートされるスパニングツリー インスタンス

BPDU

ルート スイッチの選定

ブリッジID、スイッチ プライオリティ、および拡張システムID

スパニングツリー タイマー

スパニングツリー トポロジーの作成

スパニングツリー インターフェイス ステート

ブロッキング ステート

リスニング ステート

ラーニング ステート

フォワーディング ステート

ディセーブル ステート

スパニングツリーのアドレス管理

STPおよびIEEE 802.1Qトランク

スパニングツリーおよび冗長接続

接続能力を維持するためのエージング タイムの短縮

スパニングツリー機能の設定

STPのデフォルト設定

STP設定時の注意事項

STPのディセーブル化

ルート スイッチの設定

セカンダリ ルート スイッチの設定

ポート プライオリティの設定

パス コストの設定

VLANのスイッチ プライオリティの設定

Helloタイムの設定

VLANの転送遅延時間の設定

VLANの最大エージング タイムの設定

カスケード スタックで使用するSTPの設定

スパニングツリー ステータスの表示

STPの設定

この章では、スイッチ上でSpanning Tree Protocol(STP;スパニングツリー プロトコル)を設定する方法について説明します。

Rapid Spanning Tree Protocol(RSTP)およびMultiple Spanning Tree Protocol(MSTP)については、 第12章「RSTPおよびMSTPの設定」 を参照してください。オプションのスパニングツリー機能については、 第13章「オプションのスパニングツリー機能の設定」 を参照してください。


) この章で使用されるコマンドの構文および使用方法の詳細については、このリリースに対応するコマンド リファレンスを参照してください。


この章で説明する内容は、次のとおりです。

「スパニングツリー機能の概要」

「スパニングツリー機能の設定」

「スパニングツリー ステータスの表示」

スパニングツリー機能の概要

ここでは、STP機能について説明します。

「STPの概要」

「サポートされるスパニングツリー インスタンス」

「BPDU」

「ルート スイッチの選定」

「ブリッジID、スイッチ プライオリティ、および拡張システムID」

「スパニングツリー タイマー」

「スパニングツリー トポロジーの作成」

「スパニングツリー インターフェイス ステート」

「スパニングツリーのアドレス管理」

「STPおよびIEEE 802.1Qトランク」

「スパニングツリーおよび冗長接続」

「接続能力を維持するためのエージング タイムの短縮」

STPの概要

STPは、ネットワーク上でループを防止しながら、パスの冗長性を実現するレイヤ2リンク管理プロトコルです。レイヤ2イーサネット ネットワークを正しく動作させるには、2つのステーション間に存在するアクティブ パスは1つでなければなりません。スパニングツリーの動作はトランスペアレントであり、エンド ステーション側で、単一LANセグメントに接続されているのか、複数セグメントからなるスイッチドLANに接続されているのかを検出することはできません。

フォールトトレラントなインターネットワークを構築するには、ネットワーク上の全ノード間にループのないパスを用意する必要があります。スパニングツリー アルゴリズムは、スイッチド レイヤ2ネットワーク全体で最適なループフリー パスを算出します。スイッチは、定期的にBridge Protocol Data Unit(BPDU;ブリッジ プロトコル データ ユニット)と呼ばれるスパニングツリー フレームを送受信します。スイッチはこのフレームを転送しませんが、このフレームを使用してループフリー パスを構築します。

エンド ステーション間に複数のアクティブ パスがあると、ネットワークにループが生じます。ネットワークにループが存在していると、エンド ステーションは重複するメッセージを受け取る可能性があります。スイッチもまた、複数のレイヤ2インターフェイスでエンド ステーションのMACアドレスを学習する可能性があります。このような条件が発生すると、不安定なネットワークになります。

スパニングツリーでは、ルートからネットワーク上の全スイッチに到達するループのないパスおよびルート スイッチからなるツリーを定義します。冗長データ パスはスパニングツリーによって、強制的にスタンバイ(ブロックされた)ステートにされます。スパニングツリーのネットワーク セグメントでエラーが発生したときに、冗長パスが存在していた場合は、スパニングツリー アルゴリズムがスパニングツリー トポロジーを再計算し、スタンバイ パスをアクティブにします。

スイッチの2つのインターフェイスがループの一部になっている場合、スパニングツリー ポート プライオリティとパス コストの設定値によって、どちらのインターフェイスがフォワーディング ステートになり、どちらがブロッキング ステートになるかが決まります。ポート プライオリティ値は、ネットワーク トポロジーにおけるインターフェイスの位置とともに、トラフィック転送におけるインターフェイスの位置がどれだけ最適であるかを表します。パス コストの値は、メディアの速度を表します。

サポートされるスパニングツリー インスタンス

スイッチは、Per-VLAN Spanning Tree(PVST)および最大64のスパニングツリー インスタンスをサポートします。スパニングツリーとVLAN Trunking Protocol(VTP;VLANトランキング プロトコル)の相互作用については、「STP設定時の注意事項」を参照してください。

BPDU

スイッチド ネットワーク内の安定したアクティブ スパニングツリー トポロジーは、次の要素によって決まります。

各スイッチのそれぞれのVLANに対応づけられた一意のブリッジID(スイッチ プライオリティおよびMACアドレス)

ルート スイッチに対するスパニングツリー パス コスト

各レイヤ2インターフェイスに対応づけられたポートID(ポート プライオリティおよびMACアドレス)

ネットワークにあるスイッチに電源が投入されると、それぞれがルート スイッチとして機能します。各スイッチは、そのすべてのポートからコンフィギュレーションBPDUを送信します。BPDUによって通信が行われ、スパニングツリー トポロジーが計算されます。各コンフィギュレーションBPDUには、次の情報が含まれます。

送信側スイッチがルート スイッチとみなしたスイッチの固有ブリッジID

ルートに対するスパニングツリー パス コスト

送信側スイッチのブリッジID

メッセージの有効期間

送信側インターフェイスID

Helloタイマー、転送遅延タイマー、および最大エージング プロトコル タイマーの値

スイッチは、 優良 情報(より小さいブリッジID、より低いパス コストなど)を格納したコンフィギュレーションBPDUを受信すると、そのポートのためにこの情報を保存します。スイッチは、このBPDUをルート ポートで受信した場合は、更新されたメッセージ付きで、自身が指定スイッチであるすべての接続LANに対してBPDUを転送します。

そのポートに対して現在保存されているものより 不良 の情報を格納したコンフィギュレーションBPDUを受信した場合は、BPDUは廃棄されます。スイッチが、不良BPDUの送信元のLANの指定スイッチである場合は、そのポート用に保存された最新情報を格納したBPDUをそのLANに送信します。このようにして不良情報は廃棄され、優良情報がネットワークで伝播されます。

BPDUの交換によって、次の処理が行われます。

1つのスイッチがルート スイッチとして選択されます。

各スイッチ(ルート スイッチを除く)に対して1つのルート ポートが選択されます。このポートは、スイッチによってパケットがルート スイッチに転送されるときに、最適なパス(最小コスト)を提供します。

スイッチごとに、パス コストに基づいてルート スイッチまでの最短距離が計算されます。

各LANセグメントの指定スイッチが選定されます。指定スイッチでは、LANからルート スイッチへのパケット転送の際、パス コストが最小となります。指定スイッチがLANに接続するポートのことを指定ポートと呼びます。

スパニングツリー インスタンスに含まれるインターフェイスが選択されます。ルート ポートおよび指定ポートはフォワーディング ステートになります。

スパニングツリーに含まれないインターフェイスはすべてブロックされます。

ルート スイッチの選定

レイヤ2ネットワーク上でスパニングツリーに関与する全スイッチは、BPDUデータ メッセージを交換することによって、ネットワーク上の他のスイッチに関する情報を収集します。このメッセージ交換により、次の処理が行われます。

スパニングツリーの各インスタンスに対応する固有のルート スイッチの選定

各スイッチドLANセグメントに指定したスイッチの選定

冗長リンクに接続されたレイヤ2インターフェイスをブロックすることで、スイッチド ネットワーク上に発生したループの排除

各VLANで、スイッチのプライオリティが最も高い(プライオリティ値が数値的に最も小さい)スイッチがルート スイッチとして選定されます。すべてのスイッチがデフォルトのプライオリティ(32768)で設定されている場合は、VLAN内で最小のMACアドレスを持つスイッチがルート スイッチになります。スイッチのプライオリティ値は、ブリッジIDの最上位ビットを占めます。

スイッチのプライオリティ値を変更すると、ルート スイッチとして選定される可能性も変更されることになります。大きい値を設定すると可能性が低下し、値が小さいと可能性が増大します。

ルート スイッチは、スイッチド ネットワークにおけるスパニングツリー トポロジーの論理上の中心です。スイッチド ネットワーク上のあらゆる地点からルート スイッチに到達する際に必要のないパスはすべて、スパニングツリー ブロッキング モードになります。

BPDUには、送信側スイッチおよびそのポートについて、スイッチおよびMACアドレス、スイッチ プライオリティ、ポート プライオリティ、パス コストなどの情報が含まれます。スパニングツリーはこの情報を使用して、スイッチド ネットワーク用のルート スイッチおよびルート ポートを選定し、さらに、各スイッチド セグメントのルート ポートおよび指定ポートを選定します。

ブリッジID、スイッチ プライオリティ、および拡張システムID

IEEE 802.1D規格では、各スイッチに一意のブリッジ識別子(ブリッジID)を設定する必要があります。このIDによってルート スイッチが選択されます。各VLANはPVST+によって異なる 論理ブリッジ と見なされるので、同一のスイッチには、スイッチに設定されたVLANと同じ数の異なるブリッジIDが設定されている必要があります。スイッチ上の各VLANでは一意の8バイト ブリッジIDが設定されています。上位の2バイトはスイッチ プライオリティに使用され、残りの6バイトがスイッチのMACアドレスから取得されます。

Release 12.1(9)EA1以降では、Catalyst 2950スイッチにより802.1tスパニングツリー拡張機能がサポートされ、これまではスイッチ プライオリティに使用されていたビットの一部が、現在はVLAN IDとして使用されています。その結果、スイッチに割り当てられるMACアドレスが少なくなり、より広い範囲のVLAN IDをサポートできるようになり、しかもブリッジIDの一意性を損なうこともありません。 表 11-1 に示すように、これまではスイッチ プライオリティに使用されていた2バイトが、4ビットのプライオリティ値と12ビットの拡張システムID値(VLAN IDと同じ)を表わすよう割り当てられています。以前のリリースでは、スイッチ プライオリティは16ビット値です。

 

表 11-1 スイッチ プライオリティ値と拡張システムID

スイッチ プライオリティ値
拡張システムID(VLAN IDと同じに設定)
ビット16
ビット15
ビット14
ビット13
ビット12
ビット11
ビット10
ビット9
ビット8
ビット7
ビット6
ビット5
ビット4
ビット3
ビット2
ビット1

32768

16384

8192

4096

2048

1024

512

256

128

64

32

16

8

4

2

1

スパニングツリーは、ブリッジIDがVLANごとに一意となるようにするために、拡張システムID、スイッチ プライオリティ、および割り当てられたスパニングツリーMACアドレスを使用しています。旧リリースのスパニングツリーでは、ブリッジIDがVLANごとに一意となるようにするために、VLANごとに1つのMACアドレスを使用していました。

拡張システムIDのサポートにより、ルート スイッチ、セカンダリ ルート スイッチ、およびVLANのスイッチ プライオリティを手動で設定する方法に影響が生じます。詳細については、「ルート スイッチの設定」「セカンダリ ルート スイッチの設定」、および「VLANのスイッチ プライオリティの設定」を参照してください。

スパニングツリー タイマー

表 11-2 で、スパニングツリーのパフォーマンス全体を左右するタイマーについて説明します。

 

表 11-2 スパニングツリー タイマー

変数
説明

Helloタイマー

スイッチから他のスイッチへHelloメッセージをブロードキャストする頻度を決定します。

転送遅延タイマー

インターフェイスが転送を開始するまでに、リスニング ステートおよびラーニング ステートが継続する時間を決定します。

最大エージング タイマー

インターフェイスが受信したプロトコル情報をスイッチが保存する時間を決定します。

スパニングツリー トポロジーの作成

図 11-1では、スイッチAがルート スイッチとして選定されます。すべてのスイッチのスイッチ プライオリティがデフォルト(32768)に設定されており、スイッチAのMACアドレスが最小であるからです。ただし、トラフィック パターン、転送インターフェイスの数、またはリンク タイプによっては、スイッチAが最適なルート スイッチとは限りません。ルート スイッチになるように、最適なスイッチのプライオリティを引き上げる(数値を引き下げる)と、スパニングツリーの再計算が強制的に行われ、最適なスイッチをルートとした新しいトポロジーが形成されます。

図 11-1 スパニングツリー トポロジー

 

スパニングツリー トポロジーがデフォルトのパラメータに基づいて算出された場合、スイッチド ネットワークの送信元エンド ステーションから宛先エンド ステーションまでのパスが最適にならない場合があります。たとえば、ルート ポートよりプライオリティの高いインターフェイスに高速リンクを接続すると、ルート ポートが変更される可能性があります。最高速のリンクをルート ポートにすることが理想です。

たとえば、スイッチBのあるポートがギガビット イーサネット リンクで、別のポート(10/100リンク)がルート ポートであると仮定します。ネットワーク トラフィックはギガビット イーサネット リンクに流す方が効率的です。ギガビット イーサネット インターフェイスのスパニングツリー ポート プライオリティをルート ポートより高くする(数値を小さくする)と、ギガビット イーサネット インターフェイスが新しいルート ポートになります。

スパニングツリー インターフェイス ステート

プロトコル情報がスイッチドLANを通過するときに、伝播遅延が生じる可能性があります。その結果、スイッチド ネットワークのさまざまな場所で、さまざまな時期に、トポロジーの変更が起こる可能性があります。インターフェイスがスパニングツリー トポロジーに含まれていない状態からフォワーディング ステートに直接移行すると、一時的にデータ ループが形成されることがあります。インターフェイスは新しいトポロジー情報がスイッチドLAN上で伝播されるまで待機し、フレーム転送を開始する必要があります。インターフェイスはさらに、古いトポロジーで使用されていた転送フレームのフレーム存続時間を満了させることも必要です。

スパニングツリーを使用しているスイッチの各レイヤ2インターフェイスは、次のいずれかのステートになります。

ブロッキング ― インターフェイスはフレーム転送に関与しません。

リスニング ― インターフェイスをフレーム転送に関与させることをスパニングツリーが決定した場合、ブロッキング ステートから最初に移行するステートです。

ラーニング ― インターフェイスはフレーム転送に関与する準備をしている状態です。

フォワーディング ― インターフェイスはフレームを転送します。

ディセーブル ― インターフェイスはスパニングツリーに含まれません。シャットダウン ポートであるか、ポート上にリンクがないか、またはポート上でスパニングツリー インスタンスが稼働していないためです。

インターフェイスは次のように、ステートを移行します。

初期化からブロッキング

ブロッキングからリスニングまたはディセーブル

リスニングからラーニングまたはディセーブル

ラーニングからフォワーディングまたはディセーブル

フォワーディングからディセーブル

図 11-2図 11-2に、インターフェイスがステートをどのように移行するかを示します。

図 11-2 スパニングツリー インターフェイス ステート

 

スイッチを起動すると、デフォルトでSTPがイネーブルになり、スイッチの各インターフェイス、VLAN、またはネットワークはブロッキング ステートを経てリスニングおよびラーニングという移行ステートを通過します。スパニングツリーは、フォワーディング ステートまたはブロッキング ステートで各インターフェイスを安定させます。

スパニングツリー アルゴリズムがレイヤ2インターフェイスをフォワーディング ステートにする場合、次のプロセスが発生します。

1. スパニングツリーがインターフェイスをブロッキング ステートに移行させるプロトコル情報を待つ間、インターフェイスはリスニング ステートになります。

2. スパニングツリーは転送遅延タイマーの満了を待ち、インターフェイスをラーニング ステートに移行させ、転送遅延タイマーをリセットします。

3. ラーニング ステートで、スイッチがデータベース転送のためにエンド ステーションの位置情報を学習している間、インターフェイスはフレーム転送を引き続きブロックします。

4. 転送遅延タイマーが満了すると、スパニングツリーはインターフェイスをフォワーディング ステートに移行させ、このときラーニングとフレーム転送の両方が可能になります。

ブロッキング ステート

ブロッキング ステートのレイヤ2インターフェイスはフレームの転送に関与しません。初期化後、スイッチの各インターフェイスにBPDUが送信されます。スイッチは最初、他のスイッチとBPDUを交換するまで、ルートとして動作します。このBPDU交換によって、ネットワーク上のどのスイッチがルート、すなわちルート スイッチであるかが確立されます。ネットワークにスイッチが1台しかない場合、交換は行われず、転送遅延タイマーが満了し、インターフェイスがリスニング ステートになります。インターフェイスはスイッチの初期化後、必ず、ブロッキング ステートになります。

ブロッキング ステートのインターフェイスは、次のように動作します。

ポートで受信したフレームを廃棄します。

転送用に他のインターフェイスからスイッチングされたフレームを廃棄します。

アドレスを学習しません。

BPDUを受信します。

リスニング ステート

リスニング ステートは、ブロッキング ステートを経て、レイヤ2インターフェイスが最初に移行するステートです。インターフェイスがリスニング ステートになるのは、スパニングツリーによってそのインターフェイスのフレーム転送への参加が決定された場合です。

リスニング ステートのインターフェイスは、次のように動作します。

ポートで受信したフレームを廃棄します。

転送用に他のインターフェイスからスイッチングされたフレームを廃棄します。

アドレスを学習しません。

BPDUを受信します。

ラーニング ステート

ラーニング ステートのレイヤ2インターフェイスはフレームの転送に関与できるように準備します。インターフェイスはリスニング ステートからラーニング ステートに移行します。

ラーニング ステートのインターフェイスは、次のように動作します。

ポートで受信したフレームを廃棄します。

転送用に他のインターフェイスからスイッチングされたフレームを廃棄します。

アドレスを学習します。

BPDUを受信します。

フォワーディング ステート

フォワーディング ステートのレイヤ2インターフェイスは、フレームを転送します。インターフェイスはラーニング ステートからフォワーディング ステートに移行します。

フォワーディング ステートのインターフェイスは、次のように動作します。

ポートでフレームを受信して転送します。

他のポートからスイッチングされたフレームを転送します。

アドレスを学習します。

BPDUを受信します。

ディセーブル ステート

ブロッキング ステートのレイヤ2インターフェイスはフレームの転送やスパニングツリーに関与しません。ディセーブル ステートのインターフェイスは動作不能です。

ディセーブル インターフェイスは次のように動作します。

ポートで受信したフレームを廃棄します。

転送用に他のインターフェイスからスイッチングされたフレームを廃棄します。

アドレスを学習しません。

BPDUを受信しません。

スパニングツリーのアドレス管理

IEEE 802.1Dでは、各種ブリッジ プロトコルに使用させるために、0x00180C2000000~0x0180C2000010の範囲で17のマルチキャスト アドレスが規定されています。これらのアドレスは削除できないスタティック アドレスです。

スパニングツリーのステートに関係なく、スイッチは0x0180C2000000~0x1080C200000Fのアドレス宛てのパケットを受信しますが、転送は行いません。

STPがイネーブルの場合、スイッチのCPUが0x0180C2000000および0x0180C2000010を宛先とするパケットを受信します。STPがディセーブルの場合、スイッチはこれらのパケットを未知のマルチキャスト アドレスとして転送します。

STPおよびIEEE 802.1Qトランク

VLANトランクに関するIEEE 802.1Q規格は、ネットワークのスパニングツリー ストラテジに一定の制限を設けています。この規格では、トランク上で使用できる すべて のVLANに対して、1つのスパニングツリー インスタンスしか認められません。ただし、802.1Qトランクによって接続されたシスコ スイッチ ネットワークでは、トランク上で使用できる VLANに1つずつ、スパニングツリー インスタンスを維持します。

802.1Qトランクを使用してシスコ製スイッチを他社の装置に接続する場合、シスコ製スイッチはPer-VLAN Spanning Tree Plus(PVST+)を使用してスパニングツリーのインターオペラビリティを実現します。PVST+は、トランクの802.1Q VLANのスパニングツリー インスタンスと他社の802.1Qスイッチのスパニングツリー インスタンスを結合します。

ただし、PVST+情報はすべて、他社製の802.1Qスイッチからなるクラウドにより切り離されたシスコ製スイッチによって維持されます。シスコ製スイッチを隔てる他社製の802.1Qクラウドは、スイッチ間の単一トランク リンクとして扱われます。

アクセス ポートおよびトランク ポートでの外部スパニングツリーの動作は、PVST+の影響を受けません。

802.1Qトランクの詳細については、 第14章「VLANの設定」 を参照してください。

スパニングツリーおよび冗長接続

2つのスイッチ インターフェイスを別の装置、または2つの異なる装置に接続することにより、スパニングツリーを使用して冗長バックボーンを作成できます。スパニングツリーは一方のインターフェイスを自動的にディセーブルにしますが、他方でエラーが発生した場合にはイネーブルになります。図 11-3を参照してください。一方のリンクが高速で、他方が低速の場合、必ず、低速の方のリンクがディセーブルになります。速度が同じ場合、ポート プライオリティとポートIDが加算され、値の小さいリンクがスパニングツリーによってディセーブルにされます。

図 11-3 スパニングツリーおよび冗長接続

 

EtherChannelグループを使用して、スイッチ間に冗長リンクを設定することもできます。詳細は、 第27章「EtherChannelの設定」 を参照してください。

接続能力を維持するためのエージング タイムの短縮

ダイナミック アドレスのエージング タイムはデフォルトで5分です。これは、 mac-address-table aging-time グローバル コンフィギュレーション コマンドのデフォルト値です。ただし、スパニングツリーの再構成により、多数のステーション ロケーションが変更されることがあります。このようなステーションは、再構成中、5分以上に渡って到達できないことがあるので、アドレス テーブルからステーション アドレスを削除し、改めて学習できるように、アドレス エージング タイムが短縮されます。スパニングツリー再構成時に短縮されるエージング タイムは、転送遅延パラメータ値( spanning-tree vlan vlan-id forward-time seconds グローバル コンフィギュレーション コマンド)と同じです。

各VLANはそれぞれ独立したスパニングツリー インスタンスなので、スイッチはVLAN単位でエージング タイムを短縮します。あるVLANでスパニングツリーの再構成が行われると、そのVLANで学習されたダイナミック アドレスがエージング タイム短縮の対象になることがあります。他のVLANのダイナミック アドレスは影響を受けず、スイッチで設定されたエージング タイムがそのまま適用されます。

スパニングツリー機能の設定

ここでは、STP機能の設定方法について説明します。

「STPのデフォルト設定」

「STP設定時の注意事項」

「STPのディセーブル化」

「ルート スイッチの設定」

「セカンダリ ルート スイッチの設定」

「ポート プライオリティの設定」

「パス コストの設定」

「VLANのスイッチ プライオリティの設定」

「Helloタイムの設定」

「VLANの転送遅延時間の設定」

「VLANの最大エージング タイムの設定」

「カスケード スタックで使用するSTPの設定」

STPのデフォルト設定

表 11-3 に、STPのデフォルト設定を示します。

 

表 11-3 STPのデフォルト設定

機能
デフォルト値

イネーブル ステート

VLAN 1上でイネーブル

最大64のスパニングツリー インスタンスをイネーブルに設定可能

スイッチ プライオリティ

32768

スパニングツリー ポート プライオリティ(インターフェイス単位で設定可能。レイヤ2アクセス ポートとして設定されたインターフェイス上で使用)

128

スパニングツリー ポート コスト(インターフェイス単位で設定可能。レイヤ2アクセス ポートとして設定されたインターフェイス上で使用)

1000 Mbps: 4

100 Mbps: 19

10 Mbps: 100

スパニングツリーVLANポート プライオリティ(VLAN単位で設定可能。レイヤ2トランク ポートとして設定されたインターフェイス上で使用)

128

スパニングツリーVLANポート コスト(VLAN単位で設定可能。レイヤ2トランク ポートとして設定されたインターフェイス上で使用)

1000 Mbps: 4

100 Mbps: 19

10 Mbps: 100

Helloタイム

2秒

転送遅延時間

15秒

最大エージング タイム

20秒

STP設定時の注意事項

スパニングツリー インスタンスより多くのVLANがVTPで定義されている場合、STPをイネーブルにできるのは64のVLAN上に限定されます。VLAN数が64を超える場合は、MSTPをイネーブルにして、1つのスパニング ツリー インスタンスに複数のVLANをマップすることを推奨します。詳細については、 第12章「RSTPおよびMSTPの設定」 を参照してください。

64のスパニングツリー インスタンスがすでに使用中の場合、VLANの1つでSTPをディセーブルにすると、STPを稼働させたい別のVLANでイネーブルにすることができます。 no spanning-tree vlan vlan-id グローバル コンフィギレーション コマンドを使用して、特定のVLANでSTPをディセーブルにし、 spanning-tree vlan vlan-id グローバル コンフィギレーション コマンドを使用して、所定のVLANでSTPをイネーブルにします。


注意 スパニングツリーが稼働していないスイッチは、スパニングツリー インスタンスが稼働しているVLAN上の他のスイッチがループを切断することができるよう、受信したBPDUを引き続き転送します。したがって、スパニング ツリーは、ネットワーク上のすべてのループを切断できるよう充分な数のスイッチ上で稼働している必要があります。たとえば、VLANの各ループで少なくとも1台のスイッチがスパニング ツリーを稼働している必要があります。必ずしもVLANのすべてのスイッチでスパニングツリーを稼働させる必要はありません。しかし、必要最低限の数のスイッチでしかスパニングツリーが稼働していない場合、不注意にネットワークを変更すると、VLANで別のループが発生し、ブロードキャスト ストームを引き起こす可能性があります。


) スイッチ上の使用可能なスパニングツリー インスタンスをすべて使い切ってしまったあとに、VTPドメイン内にさらに別のVLANを追加すると、そのスイッチ上にスパニングツリーが稼働しないVLANが生成されます。そのスイッチのトランク ポート上でデフォルトの許可リストが設定されていると、すべてのトランク ポート上に新しいVLANが割り当てられます。ネットワーク トポロジーによっては、新しいVLAN上で、切断されないループが生成されることがあります。特に、複数の隣接スイッチでスパニングツリー インスタンスをすべて使用してしまっている場合には注意が必要です。スパニングツリー インスタンスの割り当てを使い果たしたスイッチのトランク ポートに許可リストを設定することにより、このような可能性を防ぐことができます。しかし、ネットワークにVLANを追加するときより多くの作業を伴うことになるので、通常、許可リストの設定は必要ありません。


VLANスパニングツリー インスタンスの設定はスパニングツリー コマンドによって決定されます。スパニングツリー インスタンスは、VLANにインターフェイスを割り当てるときに作成します。スパニングツリー インスタンスは最後のインターフェイスが別のVLANに移されたときに削除されます。スパニングツリー インスタンスの作成前に、スイッチとポートのパラメータを設定できます。設定されたパラメータは、スパニングツリー インスタンスを作成するときに適用されます。

STPのディセーブル化

STPはデフォルトで、VLAN 1および 表 11-3 のスパニングツリー限度を上限として新しく作成されたすべてのVLAN上でイネーブルです。STPをディセーブルにするのは、ネットワーク トポロジーにループがないことが確実な場合だけにしてください。


注意 STPがディセーブルでありながら、トポロジーにループが存在していると、余分なトラフィックが発生し、パケットの複製が無限に繰り返されることによって、ネットワークのパフォーマンスが大幅に低下します。

VLAN単位でSTPをディセーブルにするには、イネーブルEXECモードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

no spanning-tree vlan vlan-id

VLAN単位でSTPをディセーブルにします。

vlan-id の範囲は、EI(拡張ソフトウェア イメージ)がインストールされている場合は1~4094、SI(標準ソフトウェア イメージ)がインストールされている場合は1~1005です。先行ゼロは入力しないでください。

ステップ 3

end

イネーブルEXECモードに戻ります。

ステップ 4

show spanning-tree vlan vlan-id

設定を確認します。

ステップ 5

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

STPを再びイネーブルにする場合は、 spanning-tree vlan vlan-id グローバル コンフィギュレーション コマンドを使用します。

ルート スイッチの設定

スイッチは、スイッチ上で設定されているアクティブVLANごとに1つずつ、個別のスパニングツリー インスタンスを維持します。各インスタンスには、スイッチ プライオリティとスイッチのMACアドレスからなるブリッジIDが対応づけられます。VLANごとに、ブリッジIDが最小のスイッチがそのVLANのルート スイッチになります。

特定のVLANでスイッチがルートになるように設定するには、 spanning-tree vlan vlan-id root グローバル コンフィギュレーション コマンドを使用して、スイッチ プライオリティをデフォルト値(32768)からかなり小さい値に変更します。このコマンドを入力すると、スイッチにより各VLANについてルート スイッチのスイッチ プライオリティがチェックされます。拡張システムIDのサポートのため、スイッチは指定されたVLANについて、自身のプライオリティを24576に設定します。これは、この値によってこのスイッチが指定されたVLANのルートになる場合です。

指定されたVLANのルート スイッチに24576に満たないスイッチ プライオリティが設定されている場合、スイッチはそのVLANについて、自身のプライオリティを最小のスイッチ プライオリティより4096だけ小さい値に設定します(スイッチ プライオリティ値と拡張システムIDに示すように、4096は4ビットのスイッチ プライオリティ値の最下位ビットの値です)。


) ルート スイッチとして設定する必要のある値が1未満の場合、spanning-tree vlan vlan-id rootグローバル コンフィギュレーション コマンドは失敗します。


Release 12.1(9)EA1より前のリリースでは、Catalyst 2950スイッチ(拡張システムIDなし)上で spanning-tree vlan vlan-id root グローバル コンフィギュレーション コマンドを入力すると、指定されたVLANについて自身のスイッチ プライオリティが8192に設定されていました。これは、この値によってこのスイッチが指定されたVLANのルートになる場合です。指定されたVLANのルート スイッチに8192に満たないスイッチ プライオリティが設定されている場合、スイッチはそのVLANについて、自身のプライオリティを最小のスイッチ プライオリティより1だけ小さい値に設定します。

次の例は、拡張システムIDのサポートがある場合とない場合の spanning-tree vlan vlan-id root コマンドの効果を示します。

拡張システムIDのあるCatalyst 2950スイッチ(Release 12.1(9)EA1以降)では、VLAN 20の全ネットワーク装置にデフォルト プライオリティである32768が設定されている場合、スイッチ上で spanning-tree vlan 20 root primary コマンドを入力すると、スイッチ プライオリティが24576に設定され、このスイッチがVLAN 20のルート スイッチになります。

拡張システムIDのないCatalyst 2950スイッチ(Release 12.1(9)EA1より前)では、VLAN 100の全ネットワーク装置にデフォルト プライオリティである32768が設定されている場合、スイッチ上で spanning-tree vlan 100 root primary コマンドを入力すると、VLAN 100に対するスイッチ プライオリティが8192に設定され、このスイッチがVLAN 100のルート スイッチになります。


) ネットワーク上に拡張システムIDをサポートするスイッチとサポートしないスイッチが混在する場合は、拡張システムIDをサポートするスイッチがルート スイッチになることはほぼありません。拡張システムIDによって、旧ソフトウェアが稼働する接続スイッチのプライオリティよりVLAN番号が大きくなるたびに、スイッチ プライオリティ値が増大します。



) 各スパニングツリー インスタンスのルート スイッチは、バックボーン スイッチまたはディストリビューション スイッチにする必要があります。アクセス スイッチをスパニングツリーのプライマリ ルートとして設定してはなりません。


diameter キーワードを使用して、レイヤ2ネットワークの直径(すなわち、レイヤ2ネットワーク上の任意の2つのエンド ステーション間の最大スイッチ ホップ数)を指定します。ネットワークの直径を指定すると、その直径のネットワークに最適なHelloタイム、転送遅延時間、および最大エージング タイムをスイッチが自動的に設定するので、収束時間を大幅に短縮できます。自動的に算出されたHelloタイムを変更する場合は、 Hello キーワードを使用します。


) ルート スイッチとして設定したあとで、spanning-tree vlan vlan-id hello-timespanning-tree vlan vlan-id forward-time、およびspanning-tree vlan vlan-id max-ageグローバル コンフィギュレーション コマンドを使用して、Helloタイム、転送遅延時間、および最大エージング タイムを手動で設定することは推奨できません。


スイッチが特定のVLANのルートになるように設定するには、イネーブルEXECモードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

spanning-tree vlan vlan-id root primary [ diameter net-diameter [ hello-time seconds ]]

指定されたVLANのルートになるように、スイッチを設定します。

vlan-id の範囲は、EIがインストールされている場合は1~4094、SIがインストールされている場合は1~1005です。先行ゼロは入力しないでください。

(任意) diameter net-diameter には、任意の2つのエンド ステーション間の最大スイッチ数を指定します。指定できる範囲は2~7です。

(任意) hello-time seconds には、ルート スイッチによってコンフィギュレーション メッセージが生成される間隔を秒数で指定します。指定できる範囲は1~10秒です。デフォルトは2秒です。

ステップ 3

end

イネーブルEXECモードに戻ります。

ステップ 4

show spanning-tree detail

設定を確認します。

ステップ 5

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

デフォルトの設定値に戻す場合は、 no spanning-tree vlan vlan-id root グローバル コンフィギュレーション コマンドを使用します。

セカンダリ ルート スイッチの設定

拡張システムIDをサポートするCatalyst 2950スイッチをセカンダリ ルートとして設定すると、スイッチ プライオリティがデフォルト値(32768)から28672に変更されます。したがって、プライマリ ルート スイッチで障害が発生した場合に、このスイッチが指定されたVLANのルート スイッチになる可能性は小さいです。これは、他のネットワーク スイッチがデフォルトのスイッチ プライオリティ32768を使用し、ルート スイッチになる可能性が低いことが前提です。拡張システムIDサポートのないCatalyst 2950スイッチ(Release 12.1(9)EA1より前のソフトウェア)では、スイッチ プライオリティは16384に変更されます。

複数のスイッチでこのコマンドを実行すると、複数のバックアップ ルート スイッチを設定できます。 spanning-tree vlan vlan-id root primary グローバル コンフィギュレーション コマンドでプライマリ ルート スイッチを設定したときと同じネットワーク直径およびHelloタイム値を使用してください。

スイッチが特定のVLANのセカンダリ ルートになるように設定するには、イネーブルEXECモードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

spanning-tree vlan vlan-id root secondary [ diameter net-diameter [ hello-time seconds ]]

指定されたVLANのセカンダリ ルートになるように、スイッチを設定します。

vlan-id の範囲は、EIがインストールされている場合は1~4094、SIがインストールされている場合は1~1005です。先行ゼロは入力しないでください。

(任意) diameter net-diameter には、任意の2つのエンド ステーション間の最大スイッチ数を指定します。指定できる範囲は2~7です。

(任意) hello-time seconds には、ルート スイッチによってコンフィギュレーション メッセージが生成される間隔を秒数で指定します。指定できる範囲は1~10秒です。デフォルトは2秒です。

プライマリ ルート スイッチを設定したときと同じネットワーク直径およびHelloタイム値を使用してください。「ルート スイッチの設定」を参照してください。

ステップ 3

end

イネーブルEXECモードに戻ります。

ステップ 4

show spanning-tree detail

設定を確認します。

ステップ 5

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

デフォルトの設定値に戻す場合は、 no spanning-tree vlan vlan-id root グローバル コンフィギュレーション コマンドを使用します。

ポート プライオリティの設定

ループが発生した場合、スパニングツリーはポート プライオリティを使用して、フォワーディング ステートにするインターフェイスを選択します。最初に選択させたいインターフェイスには高いプライオリティ(小さい数値)を与え、最後に選択させたいインターフェイスには低いプライオリティ(大きい数値)を与えます。すべてのインターフェイスに同じプライオリティ値が与えられている場合、スパニングツリーはインターフェイス番号が最小のインターフェイスをフォワーディング ステートにし、他のインターフェイスをブロックします。

Cisco IOSでは、インターフェイスがアクセス ポートとして設定されている場合はポート プライオリティ値を使用し、トランク ポートとして設定されている場合はVLAN ポート プライオリティ値を使用します。

インターフェイスのポート プライオリティを設定するには、イネーブルEXECモードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

interface interface-id

インターフェイス コンフィギュレーション モードを開始し、設定するインターフェイスを指定します。

有効なインターフェイスは、物理インターフェイスおよびポート チャネル論理インターフェイス( port-channel
port-channel-number
)です。

ステップ 3

spanning-tree port-priority priority

アクセス ポートであるインターフェイスについてVLANポート プライオリティを設定します。

priority の指定できる範囲は0~255です。デフォルト値は128です。数字が小さいほど、プライオリティが高くなります。

ステップ 4

spanning-tree vlan vlan-id port-priority priority

トランク ポートであるインターフェイスについてVLANポート プライオリティを設定します。

vlan-id の範囲は、EIがインストールされている場合は1~4094、SIがインストールされている場合は1~1005です。先行ゼロは入力しないでください。

priority の指定できる範囲は0~255です。デフォルト値は128です。数字が小さいほど、プライオリティが高くなります。

ステップ 5

end

イネーブルEXECモードに戻ります。

ステップ 6

show spanning-tree interface interface-id

または

show spanning-tree vlan vlan-id

設定を確認します。

ステップ 7

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。


show spanning-tree interface interface-id イネーブルEXECコマンドによって表示されるのは、リンク アップ動作可能状態のポートの情報だけです。そうでない場合は、show running-config interfaceイネーブルEXECコマンドを使用して設定を確認してください。


インターフェイスをデフォルトの設定値に戻す場合は、 no spanning-tree [ vlan vlan-id ] port-priority インターフェイス コンフィギュレーション コマンドを使用します。スパニングツリー ポート プライオリティを使用してトランク ポートに負荷分散を設定する手順については、「STPによる負荷分散」を参照してください。

パス コストの設定

スパニングツリー パス コストのデフォルト値は、インターフェイスのメディア速度に基づきます。ループが発生した場合、スパニングツリーはコストを使用して、フォワーディング ステートにするインターフェイスを選択します。最初に選択させたいインターフェイスには小さいコスト値を与え、最後に選択させたいインターフェイスには大きいコスト値を与えます。すべてのインターフェイスに同じコスト値が与えられている場合、スパニングツリーはインターフェイス番号が最小のインターフェイスをフォワーディング ステートにし、他のインターフェイスをブロックします。

スパニングツリーは、インターフェイスがアクセス ポートとして設定されている場合はコスト値を使用し、トランク ポートとして設定されている場合はVLAN ポート コスト値を使用します。

インターフェイスのコストを設定するには、イネーブルEXECモードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

interface interface-id

インターフェイス コンフィギュレーション モードを開始し、設定するインターフェイスを指定します。有効なインターフェイスは、物理インターフェイスおよびポート チャネル論理インターフェイス( port-channel port-channel-number )です。

ステップ 3

spanning-tree cost cost

アクセス ポートであるインターフェイスについてコストを設定します。

ループが発生した場合、スパニングツリーはパス コストを使用して、フォワーディング ステートにするインターフェイスを選択します。パス コストが小さいほど、高速で伝送されます。

cost の指定できる範囲は1~200000000です。デフォルト値はインターフェイスのメディア速度に基づきます。

ステップ 4

spanning-tree vlan vlan-id cost cost

トランク ポートであるインターフェイスについてVLANコストを設定します。

ループが発生した場合、スパニングツリーはパス コストを使用して、フォワーディング ステートにするインターフェイスを選択します。パス コストが小さいほど、高速で伝送されます。

vlan-id の範囲は、EIがインストールされている場合は1~4094、SIがインストールされている場合は1~1005です。先行ゼロは入力しないでください。

cost の指定できる範囲は1~200000000です。デフォルト値はインターフェイスのメディア速度に基づきます。

ステップ 5

end

イネーブルEXECモードに戻ります。

ステップ 6

show spanning-tree interface interface-id

または

show spanning-tree vlan vlan-id

設定を確認します。

ステップ 7

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。


show spanning-tree interface interface-idイネーブルEXECコマンドによって表示されるのは、リンク アップ動作可能状態のポートの情報だけです。そうでない場合は、show running-configイネーブルEXECコマンドを使用して設定を確認ください。


インターフェイスをデフォルトの設定値に戻す場合は、 no spanning-tree [ vlan vlan-id ] cost インターフェイス コンフィギュレーション コマンドを使用します。スパニングツリー パス コストを使用してトランク ポートに負荷分散を設定する手順については、「STPによる負荷分散」を参照してください。

VLANのスイッチ プライオリティの設定

スイッチ プライオリティを設定することによって、スイッチがルート スイッチとして選択される可能性を高めることができます。


) このコマンドは、十分に注意して使用してください。スイッチ プライオリティの変更には、通常、spanning-tree vlan vlan-id root primaryおよびspanning-tree vlan vlan-id root secondaryグローバル コンフィギュレーション コマンドを使用してください。


VLANのスイッチ プライオリティを設定するには、イネーブルEXECモードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

spanning-tree vlan vlan-id priority priority

VLANのスイッチ プライオリティを設定します。

vlan-id の範囲は、EIがインストールされている場合は1~4094、SIがインストールされている場合は1~1005です。先行ゼロは入力しないでください。

priority を指定する場合、指定できる範囲は0~61440で、4096ずつ増加します。デフォルトは32768です。数値が小さいほど、スイッチがルート スイッチとして選択される可能性が高くなります。

有効なプライオリティ値は、4096、8192、12288、16384、20480、24576、28672、32768、36864、40960、45056、49152、53248、57344、61440です。それ以外の値はすべて拒否されます。

ステップ 3

end

イネーブルEXECモードに戻ります。

ステップ 4

show spanning-tree vlan vlan-id

設定を確認します。

ステップ 5

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

デフォルトの設定値に戻す場合は、 no spanning-tree vlan vlan-id priority グローバル コンフィギュレーション コマンドを使用します。

Helloタイムの設定

Helloタイムを変更することによって、ルート スイッチによってコンフィギュレーション メッセージが生成される間隔を設定できます。


) このコマンドは、十分に注意して使用してください。Helloタイムの変更には、通常、spanning-tree vlan vlan-id root primaryおよびspanning-tree vlan vlan-id root secondaryグローバル コンフィギュレーション コマンドを使用してください。


VLANのHelloタイムを設定するには、イネーブルEXECモードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

spanning-tree vlan vlan-id hello-time seconds

VLANのHelloタイムを設定します。Helloタイムはルート スイッチがコンフィギュレーション メッセージを生成する間隔です。これらのメッセージは、スイッチがアクティブであることを意味します。

vlan-id の範囲は、EIがインストールされている場合は1~4094、SIがインストールされている場合は1~1005です。先行ゼロは入力しないでください。

seconds に指定できる範囲は1~10です。デフォルト値は2です。

ステップ 3

end

イネーブルEXECモードに戻ります。

ステップ 4

show spanning-tree vlan vlan-id

設定を確認します。

ステップ 5

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

デフォルトの設定値に戻す場合は、 no spanning-tree vlan vlan-id hello-time グローバル コンフィギュレーション コマンドを使用します。

VLANの転送遅延時間の設定

VLANの転送遅延時間を設定するには、イネーブルEXECモードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

spanning-tree vlan vlan-id forward-time seconds

VLANの転送時間を設定します。転送遅延時間は、スパニング ツリー ラーニング ステートおよびリスニング ステートからフォワーディング ステートに移行するまでに、ポートが待機する秒数です。

vlan-id の範囲は、EIがインストールされている場合は1~4094、SIがインストールされている場合は1~1005です。先行ゼロは入力しないでください。

seconds に指定できる範囲は4~30です。デフォルト値は15です。

ステップ 3

end

イネーブルEXECモードに戻ります。

ステップ 4

show spanning-tree vlan vlan-id

設定を確認します。

ステップ 5

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

デフォルトの設定値に戻す場合は、 no spanning-tree vlan vlan-id forward-time グローバル コンフィギュレーション コマンドを使用します。

VLANの最大エージング タイムの設定

VLANの最大エージング タイムを設定するには、イネーブルEXECモードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

spanning-tree vlan vlan-id max-age seconds

VLANの最大エージング タイムを設定します。最大エージング タイムは、再構成を試行するまでにスイッチがスパニングツリー コンフィギュレーション メッセージを受信せずに待機する秒数です。

vlan-id の範囲は、EIがインストールされている場合は1~4094、SIがインストールされている場合は1~1005です。先行ゼロは入力しないでください。

seconds に指定できる範囲は6~40です。デフォルト値は20です。

ステップ 3

end

イネーブルEXECモードに戻ります。

ステップ 4

show spanning-tree vlan vlan-id

設定を確認します。

ステップ 5

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

デフォルトの設定値に戻す場合は、 no spanning-tree vlan vlan-id max-age グローバル コンフィギュレーション コマンドを使用します。

カスケード スタックで使用するSTPの設定

スイッチをカスケード構成にしている場合、STPは引き下げ可能なデフォルト値を使用します。ルート スイッチがクラスタに含まれており、カスケード スタック内の1台のスイッチである場合、スイッチ障害発生後の再収束時間が短縮されるように、スパニングツリーをカスタマイズできます。図 11-4に、GigaStack GBICを使用する3種類のカスケード スタックにおけるスイッチを示します。さらに 表 11-4 に、STPのデフォルト値と、3種類の構成で使用できる設定値を示します。

 

表 11-4 STPパラメータのデフォルトおよび使用できる設定値(秒)

STPパラメータ
STPのデフォルト
オプション1で使用できる値
オプション2で使用できる値
オプション3で使用できる値

Helloタイム

2

1

1

1

最大エージング タイム

20

6

10

6

転送遅延時間

15

4

7

4

図 11-4 ギガビット イーサネット スタック

 

スパニングツリー ステータスの表示

スパニングツリー ステータスを表示するには、 表 11-5 のイネーブルEXECコマンドを1つまたは複数使用します。

 

表 11-5 スパニングツリー ステータス表示用のコマンド

コマンド
目的

show spanning-tree active

アクティブ インターフェイスに関するスパニングツリー情報だけを表示します。

show spanning-tree detail

インターフェイス情報の詳細サマリーを表示します。

show spanning-tree interface interface-id

特定のインターフェイスのスパニングツリー情報を表示します。

show spanning-tree summary [ totals ]

ポート ステータスのサマリーを表示します。またはSTPステート セクションのすべての行を表示します。

show spanning-tree イネーブルEXECコマンドの他のキーワードについては、このリリースに対応するコマンド リファレンスを参照してください。