Catalyst 4000 ファミリー スイッチ Cisco IOS ソフトウェア コンフィギュレーション ガイド,Cisco IOS Release 12.1(13)EW
STPの概要と設定
STPの概要と設定
発行日;2012/02/04 | ドキュメントご利用ガイド | ダウンロード ; この章pdf | フィードバック

目次

STPの概要と設定

STPの概要

ブリッジIDの概要

ブリッジ プライオリティ値

拡張システムID

STP MACアドレスの割り当て

ブリッジ プロトコル データ ユニット

ルート ブリッジの選定

STPタイマー

STPトポロジーの作成

STPポート ステート

MACアドレスの割り当て

STPトランクとIEEE 802.1qトランク

STPのデフォルト設定

STPの設定

STPのイネーブル化

拡張システムIDのイネーブル化

ルート ブリッジの設定

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

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

STPポート コストの設定

VLANのブリッジ プライオリティの設定

helloタイムの設定

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

VLANの転送遅延時間の設定

スパニングツリー プロトコルのディセーブル化

STPの概要と設定

この章では、Catalyst 4000ファミリー スイッチにSpanning Tree Protocol(STP;スパニングツリー プロトコル)を設定する方法について説明します。設定上の注意事項、設定手順、および設定例も示します。

この章の主な内容は、次のとおりです。

「STPの概要」

「STPのデフォルト設定」

「STPの設定」


) PortFast、UplinkFast、およびBackboneFastとその他のスパニングツリー拡張機能の設定手順については、「STP機能の設定」を参照してください。



) この章で使用しているスイッチ コマンドの構文および使用方法の詳細については、『Cisco IOS Command Reference for the Catalyst 4000 Family Switch』および次のURLにある関連マニュアルを参照してください。
http://www.cisco.com/univercd/cc/td/doc/product/software/ios121/121cgcr/index.htm


STPの概要

STPは、ネットワーク上でパスの冗長性を確保し、不要なループの発生を防ぐ、レイヤ2リンク管理プロトコルです。レイヤ2イーサネット ネットワークの正常な動作を実現するには、どの2つのステーション間でもアクティブ パスを1つにする必要があります。ネットワーク トポロジーのループフリーのサブセットは、スパニングツリーと呼ばれます。スパニングツリーの動作はエンド ステーションに対してトランスペアレントなので、エンド ステーションが特定のLANセグメントに接続されているのか、それとも複数セグメントからなるスイッチドLANに接続されているのかを突き止めることはできません。

Catalyst 4000ファミリー スイッチは、すべてのVLAN(仮想LAN)でSTP(IEEE 802.1dブリッジ プロトコル)を使用します。デフォルトでは、(スパニングツリーを手動でディセーブルにしない限り)設定されているVLANごとに1つのスパニングツリーが動作します。スパニングツリーは、VLAN単位でイネーブルまたはディセーブルにできます。

フォールトトレラントなインターネットワークを作成する場合、ネットワーク上のすべてのノード間にループフリー パスを形成する必要があります。スパニングツリー アルゴリズムは、スイッチド レイヤ2ネットワーク上で最良のループフリー パスを算出します。スイッチは定期的にスパニングツリー フレームを送受信します。スイッチはこれらのフレームを転送せずに、フレームを使用してループフリー パスを構築します。

エンド ステーション間に複数のアクティブ パスがあると、ネットワーク内でループが発生する原因になります。ネットワークにループが存在すると、エンド ステーションが重複したメッセージを受信する可能性があります。また、スイッチが複数のレイヤ2インターフェイス上のエンド ステーションMAC(メディア アクセス制御)アドレスを学習する可能性があります。このような状況により、ネットワークが不安定になります。

スパニングツリーは、ルート スイッチおよびそのルートからレイヤ2ネットワーク上のすべてのスイッチへのループフリー パスを備えたツリーを定義します。スパニングツリーは、冗長データ パスを強制的にスタンバイ(ブロック)ステートにします。スパニングツリーのネットワーク セグメントの1つで障害が発生し、かつ冗長パスが存在する場合、スパニングツリー アルゴリズムはスパニングツリー トポロジーを再計算し、スタンバイ パスをアクティブにします。

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

ブリッジIDの概要

各ネットワーク デバイス上の各VLANには、一意の64ビット ブリッジIDが設定されています。ブリッジIDはブリッジ プライオリティ値、拡張システムID、およびSTP MACアドレス割り当てで構成されています。

ブリッジ プライオリティ値

ブリッジ プライオリティ値は、特定の冗長リンクがプライオリティを指定され、スパニングツリーの特定のスパンに含まれるとみなされるかどうかを決定します。値が低いほど優先されるので、手動で優先度を設定する場合は、リンクに割り当てるブリッジ プライオリティの値を冗長リンクの場合よりも低くします。12.1(12c)EWより前のリリースでは、ブリッジ プライオリティは16ビット値です( 表 12-1 を参照)。12.1(12c)EW以降のリリースでは、ブリッジ プライオリティは拡張システムIDがイネーブルの場合は4ビット値です( 表 12-2 を参照)。「VLANのブリッジ プライオリティの設定」を参照してください。

拡張システムID

拡張システムIDは、1025~4096のVLAN IDです。Release 12.1(12c)EW以降のリリースでは、ブリッジIDの一部として12ビット拡張システムIDフィールドをサポートしています( 表 12-2 を参照)。MACアドレスを64個だけサポートするシャーシは、常に12ビットの拡張システムIDを使用します。1024個のMACアドレスをサポートするシャーシでは、拡張システムIDの使用をイネーブルにできます。STPは拡張システムIDとしてVLAN IDを使用します。「拡張システムIDのイネーブル化」を参照してください。

 

表 12-1 拡張システム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

 

表 12-2 拡張システムIDがイネーブルの場合のブリッジ プライオリティ値および拡張システムID

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

32768

16384

8192

4096

VLAN ID

STP MACアドレスの割り当て

Catalyst 4000ファミリー スイッチのシャーシには、64個または1024個のMACアドレスがあり、STPのようなソフトウェア機能をサポートするために使用できます。シャーシのMACアドレスの範囲を表示するには、 show module コマンドを入力します。

12.1(12c)EW以降のリリースでは、64個または1024個のMACアドレスを持つシャーシをサポートします。64個のMACアドレスを持つシャーシの場合、STPは拡張システムIDとMACアドレスを使用して、VLANごとに一意のブリッジIDを作成します。

12.1(12c)EWより前のリリースでは、1024個のMACアドレスを持つシャーシをサポートします。これらのリリースでは、STPはVLANごとに1つのMACアドレスを使用して、VLANごとに一意のブリッジIDを作成します。

ブリッジ プロトコル データ ユニット

スイッチド ネットワークで常にアクティブなスパニングツリー トポロジーを決定するのは、次の要素です。

各スイッチのVLANごとに関連づけられた一意のブリッジID(ブリッジ プライオリティとMACアドレス)

ルート ブリッジまでのスパニングツリー パス コスト(またはブリッジ プライオリティ値)

各レイヤ2インターフェイスに関連づけられたポートID(ポート プライオリティとMACアドレス)

Bridge Protocol Data Units(BPDU;ブリッジ プロトコル データ ユニット)には、送信側ブリッジとそのポートについて、ブリッジおよびMACアドレス、ブリッジ プライオリティ、ポート プライオリティ、パス コストなどの情報が含まれます。システムは接続するスイッチ間でBPDUを伝送して、ルート スイッチから一方向のスパニングツリー トポロジーを計算します。各設定BPDUは、最低限次の項目から構成されます。

送信側のスイッチがルート スイッチとみなしているスイッチの一意のブリッジID

ルートまでのスパニングツリー パス コスト

送信側ブリッジのID

メッセージの年齢

送信側ポートの識別子

helloタイマー、転送遅延タイマー、およびmax-ageプロトコル タイマーの値

スイッチがBPDUフレームを送信すると、そのフレームが伝送されるLANに接続されたすべてのスイッチがBPDUを受信します。スイッチがBPDUを受信すると、スイッチはそのフレームを転送するのではなく、フレームに含まれる情報を使用してBPDUを計算し、トポロジーに変更があれば、BPDUの送信を開始します。

BPDU交換によって次の動作が行われます。

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

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

LANセグメントごとに指定ブリッジが選択されます。これはルート ブリッジに最も近いスイッチで、このスイッチを経由してルートにフレームが転送されます。

ルート ポートが選択されます。これはブリッジからルート ブリッジまでの最適パスを提供するポートです。

スパニングツリーに含まれるポートが選択されます。

ルート ブリッジの選定

VLANごとに、最高のブリッジ プライオリティ(最小のプライオリティ値)を持つスイッチがルート ブリッジとして選定されます。すべてのスイッチがデフォルト プライオリティ値(32,768)に設定されている場合は、VLAN内で最小のMACアドレスを持つスイッチがルート ブリッジになります。

スパニングツリー ルート ブリッジは、スイッチド ネットワークで論理的にスパニングツリー トポロジーの中心に位置します。スイッチド ネットワーク内のどの場所からのパスも、ルート ブリッジに到達するために必要とされない場合は、すべてスパニングツリー ブロッキング モードになります。

スパニングツリーはBPDUから提供される情報を使用して、スイッチド ネットワークのルート ブリッジとルート ポート、および各スイッチド セグメントのルート ポートと指定されたポートを選定します。

STPタイマー

表 12-3 で、スパニングツリー全体のパフォーマンスに影響するSTPタイマーについて説明します。

 

表 12-3 スパニングツリー プロトコル タイマー

変数
説明

hello_time

スイッチが他のスイッチにhelloメッセージをブロードキャストする間隔を指定します。

forward_time

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

max_age

ポートで受信したプロトコル情報がスイッチに保管される時間を決定します。

STPトポロジーの作成

スパニングツリー アルゴリズムの目標は、最もダイレクトなリンクをルート ポートにすることです。スパニングツリー トポロジーがデフォルトのパラメータに基づいて計算されている場合、リンク速度により、スイッチド ネットワーク上の送信元から宛先エンド ステーションまでのパスが最適にならない可能性があります。たとえば、現在のルート ポートよりも数値の大きいポートに高速リンクを接続すると、ルート ポートの変更が必要になる場合があります。

図 12-1では、スイッチAがルート ブリッジとして選択されます(これは、すべてのスイッチのブリッジ プライオリティがデフォルト値[32,768]に設定され、スイッチAが最も低いMACアドレスを持つ場合に起こります)。ただし、トラフィック パターン、転送ポートの数、またはリンク タイプによっては、スイッチAが最適なルート ブリッジであるとは限りません。最適なスイッチのSTPポート プライオリティを上げて(プライオリティの数値を小さくして)、そのスイッチをルート ブリッジに設定すると、最適なスイッチをルートとして持つ新しいスパニングツリー トポロジーが強制的に再計算されます。

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

 

たとえば、スイッチBの1つのポートが光ファイバ リンクで、同じスイッチの別のポート(Unshielded Twisted-Pair[UTP;シールドなしツイストペア]リンク)がルート ポートになっていると仮定します。ネットワーク トラフィックは高速の光ファイバ リンクに流す方が効率的です。光ファイバ ポートのスパニングツリー ポート プライオリティをルート ポートよりも高く(数値を小さく)すると、光ファイバ ポートが新しいルート ポートになります。

STPポート ステート

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

スパニングツリーを使用するスイッチ上の各レイヤ2インターフェイスは、次の5つのステートのいずれかの状態で存在します。

ブロッキング ― このステートでは、レイヤ2インターフェイスはフレーム フォワーディングに参加しません。

リスニング ― このステートは、スパニングツリーによりレイヤ2インタフェースのフレーム フォワーディングへの参加が決定されると、ブロック ステートから最初に移行するステートです。

ラーニング ― このステートで、レイヤ2インターフェイスはフレーム フォワーディングに参加する準備をします。

フォワーディング ― このステートで、レイヤ2インターフェイスはフレームを転送します。

ディセーブル ― このステートでは、レイヤ2インターフェイスはスパニングツリーに参加せず、フレームを転送しません。

MACアドレスの割り当て

スーパバイザ エンジンは1024個のMACアドレスを持ち、VLANスパニングツリーのブリッジIDとして使用されます。スパニングツリーがアルゴリズムに使用するMACアドレス範囲(スーパバイザの割り当て範囲)を表示する場合は、 show module コマンドを使用します。

Catalyst 4506のMACアドレスは連番で割り当てられます。すなわち、範囲の最初のMACアドレスはVLAN 1に割り当てられ、範囲の2番目のMACアドレスはVLAN 2に割り当てられます。たとえば、MACアドレス範囲が00-e0-1e-9b-2e-00~00-e0-1e-9b-31-ffの場合、VLAN 1ブリッジIDは00-e0-1e-9b-2e-00、VLAN 2ブリッジIDは00-e0-1e-9b-2e-01、VLAN 3ブリッジIDは00-e0-1e-9b-2e-02となります。他のCatalyst 4000ファミリー プラットフォームでは、すべてのVLANは個々のMACアドレスではなく、同一のMACアドレスにマッピングします。

STPトランクとIEEE 802.1qトランク

802.1q VLANトランクによって、ネットワークのスパニングツリーの構築方法に、いくつかの制約が課せられます。802.1qトランクを使用して接続しているシスコ製スイッチのネットワークでは、トランク上で許容されるVLANごとに1つのスパニングツリー インスタンスが維持されます。他社製の802.1qスイッチでは、トランク上で許容されるすべてのVLANに対して1つのスパニングツリー インスタンスのみが維持されます。

802.1qトランクを使用してシスコ製スイッチを(802.1qをサポートする)他社製のデバイスに接続する場合、シスコ製スイッチは、トランクの802.1qネイティブVLANのスパニングツリー インスタンスを、他社製の802.1qスイッチのスパニングツリー インスタンスと統合します。ただし、各VLANのスパニングツリー情報は、他社製の802.1qスイッチのネットワークと切り離して、シスコ スイッチで維持されます。シスコのスイッチを切り離している他社製の802.1qネットワークは、スイッチ間の単一トランク リンクとして扱われます。


) 802.1qトランクの詳細については、「レイヤ2イーサネット インターフェイスの設定」を参照してください。


STPのデフォルト設定

表 12-4 に、デフォルトのスパニングツリー設定を示します。

 

表 12-4 スパニングツリーのデフォルト設定値

機能
デフォルト値

イネーブル ステート

すべてのVLANに対してスパニングツリーがイネーブル

ブリッジ プライオリティ値

32,768

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

128

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

ギガビット イーサネット: 4

ファスト イーサネット: 19

ファスト イーサネット10/100 :19

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

128

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

ギガビット イーサネット: 4

ファスト イーサネット: 19

helloタイム

2秒

転送遅延時間

15秒

最大エージング タイム

20秒

STPの設定

ここでは、VLAN上でスパニングツリーを設定する手順について説明します。

「STPのイネーブル化」

「拡張システムIDのイネーブル化」

「ルート ブリッジの設定」

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

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

「STPポート コストの設定」

「VLANのブリッジ プライオリティの設定」

「helloタイムの設定」

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

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

「スパニングツリー プロトコルのディセーブル化」


) この章で説明するスパニングツリー コマンドは、no switchportコマンドで設定されるインターフェイスを除き、すべてのインターフェイス上で設定できます。


STPのイネーブル化


) デフォルトでは、すべてのVLANでスパニングツリーはイネーブルになっています。


スパニングツリーは、VLAN単位でイネーブルにできます。スイッチは(スパニングツリーをディセーブルにしたVLANを除き)各VLANについてスパニングツリーの個別のインスタンスを維持します。

VLAN単位でスパニングツリーをイネーブルにするには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch# configure terminal

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

ステップ 2

Switch(config)# spanning-tree vlan vlan_ID

VLAN vlan_idのスパニングツリーをイネーブルにします。vlan_ID値は、1~4094の範囲で指定します。

ステップ 3

Switch(config)# end

コンフィギュレーション モードを終了します。

ステップ 4

Switch# show spanning-tree vlan vlan_ID

スパニングツリーがイネーブルになっていることを確認します。

次に、VLAN 200でスパニングツリーをイネーブルにする例を示します。

Switch# configure terminal
Switch(config)# spanning-tree vlan 200
Switch(config)# end
Switch#

) スパニングツリーはデフォルトでイネーブルに設定されているので、show runningコマンドを入力して作成されたコンフィギュレーションを表示しても、スパニングツリーをイネーブルにするために入力したコマンドは表示されません。


次に、VLAN200でスパニングツリーがイネーブルになっていることを確認する例を示します。

Switch# show spanning-tree vlan 200
 
VLAN200 is executing the ieee compatible Spanning Tree protocol
Bridge Identifier has priority 32768, address 0050.3e8d.6401
Configured hello time 2, max age 20, forward delay 15
Current root has priority 16384, address 0060.704c.7000
Root port is 264 (FastEthernet5/8), cost of root path is 38
Topology change flag not set, detected flag not set
Number of topology changes 0 last change occurred 01:53:48 ago
Times: hold 1, topology change 24, notification 2
hello 2, max age 14, forward delay 10
Timers: hello 0, topology change 0, notification 0
 
Port 264 (FastEthernet5/8) of VLAN200 is forwarding
Port path cost 19, Port priority 128, Port Identifier 129.9.
Designated root has priority 16384, address 0060.704c.7000
Designated bridge has priority 32768, address 00e0.4fac.b000
Designated port id is 128.2, designated path cost 19
Timers: message age 3, forward delay 0, hold 0
Number of transitions to forwarding state: 1
BPDU: sent 3, received 3417
 
Switch#
 

拡張システムIDのイネーブル化


) 64個のMACアドレスをサポートするシャーシの拡張システムIDは、常にイネーブルになっています。


1024個のMACアドレスをサポートするシャーシで拡張システムIDをイネーブルにするには、 spanning-tree extend system-id コマンドを使用します。「ブリッジIDの概要」を参照してください。

拡張システムIDをイネーブルにするには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch(config)# spanning-tree extend system-id

拡張システムIDをイネーブルにします。

 

拡張システムIDをディセーブルにします。


) 64個のMACアドレスをサポートするシャーシでは、または拡張範囲VLANを設定している場合には、拡張システムIDをディセーブルにできません(スパニングツリーのデフォルト設定値を参照)。


ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

ステップ 3

Switch# show spanning-tree vlan vlan_ID

設定を確認します。


) 拡張システムIDをイネーブルまたはディセーブルにすると、すべてのアクティブなSTPインスタンスのブリッジIDが更新されるため、これによってスパニングツリー トポロジーが変更される場合があります。


次に、拡張システムIDをイネーブルにする例を示します。

Switch# configure terminal
Switch(config)# spanning-tree extend system-id
Switch(config)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show spanning-tree summary | include extended
Extended system ID is enabled.

ルート ブリッジの設定

Catalyst 4000ファミリー スイッチは、スイッチ上に設定されたアクティブなVLANごとにスパニングツリーのインスタンスを維持します。各インスタンスには、ブリッジ プライオリティおよびブリッジMACアドレスで構成されるブリッジIDが対応づけられます。VLANごとに、最小のブリッジIDを持つスイッチが、そのVLANのルート ブリッジとして選定されます。ブリッジ プライオリティが変更されると、常にブリッジIDも変わります。この結果、VLANのルート ブリッジが再計算されます。

指定されたVLANのルート ブリッジになるようにスイッチを設定するには、 spanning-tree vlan vlan_ID root コマンドを入力して、ブリッジ プライオリティをデフォルト値(32,768)から非常に小さな値へと変更します。指定されたVLANのブリッジ プライオリティに設定する8192は、この値によってスイッチがVLANのルートになる場合に使用します。VLANのブリッジのプライオリティが8192よりも低い場合、スイッチは最も低いブリッジ プライオリティより1小さい数値をプライオリティに設定します。

たとえば、ネットワークのすべてのスイッチが、VLAN 100のブリッジ プライオリティにデフォルト値の32,768を設定していると仮定します。スイッチに spanning-tree vlan 100 root primary コマンドを指定すると、VLAN 100のブリッジ プライオリティが8192に設定されるため、このスイッチはVLAN 100のルート ブリッジになります。


) スパニングツリーの各インスタンスのルート ブリッジは、バックボーン スイッチまたはディストリビューション スイッチでなければなりません。アクセス スイッチをスパニングツリーのプライマリ ルートとして設定しないでください。


レイヤ2ネットワークの直径(ネットワーク上の任意の2つのエンド ステーション間における最大ブリッジ ホップ数)を指定するには、 diameter キーワードを指定します。ネットワークの直径を指定すると、スイッチは自動的に最適なhelloタイム、転送遅延時間、その直径のネットワークの最大エージング タイムをピックアップします。これによって、スパニングツリーのコンバージェンス時間が著しく短縮されます。

hello-time キーワードを使用して、自動的に計算されるhelloタイムを上書きできます。


) スイッチをルート ブリッジとして設定した後で、helloタイム、転送遅延時間、および最大エージング タイムを手動で設定しないでください。


スイッチをルート スイッチとして設定するには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch(config)# [ no ] spanning-tree vlan vlan_ID root primary [ diameter hops [ hello-time seconds ]]

スイッチをルート ブリッジとして設定します。

デフォルトを復元する場合は、 no キーワードを使用します。

ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

次に、スイッチをVLAN 10のルート ブリッジとして設定し、ネットワーク直径を4に設定する例を示します。

Switch# configure terminal
Switch(config)# spanning-tree vlan 10 root primary diameter 4
Switch(config)# end
Switch#
 

次に、スイッチがスパニングツリー ルートになったときに設定が変わる例を示します。次に示すのは、スイッチがVLAN 1のルートになる前の設定です。

Switch#show spanning-tree vlan 1
 
VLAN1 is executing the ieee compatible Spanning Tree protocol
Bridge Identifier has priority 32768, address 0030.94fc.0a00
Configured hello time 2, max age 20, forward delay 15
Current root has priority 32768, address 0001.6445.4400
Root port is 323 (FastEthernet6/3), cost of root path is 19
Topology change flag not set, detected flag not set
Number of topology changes 2 last change occurred 00:02:19 ago
from FastEthernet6/1
Times: hold 1, topology change 35, notification 2
hello 2, max age 20, forward delay 15
Timers:hello 0, topology change 0, notification 0, aging 300
 
Port 323 (FastEthernet6/3) of VLAN1 is forwarding
Port path cost 19, Port priority 128, Port Identifier 129.67.
Designated root has priority 32768, address 0001.6445.4400
Designated bridge has priority 32768, address 0001.6445.4400
Designated port id is 129.67, designated path cost 0
Timers:message age 2, forward delay 0, hold 0
Number of transitions to forwarding state:1
BPDU:sent 3, received 91
 
Port 324 (FastEthernet6/4) of VLAN1 is blocking
Port path cost 19, Port priority 128, Port Identifier 129.68.
Designated root has priority 32768, address 0001.6445.4400
Designated bridge has priority 32768, address 0001.6445.4400
Designated port id is 129.68, designated path cost 0
Timers:message age 2, forward delay 0, hold 0
Number of transitions to forwarding state:0
BPDU:sent 1, received 89
 

スイッチをルートとして設定します。

Switch# configure terminal
Switch(config)# spanning-tree vlan 1 root primary
Switch(config)# spanning-tree vlan 1 root primary
VLAN 1 bridge priority set to 8192
VLAN 1 bridge max aging time unchanged at 20
VLAN 1 bridge hello time unchanged at 2
VLAN 1 bridge forward delay unchanged at 15
Switch(config)# end
 

次に示すのは、スイッチがルートになった後の設定です。

Switch# show spanning-tree vlan 1
 
VLAN1 is executing the ieee compatible Spanning Tree protocol
Bridge Identifier has priority 8192, address 0030.94fc.0a00
Configured hello time 2, max age 20, forward delay 15
We are the root of the spanning tree
Topology change flag set, detected flag set
Number of topology changes 3 last change occurred 00:00:09 ago
Times: hold 1, topology change 35, notification 2
hello 2, max age 20, forward delay 15
Timers:hello 0, topology change 25, notification 0, aging 15
 
Port 323 (FastEthernet6/3) of VLAN1 is forwarding
Port path cost 19, Port priority 128, Port Identifier 129.67.
Designated root has priority 8192, address 0030.94fc.0a00
Designated bridge has priority 8192, address 0030.94fc.0a00
Designated port id is 129.67, designated path cost 0
Timers:message age 0, forward delay 0, hold 0
Number of transitions to forwarding state:1
BPDU:sent 9, received 105
 
Port 324 (FastEthernet6/4) of VLAN1 is listening
Port path cost 19, Port priority 128, Port Identifier 129.68.
Designated root has priority 8192, address 0030.94fc.0a00
Designated bridge has priority 8192, address 0030.94fc.0a00
Designated port id is 129.68, designated path cost 0
Timers:message age 0, forward delay 5, hold 0
Number of transitions to forwarding state:0
BPDU:sent 6, received 102
 
Switch#
 

) ブリッジ プライオリティが8192に設定され、スイッチがスパニングツリーのルートになっていることを確認してください。


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

スイッチをセカンダリ ルートとして設定すると、スパニングツリー ブリッジ プライオリティはデフォルト値(32,768)から16,384に変更されます。その結果、プライマリ ルート ブリッジが故障した場合に(ネットワーク上の他のスイッチがデフォルトのブリッジ プライオリティ32,768を使用していることが前提)、そのスイッチが指定されたVLANのルート ブリッジになる可能性が高くなります。

このコマンドを複数のスイッチに対して実行し、複数のバックアップ ルート スイッチを設定できます。プライマリ ルート スイッチを設定するときに使用したものと同じネットワーク直径およびhelloタイムを使用してください。


) スイッチをルート ブリッジとして設定した後で、helloタイム、転送遅延時間、および最大エージング タイムを手動で設定しないでください。


スイッチをセカンダリ ルート スイッチとして設定するには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch(config)# [ no ] spanning-tree vlan vlan_ID root secondary [ diameter hops [ hello-time seconds ]]

スイッチをセカンダリ ルート スイッチとして設定します。

デフォルトを復元する場合はnoキーワードを使用します。

ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

次に、スイッチをVLAN 10のセカンダリ ルート スイッチとして設定し、ネットワーク直径を4に設定する例を示します。

Switch# configure terminal
Switch(config)# spanning-tree vlan 10 root secondary diameter 4
VLAN 10 bridge priority set to 16384
VLAN 10 bridge max aging time set to 14
VLAN 10 bridge hello time unchanged at 2
VLAN 10 bridge forward delay set to 10
Switch(config)# end
Switch#
 

次に、VLAN 1の設定を確認する例を示します。

Switch#sh spanning-tree vlan 1
 
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 32768
Address 0003.6b10.e800
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
 
Bridge ID Priority 32768
Address 0003.6b10.e800
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300
 
Interface Role Sts Cost Prio.Nbr Status
---------------- ---- --- --------- -------- --------------------------------
Fa3/1 Desg FWD 19 128.129 P2p
Fa3/2 Desg FWD 19 128.130 P2p
Fa3/48 Desg FWD 19 128.176 Edge P2p
 
Switch#
 

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

ループが発生した場合、スパニングツリーはフォワーディング ステートに移行するインターフェイスを選択する際にポート プライオリティを考慮します。スパニングツリーで最初に選択するインターフェイスに高いプライオリティ値を、最後に選択するインターフェイスに低いプライオリティ値を割り当てることができます。すべてのインターフェイスが同じプライオリティ値を使用している場合、スパニングツリーはインターフェイス番号が最も小さいインターフェイスをフォワーディング ステートにして、残りのインターフェイスをブロックします。指定できるプライオリティの範囲は0~240で、16ずつ増分して設定できます(デフォルトは128)。


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


インターフェイスのスパニングツリー ポート プライオリティを設定するには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch(config)# interface {{ fastethernet | gigabitethernet } slot / port } | { port-channel port_channel_number }

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# [ no ] spanning-tree port-priority port_priority

インターフェイスのポート プライオリティを設定します。指定できる port_priority 値の範囲は0~240で、16ずつ増分できます。

デフォルトを復元する場合は、 no キーワードを使用します。

ステップ 3

Switch(config-if)# [ no ] spanning-tree vlan vlan_ID port-priority port_priority

インターフェイスのVLANポート プライオリティを設定します。指定できる port_priority 値の範囲は0~240で、16ずつ増分できます。

デフォルトを復元する場合は、 no キーワードを使用します。

ステップ 4

Switch(config-if)# end

コンフィギュレーション モードを終了します。

ステップ 5

Switch# show spanning-tree interface {{ fastethernet | gigabitethernet } slot / port } | { port-channel port_channel_number }
show spanning-tree vlan vlan_ID

設定を確認します。

次に、ファスト イーサネット インターフェイスのスパニングツリー ポート プライオリティを設定する例を示します。

Switch# configure terminal
Switch(config)# interface fastethernet 5/8
Switch(config-if)# spanning-tree port-priority 100
Switch(config-if)# end
Switch#
 

次に、ファスト イーサネット インターフェイスをアクセス ポートとして設定した場合の、設定を確認する例を示します。

Switch# show spanning-tree interface fastethernet 3/1
 
Vlan Role Sts Cost Prio.Nbr Status
---------------- ---- --- --------- -------- --------------------------------
VLAN0001 Desg FWD 19 128.129 P2p
VLAN1002 Desg FWD 19 128.129 P2p
VLAN1003 Desg FWD 19 128.129 P2p
VLAN1004 Desg FWD 19 128.129 P2p
VLAN1005 Desg FWD 19 128.129 P2p
Switch#

次に、インターフェイスをアクセス ポートとして設定した場合の、インターフェイスの設定の詳細を表示する例を示します。

Switch# show spanning-tree interface fastethernet 3/1 detail
Port 129 (FastEthernet3/1) of VLAN0001 is forwarding
Port path cost 19, Port priority 128, Port Identifier 128.129.
Designated root has priority 32768, address 0003.6b10.e800
Designated bridge has priority 32768, address 0003.6b10.e800
Designated port id is 128.129, designated path cost 0
Timers:message age 0, forward delay 0, hold 0
Number of transitions to forwarding state:1
Link type is point-to-point by default
BPDU:sent 187, received 1
 
Port 129 (FastEthernet3/1) of VLAN1002 is forwarding
Port path cost 19, Port priority 128, Port Identifier 128.129.
Designated root has priority 32768, address 0003.6b10.ebe9
Designated bridge has priority 32768, address 0003.6b10.ebe9
Designated port id is 128.129, designated path cost 0
Timers:message age 0, forward delay 0, hold 0
Number of transitions to forwarding state:1
Link type is point-to-point by default
BPDU:sent 94, received 2
 
Port 129 (FastEthernet3/1) of VLAN1003 is forwarding
Port path cost 19, Port priority 128, Port Identifier 128.129.
Designated root has priority 32768, address 0003.6b10.ebea
Designated bridge has priority 32768, address 0003.6b10.ebea
Designated port id is 128.129, designated path cost 0
Timers:message age 0, forward delay 0, hold 0
Number of transitions to forwarding state:1
Link type is point-to-point by default
BPDU:sent 94, received 2
 
Port 129 (FastEthernet3/1) of VLAN1004 is forwarding
Port path cost 19, Port priority 128, Port Identifier 128.129.
Designated root has priority 32768, address 0003.6b10.ebeb
Designated bridge has priority 32768, address 0003.6b10.ebeb
Designated port id is 128.129, designated path cost 0
Timers:message age 0, forward delay 0, hold 0
Number of transitions to forwarding state:1
Link type is point-to-point by default
BPDU:sent 95, received 2
 
Port 129 (FastEthernet3/1) of VLAN1005 is forwarding
Port path cost 19, Port priority 128, Port Identifier 128.129.
Designated root has priority 32768, address 0003.6b10.ebec
Designated bridge has priority 32768, address 0003.6b10.ebec
Designated port id is 128.129, designated path cost 0
Timers:message age 0, forward delay 0, hold 0
Number of transitions to forwarding state:1
Link type is point-to-point by default
BPDU:sent 95, received 2
Switch#

show spanning-tree port-priorityコマンドは、リンクがアクティブになっているポートの情報のみを表示します。リンクがアクティブなポートがない場合は、show running-config interfaceコマンドを使用して設定を確認してください。


次に、ファスト イーサネット インターフェイスのスパニングツリーVLANポート プライオリティを設定する例を示します。

Switch# configure terminal
Switch(config)# interface fastethernet 5/8
Switch(config-if)# spanning-tree vlan 200 port-priority 64
Switch(config-if)# end
Switch#
 

次に、インターフェイスのVLAN 200をトランク ポートとして設定した場合の、設定を確認する例を示します。

Switch# show spanning-tree vlan 200
(テキスト出力は省略)
 
Port 264 (FastEthernet5/8) of VLAN200 is forwarding
Port path cost 19, Port priority 64, Port Identifier 129.8.
Designated root has priority 32768, address 0010.0d40.34c7
Designated bridge has priority 32768, address 0010.0d40.34c7
Designated port id is 128.1, designated path cost 0
Timers: message age 2, forward delay 0, hold 0
Number of transitions to forwarding state: 1
BPDU: sent 0, received 13513
 
(テキスト出力は省略)
Switch#
 

STPポート コストの設定

スパニングツリー ポート パス コストのデフォルト値には、インターフェイス メディア速度の値が使用されます。ループが発生した場合、スパニングツリーはフォワーディング ステートに移行するインターフェイスを選択する際にポート コストを考慮します。スパニングツリーで最初に選択するインターフェイスに低いコスト値を、最後に選択するインターフェイスに高いコスト値を割り当てることができます。すべてのインターフェイスが同じコスト値を使用している場合、スパニングツリーはインターフェイス番号が最も小さいインターフェイスをフォワーディング ステートにして、残りのインターフェイスをブロックします。指定できるコストの範囲は、1~200,000,000です(デフォルトは、メディアによって異なります)。

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

インターフェイスのスパニングツリー ポート コストを設定するには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch(config)# interface {{ fastethernet | gigabitethernet } slot / port } | { port-channel port_channel_number }

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# [ no ] spanning-tree cost port_cost

インターフェイスのポート コストを設定します。 port_cost 値は、1~200,000,000の範囲で指定します。

デフォルトを復元する場合は、 no キーワードを使用します。

ステップ 3

Switch(config-if)# [ no ] spanning-tree vlan vlan_ID cost port_cost

インターフェイスのVLANポート コストを設定します。 port_cost 値は、1~200,000,000の範囲で指定します。

デフォルトを復元する場合は、 no キーワードを使用します。

ステップ 4

Switch(config-if)# end

コンフィギュレーション モードを終了します。

ステップ 5

Switch# show spanning-tree interface {{ fastethernet | gigabitethernet } slot / port } | { port-channel port_channel_number }
show spanning-tree vlan vlan_ID

設定を確認します。

次に、ファスト イーサネット インターフェイスのスパニングツリー ポート コストを変更する例を示します。

Switch# configure terminal
Switch(config)# interface fastethernet 5/8
Switch(config-if)# spanning-tree cost 18
Switch(config-if)# end
Switch#
 

次に、インターフェイスをアクセス ポートとして設定した場合の、設定を確認する例を示します。

Switch# show spanning-tree interface fastethernet 5/8
Port 264 (FastEthernet5/8) of VLAN200 is forwarding
Port path cost 18, Port priority 100, Port Identifier 129.8.
Designated root has priority 32768, address 0010.0d40.34c7
Designated bridge has priority 32768, address 0010.0d40.34c7
Designated port id is 128.1, designated path cost 0
Timers: message age 2, forward delay 0, hold 0
Number of transitions to forwarding state: 1
BPDU: sent 0, received 13513
Switch#
 

次に、ファスト イーサネット インターフェイスのスパニングツリーVLANポート コストを設定する例を示します。

Switch# configure terminal
Switch(config)# interface fastethernet 5/8
Switch(config-if)# spanning-tree vlan 200 cost 17
Switch(config-if)# end
Switch#
 

次に、インターフェイスのVLAN 200をトランク ポートとして設定した場合の、設定を確認する例を示します。

Switch# show spanning-tree vlan 200
(テキスト出力は省略)
Port 264 (FastEthernet5/8) of VLAN200 is forwarding
Port path cost 17, Port priority 64, Port Identifier 129.8.
Designated root has priority 32768, address 0010.0d40.34c7
Designated bridge has priority 32768, address 0010.0d40.34c7
Designated port id is 128.1, designated path cost 0
Timers: message age 2, forward delay 0, hold 0
Number of transitions to forwarding state: 1
BPDU: sent 0, received 13513
 
(テキスト出力は省略)
Switch#

show spanning-tree コマンドは、リンクがアクティブになっている(グリーンに点灯)ポートの情報のみを表示します。リンクがアクティブなポートがない場合は、show running-configコマンドを使用して設定を確認してください。


VLANのブリッジ プライオリティの設定


) VLANのブリッジ プライオリティを設定する場合は、注意が必要です。ブリッジ プライオリティを変更するには、通常の場合、spanning-tree vlan vlan_ID root primaryコマンドおよびspanning-tree vlan vlan_ID root secondaryコマンドを使用してください。


VLANのスパニングツリー ブリッジ プライオリティを設定するには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch(config)# [ no ] spanning-tree vlan vlan_ID priority bridge_priority

VLANのブリッジ プライオリティを設定します。 bridge_priority 値は、1~65,535の範囲で指定します。

デフォルトを復元する場合は、 no キーワードを使用します。

ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

ステップ 3

Switch# show spanning-tree vlan vlan_ID bridge [ brief ]

設定を確認します。

次に、VLAN 200のブリッジ プライオリティを33,792に設定する例を示します。

Switch# configure terminal
Switch(config)# spanning-tree vlan 200 priority 33792
Switch(config)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show spanning-tree vlan 200 bridge brief
Hello Max Fwd
Vlan Bridge ID Time Age Delay Protocol
---------------- -------------------- ---- ---- ----- --------
VLAN200 33792 0050.3e8d.64c8 2 20 15 ieee
Switch#
 

helloタイムの設定


) helloタイムを設定する場合は、注意が必要です。helloタイムを変更するには、通常の場合
spanning-tree vlan vlan_ID root primaryコマンドおよびspanning-tree vlan vlan_ID root secondaryコマンドを使用してください。


VLANのスパニングツリーhelloタイムを設定するには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch(config)# [ no ] spanning-tree vlan vlan_ID hello-time hello_time

VLANのhelloタイムを設定します。 hello_time 値は、1~10秒の範囲で指定します。

デフォルトを復元する場合は、 no キーワードを使用します。

ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

ステップ 3

Switch# show spanning-tree vlan vlan_ID bridge [ brief ]

設定を確認します。

次に、VLAN 200のhelloタイムを7秒に設定する例を示します。

Switch# configure terminal
Switch(config)# spanning-tree vlan 200 hello-time 7
Switch(config)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show spanning-tree vlan 200 bridge brief
Hello Max Fwd
Vlan Bridge ID Time Age Delay Protocol
---------------- -------------------- ---- ---- ----- --------
VLAN200 49152 0050.3e8d.64c8 7 20 15 ieee
Switch#
 

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


) エージング タイムを設定する場合は、注意が必要です。最大エージング タイムを変更するには、通常の場合、spanning-tree vlan vlan_ID root primaryコマンドおよびspanning-tree vlan vlan_ID root secondaryコマンドを使用してください。


VLANのスパニングツリー最大エージング タイムを設定するには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch(config)# [ no ] spanning-tree vlan vlan_ID max-age max_age

VLANの最大エージング タイムを設定します。 max_age 値は、6~40秒の範囲で指定します。

デフォルトを復元する場合は、 no キーワードを使用します。

ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

ステップ 3

Switch# show spanning-tree vlan vlan_ID bridge [ brief ]

設定を確認します。

次に、VLAN 200の最大エージング タイムを36秒に設定する例を示します。

Switch# configure terminal
Switch(config)# spanning-tree vlan 200 max-age 36
Switch(config)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show spanning-tree vlan 200 bridge brief
Hello Max Fwd
Vlan Bridge ID Time Age Delay Protocol
---------------- -------------------- ---- ---- ----- --------
VLAN200 49152 0050.3e8d.64c8 2 36 15 ieee
Switch#

VLANの転送遅延時間の設定


) 転送遅延時間を設定する場合は、注意が必要です。転送遅延時間を変更するには、通常の場合、spanning-tree vlan vlan_ID root primaryコマンドおよびspanning-tree vlan vlan_ID root secondaryコマンドを使用してください。


VLANのスパニングツリー転送遅延時間を設定するには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch(config)# [ no ] spanning-tree vlan vlan_ID forward-time forward_time

VLANの転送時間を設定します。 forward_time 値は、4~30秒の範囲で指定します。

デフォルトを復元する場合は、 no キーワードを使用します。

ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

ステップ 3

Switch# show spanning-tree vlan vlan_ID bridge [ brief ]

設定を確認します。

次に、VLAN 200の転送遅延時間を21秒に設定する例を示します。

Switch# configure terminal
Switch(config)# spanning-tree vlan 200 forward-time 21
Switch(config)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show spanning-tree vlan 200 bridge brief
Hello Max Fwd
Vlan Bridge ID Time Age Delay Protocol
---------------- -------------------- ---- ---- ----- --------
VLAN200 49152 0050.3e8d.64c8 2 20 21 ieee
Switch#
 

次にブリッジのスパニングツリー情報を表示する例を示します。

Switch# show spanning-tree bridge
 
Hello Max Fwd
Vlan Bridge ID Time Age Dly Protocol
---------------- --------------------------------- ----- --- --- --------
VLAN200 49152 0050.3e8d.64c8 2 20 15 ieee
VLAN202 49152 0050.3e8d.64c9 2 20 15 ieee
VLAN203 49152 0050.3e8d.64ca 2 20 15 ieee
VLAN204 49152 0050.3e8d.64cb 2 20 15 ieee
VLAN205 49152 0050.3e8d.64cc 2 20 15 ieee
VLAN206 49152 0050.3e8d.64cd 2 20 15 ieee
Switch#

スパニングツリー プロトコルのディセーブル化

VLAN単位でスパニングツリーをディセーブルにするには、次の作業を行います。

 

コマンド
説明

ステップ 1

Switch(config)# no spanning-tree vlan vlan_ID

VLAN単位でスパニングツリーをディセーブルにします。

ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

ステップ 3

Switch# show spanning-tree vlan vlan_ID

スパニングツリーがディセーブルになっていることを確認します。

次に、VLAN 200でスパニングツリーをディセーブルにする例を示します。

Switch# configure terminal
Switch(config)# no spanning-tree vlan 200
Switch(config)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show spanning-tree vlan 200
Spanning tree instance for VLAN 200 does not exist.
Switch#