L2スイッチング / スパニングツリープロトコル
スパニングツリープロトコルは、スイッチ(ブリッジ)ネットワークにおいて、冗長経路(複数経路)の設定を可能とし、ネットワークの耐障害性を高めるプロトコルです。ネットワーク上に複数の経路を設定し、障害発生時に迂回路を使えるようにすることは自然な発想ですが、Ethernetではループ状の経路がブロードキャストストームによるネットワーク停止を招くため、そのままでは複数経路の設定自体ができません。
スパニングツリープロトコルを使用すると、ブリッジ同士がメッセージを交換し合うことにより、すべてのブリッジを含むツリー状の論理経路(スパニングツリー)が自律的に構築されます。物理的にループが存在しても、ツリーを構成しないポートは自動的にブロックされるため、パケットがループすることはありません。
また、障害が発生して一部の経路が不通になったときは、ツリーの再構築が行われ、自動的に新しい経路に切り替わる冗長機能も備えています。
動作モード(バージョン)
スパニングツリープロトコルにはいくつかの種類がありますが、本製品では以下のバージョンをサポートしています。| Spanning Tree Protocol | STP | IEEE 802.1D | 0 |
| Rapid Spanning Tree Protocol | RSTP | IEEE 802.1w | 2 |
| Multiple Spanning Tree Protocol | MSTP | IEEE 802.1s | 3 |
本製品の初期状態ではRSTPモードに設定されています。RSTPは、オリジナルのSTPを改良してツリーの収束時間を短くしたものです。また、MSTPは、RSTPをVLAN環境向けに大幅拡張したもので、いくつかのVLANごとにRSTPを実行することができます。
これら複数のバージョンを同時に有効化することはできませんが、上位バージョン(バージョン番号の大きいもの)には下位バージョンとの互換性があるため、古いバージョンの装置と相互運用することは可能です。
スパニングツリープロトコルの動作モード(バージョン)を変更するには、spanning-tree modeコマンドを使います。
- 動作モードをSTPに変更するには、次のようにします。
awplus(config)# spanning-tree mode stp
- 動作モードをRSTPに変更するには、次のようにします。
awplus(config)# spanning-tree mode rstp
- 動作モードをMSTPに変更するには、次のようにします。
awplus(config)# spanning-tree mode mstp
なお、動作モードを変更した直後は、該当モードのスパニングツリープロトコルが有効化された状態になります。また、スパニングツリープロトコル関連の設定は初期状態に戻ります。
動作の無効化と有効化
本製品の初期状態ではRSTPの動作が有効化されています。また、動作モードを変更した直後も、該当モードのスパニングツリープロトコルが有効化された状態になります。
スパニングツリープロトコルの動作を無効にするには、spanning-tree enableコマンドをno形式で実行します。
- 動作モードがSTPのときは、次のようにキーワードstpを指定します。
awplus(config)# no spanning-tree stp enable
- 動作モードがRSTPのときは、次のようにキーワードrstpを指定します。
awplus(config)# no spanning-tree rstp enable
- 動作モードがMSTPのときは、次のようにキーワードmstpを指定します。
awplus(config)# no spanning-tree mstp enable
スパニングツリープロトコルの動作を再度有効化するには、spanning-tree enableコマンドを通常形式で実行します。
- 動作モードがSTPのときは、次のようにキーワードstpを指定します。
awplus(config)# spanning-tree stp enable
- 動作モードがRSTPのときは、次のようにキーワードrstpを指定します。
awplus(config)# spanning-tree rstp enable
- 動作モードがMSTPのときは、次のようにキーワードmstpを指定します。
awplus(config)# spanning-tree mstp enable
設定を行うにあたり、STPとRSTPはほぼ同じように扱えますが、MSTPではリージョン識別情報の設定やVLANのグループ分けなど明示的に設定すべき項目がいくつかあり、STP/RSTPよりもやや複雑になっているため、以下では最初にSTP/RSTPの設定項目を説明し、その後MSTPの設定項目について解説します。
なお、MSTPにおいても、CIST(インスタンス0)に対する設定は、STP/RSTPと同じコマンドを利用してほぼ同じように行えます。また、各MSTインスタンスにおける設定も、基本的な考え方はSTP/RSTPと同じです。
STP/RSTP
本製品の初期状態では、スパニングツリープロトコルの動作モード(バージョン)はRSTPに設定されており、すべてのスイッチポートでRSTPの動作が有効化されています。STP/RSTPは特別な設定をしなくても動作しますが、実際の運用にあたっては、少なくともルートブリッジが適切な位置に配置されるよう各装置のブリッジプライオリティーを調整する必要があります。STP/RSTP利用時のスパニングツリードメインは1つになります。
以下では、STP/RSTPにおける基本的な設定項目について解説します。
なお、これらの項目(およびコマンド)は、MSTPモードでCIST(インスタンス0)の設定を行う場合にも同じように使えます。
基本設定
任意のスイッチをルートブリッジにするには、各スイッチのブリッジプライオリティーを調整して、ルートブリッジのプライオリティー値がもっとも小さく(優先度が高く)なるよう設定します。ブリッジのプライオリティーの設定は、グローバルコンフィグモードのspanning-tree priorityコマンドで行います。awplus(config)# spanning-tree priority 8192
同コマンドで設定できる値の範囲は0~61440ですが、実際に使用される値は4096の倍数に丸められます(指定値が4096の倍数でない場合、指定値よりも小さい直近の倍数が使われます)。初期値は32768です。
意図しないルートブリッジの変更を防ぐには、代表ポートとなるポートでルートガード機能を有効化します。ルートガード機能が有効なポートで現行のBPDUよりも優位な(ブリッジプライオリティーの小さい)BPDUを受信した場合、該当ポートはリスニング状態(STPモード時)、または、ディスカーディング状態(RSTP/MSTPモード時)に移行します。これにより、該当ポートに接続されたブリッジがルートブリッジになることを防げます。
awplus(config)# interface port1.0.3-1.0.4 awplus(config-if)# spanning-tree guard root
(RSTPのみ)他のブリッジが存在しないPCなどの端末接続用ポートは、エッジポートに設定しておきます。エッジポートではフォワーディング状態への高速遷移が有効になるため、端末接続後すぐに通信が可能になります。また、エッジポートでは、ステータスが変化してもトポロジー変更通知が発生しないため、端末接続用ポートをエッジポートに設定しておけば、ネットワーク全体で無駄な処理を減らすことができます。エッジポートの設定は、インターフェースモードのspanning-tree edgeportコマンド、または、spanning-tree portfastコマンドで行います(どちらのコマンドを実行しても同じです)。
awplus(config)# interface port1.0.1-1.0.8 awplus(config-if)# spanning-tree edgeport
(RSTPのみ)エッジポートは他のブリッジが存在しないことを前提にしたポートですが、万が一ブリッジが接続されるとBPDUを受信することになります。この場合、エッジポートは通常ポートに移行します。
万が一エッジポートに接続されたブリッジのブリッジプライオリティーが最小だった場合、ルートブリッジが変更になり、スパニングツリーの再構成が発生します。これを防ぐには、BPDUガード機能を有効にして、BPDUを受信した場合にエッジポートを無効化するよう設定します。
awplus(config)# spanning-tree portfast bpdu-guard
また、BPDUガード機能はスイッチポートごとに設定することもできます。スイッチポートごとの設定は、全体設定よりも優先されます。
awplus(config)# interface port1.0.8 awplus(config-if)# spanning-tree portfast bpdu-guard enable
(RSTPのみ)BPDUガード機能によって無効化されたエッジポートは、管理者が手動で有効化しないかぎり無効状態のままとなります。無効化されたエッジポートを再度有効化するには、インターフェースモードのshutdownコマンドをno形式で実行します。
awplus(config)# interface port1.0.8 awplus(config-if)# no shutdown
(RSTPのみ)BPDUガード機能によって無効化されたエッジポートを、一定時間後に自動的に再有効化することもできます。これには、spanning-tree errdisable-timeout enableコマンドを使います。
awplus(config)# spanning-tree errdisable-timeout enable
また、再有効化するまでの時間はspanning-tree errdisable-timeout intervalコマンドで変更できます。初期設定では300秒です。
awplus(config)# spanning-tree errdisable-timeout interval 10
(RSTPのみ)エッジポートからBPDUを送信したくない場合は、BPDUフィルター機能を有効にします。
awplus(config)# spanning-tree portfast bpdu-filter
また、BPDUフィルター機能はスイッチポートごとに設定することもできます。スイッチポートごとの設定は、全体設定よりも優先されます。
awplus(config)# interface port1.0.8 awplus(config-if)# spanning-tree portfast bpdu-filter enable
STP/RSTPの全体設定を変更するには、次に示すグローバルコンフィグモードのコマンドを使います。
- ブリッジプライオリティーの設定:spanning-tree priorityコマンド(グローバルコンフィグモード)
- フォワードディレイタイムの設定:spanning-tree forward-timeコマンド
- ハロータイムの設定:spanning-tree hello-timeコマンド
- 最大エージタイムの設定:spanning-tree max-ageコマンド
STP/RSTPのスイッチポート固有設定を変更するには、次に示すインターフェースモードのコマンドを使います。
- パスコストの設定:spanning-tree path-costコマンド
- ポートプライオリティーの設定:spanning-tree priorityコマンド(インターフェースモード)
- リンクタイプの設定(RSTPのみ):spanning-tree link-typeコマンド
- エッジポート自動検出の有効・無効(RSTPのみ):spanning-tree autoedgeコマンド
- エッジポートの手動設定(RSTPのみ):spanning-tree edgeportコマンド、または、spanning-tree portfastコマンド
- BPDUバージョンの指定(RSTPのみ):spanning-tree force-versionコマンド
スパニングツリープロトコル(STP/RSTP)の設定を確認するには、show spanning-treeコマンドを使います。同コマンドでは、スパニングツリープロトコルの全体的な情報に続いて、全スイッチポートの情報も表示されるので、CLIのモディファイアを利用して情報を絞り込むと便利です。たとえば、スパニングツリープロトコルの全体的な情報だけを見るには次のようにします。
awplus> show spanning-tree | include % 1:
% 1: Bridge up - Spanning Tree Enabled
% 1: Root Path Cost 200000 - Root Port 5001 - Bridge Priority 61440
% 1: Forward Delay 15 - Hello Time 2 - Max Age 20
% 1: Root Id 00000000f4272c74
% 1: Bridge Id f0000000cd240367
% 1: 2 topology changes - last topology change Mon Feb 20 06:05:37 2012
% 1: portfast bpdu-filter disabled
% 1: portfast bpdu-guard disabled
% 1: portfast errdisable timeout disabled
% 1: portfast errdisable timeout interval 300 sec
また、ポートの状態だけをすばやく確認したいときは、次のようにすると便利です。
awplus> show spanning-tree interface port1.0.1-1.0.2,port1.0.8 | include Role
% port1.0.1: Port 5001 - Id 8389 - Role Rootport - State Forwarding
% port1.0.2: Port 5002 - Id 838a - Role Alternate - State Discarding
% port1.0.8: Port 5008 - Id 8390 - Role Designated - State Forwarding
MSTP
マルチプルスパニングツリープロトコル(MSTP)は、既存のスパニングツリープロトコル(STP/RSTP)をもとに、VLAN環境向けの機能拡張を施したレイヤー2のループ防止・冗長化プロトコルです。概要
MSTPは、ツリー状の論理経路(スパニングツリー)を自動的に形成してループを防止する点において、RSTPと同様の動作をします。ただし、MSTPでは、複数のVLANをMSTインスタンスと呼ばれるグループにまとめ、MSTインスタンスごとにツリーを形成し、それぞれのツリーでRSTPと同様の動作を実行します。この特長をうまく利用すれば、タグVLANを利用したスイッチ間接続などにおいて、ネットワーク負荷を分散させることができます。また、VLANごとにツリーを形成する場合に比べて、VLAN数の増加によるCPUやネットワーク負荷の上昇を抑えることができます。
さらに、MSTPでは、ネットワーク上のブリッジ(スイッチ)をMSTリージョンと呼ばれるグループに分割し、MSTリージョンごとに前述したMSTPの動作を行わせることができます。これは、大規模なネットワーク環境において、ネットワークの設計や管理を容易にする効果があります。
MSTインスタンス
MSTPでは、複数のVLANをまとめたものをMSTインスタンス(MSTI)と呼び、MSTインスタンスごとにスパニングツリーを形成します。MSTインスタンスは、1~15のインスタンスIDで識別します。
MSTインスタンスのルートブリッジは「MSTIリージョナルルート」と呼ばれ、MSTインスタンスにおけるブリッジプライオリティーとMACアドレスによって決定されます。
ブリッジプライオリティーはMSTインスタンスごとに設定できるため、MSTインスタンス「1」ではスイッチAがルートブリッジ、MSTインスタンス「2」ではスイッチBがルートブリッジ、といった構成を組むことができます。また、ポートプライオリティーもMSTインスタンスごとに設定できるため、MSTインスタンスごとに最適なポートをルートポートにすることができます。これらの仕組みはトラフィックの負荷分散に有効です。
本製品のMSTインスタンスの仕様は、次のとおりです。
- 最大15個のMSTインスタンスを作成可能(これらとは別に、デフォルトでID=0の特殊なインスタンス(CIST)が存在する)
- MSTインスタンスの範囲は、後述するMSTリージョン内に限定される(インスタンスIDもMSTリージョン内でのみ意味を持つ)
- 1つのMSTインスタンスに関連付けるVLAN数に制限なし
- 1つのVLANは、1つのMSTインスタンス(またはCIST)にのみ関連付けが可能
MSTリージョン
MSTPでは、ネットワーク上のブリッジ(スイッチ)をMSTリージョンと呼ばれるグループに分割することができます。MSTリージョンは、他のリージョンからは1台の仮想ブリッジとして見えるため、MSTリージョン内のトポロジーチェンジはMSTリージョン内で完結し、リージョン外(ネットワーク全体)には影響を与えません。すなわち、MSTPの動作は、次の2つのレベルに分かれているということになります。
- MSTリージョン内での動作
MSTリージョン内のMSTインスタンスごとにツリーを形成。あるVLANに所属するパケットは、そのVLANが関連付けられているMSTインスタンスのツリーにしたがって転送される。
- MSTリージョン間での動作
MSTリージョンを仮想ブリッジと見なしてネットワーク全体にわたるツリーを形成。個々のリージョン内のトポロジーには関知しない。
本製品のMSTリージョンの仕様は、次のとおりです。
- 同一のMSTリージョンに所属する装置では、MSTリージョン名、MSTリージョンのリビジョン、MSTインスタンスとVLANの関連付けの設定を同じにする
- 1つのMSTリージョンに所属するブリッジ数に制限なし
- 1台のブリッジは、1つのMSTリージョンにのみ所属が可能
MSTP対応ブリッジは、あるポートにおいて自身と異なるMSTリージョン設定を持ったMSTP BPDUを受信すると、該当ポートがMSTリージョンの境界に位置するものと認識します。
また、旧バージョンのBPDU(STP BPDU、RSTP BPDU)を受信した場合も、受信ポートがMSTリージョンの境界に位置するものと認識します。この場合、STP/RSTPブリッジ(MSTP非対応のブリッジ)は、1つのMSTリージョンと見なします。
CIST
MSTPでは、デフォルトでID=0の特殊なインスタンスが存在します。これはCIST(Common and Internal Spanning Tree)と呼ばれ、MSTリージョン内のすべてのブリッジを接続し、さらには、MSTリージョン同士を接続して、ネットワーク全体をカバーするスパニングツリーを形成します。MSTリージョン内におけるCISTツリーのルートブリッジを「CISTリージョナルルート」、MSTリージョン外も含めたネットワーク全体のルートブリッジ(CISTのルートブリッジ)を「CISTルート」と呼びます。これらはCISTにおけるブリッジプライオリティーとMACアドレスによって決定されます。
初期状態では、すべてのVLANがCISTに関連付けられています。VLANをMSTインスタンスに関連付けると、そのVLANは自動的にCISTとの関連付けを解除されます。
なお、CISTとVLANの関連付けがどのようになっているかにかかわりなく、CISTにはすべてのポートが参加しています。実際のところ、MSTP BPDUを送信するのはCISTインスタンスであり、個々のMSTインスタンスはBPDUを送信しません。個々のMSTインスタンスの情報は、MSTP BPDUのデータ部にオプション情報の形で格納されて送信されます。CISTの情報はすべてのMSTP BPDUに含まれていますが、MSTインスタンスの情報は、送信ポートが該当するMSTインスタンスに関連付けられているときだけ付加されます。
基本設定
本製品で、マルチプルスパニングツリープロトコルを使用するための基本設定について説明します。ここでは、次のような構成を例に各スイッチの設定方法を説明します。
この例では、説明のため構成をシンプルにしていますので、各スイッチの設定はほとんど同じで、各MSTインスタンスのルートブリッジ(MSTIリージョナルルート)を決めるブリッジプライオリティーの設定だけが異なっています。
スイッチA
- VLANを定義します。
SwitchA(config)# vlan database SwitchA(config-vlan)# vlan 10,20 SwitchA(config-vlan)# exit
- スイッチポート1.0.1と1.0.2はトランクポート(タグ付きポート)として、両者ともvlan10とvlan20の両方に所属させます。
SwitchA(config)# interface port1.0.1-1.0.2 SwitchA(config-if)# switchport mode trunk SwitchA(config-if)# switchport trunk allowed vlan add 10,20 SwitchA(config-if)# exit
- スイッチポート1.0.3と1.0.4はアクセスポート(タグなしポート)として、それぞれvlan10とvlan20に所属させます。
SwitchA(config)# interface port1.0.3 SwitchA(config-if)# switchport mode access SwitchA(config-if)# switchport access vlan 10 SwitchA(config-if)# exit SwitchA(config)# interface port1.0.4 SwitchA(config-if)# switchport mode access SwitchA(config-if)# switchport access vlan 20 SwitchA(config-if)# exit
- 初期設定ではスパニングツリープロトコルの動作モードがRSTPになっているため、これをMSTPに変更します。これにより、MSTPの動作も自動的に有効になります。
SwitchA(config)# spanning-tree mode mstp
- MSTモードに移行して、MSTリージョンの識別情報を設定します。
この例では、すべてのスイッチを同一のMSTリージョンに所属させるので、リージョン名とリビジョンをすべてのスイッチで同じ値に設定します。ここではリージョン名を「Test」、リビジョンを1とします。
SwitchA(config)# spanning-tree mst configuration SwitchA(config-mst)# region Test SwitchA(config-mst)# revision 1
- MSTインスタンスを作成し、VLANと関連付けます。これにより、各VLAN所属のスイッチポートも自動的に対応するMSTインスタンスと関連付けられます。
SwitchA(config-mst)# instance 1 vlan 10 SwitchA(config-mst)# instance 2 vlan 20
- 各MSTインスタンスにおけるブリッジプライオリティーを設定します。スイッチAはルートブリッジにするつもりがないので、どちらのMSTインスタンスにおいても他のスイッチより低く(値が大きく)なるよう、デフォルト値の32768のままで運用します(以下の2コマンドは実際には不要です)。
SwitchA(config-mst)# instance 1 priority 32768 SwitchA(config-mst)# instance 2 priority 32768 SwitchA(config-mst)# exit
- 端末接続用のポートであるポート1.0.3と1.0.4をエッジポートに設定します。
SwitchA(config)# interface port1.0.3-1.0.4 SwitchA(config-if)# spanning-tree edgeport SwitchA(config-if)# exit
スイッチB(MSTI 1のルートブリッジ)
- VLANを定義します。
SwitchB(config)# vlan database SwitchB(config-vlan)# vlan 10,20 SwitchB(config-vlan)# exit
- スイッチポート1.0.1と1.0.2はトランクポート(タグ付きポート)として、両者ともvlan10とvlan20の両方に所属させます。
SwitchB(config)# interface port1.0.1-1.0.2 SwitchB(config-if)# switchport mode trunk SwitchB(config-if)# switchport trunk allowed vlan add 10,20 SwitchB(config-if)# exit
- スイッチポート1.0.3と1.0.4はアクセスポート(タグなしポート)として、それぞれvlan10とvlan20に所属させます。
SwitchB(config)# interface port1.0.3 SwitchB(config-if)# switchport mode access SwitchB(config-if)# switchport access vlan 10 SwitchB(config-if)# exit SwitchB(config)# interface port1.0.4 SwitchB(config-if)# switchport mode access SwitchB(config-if)# switchport access vlan 20 SwitchB(config-if)# exit
- 初期設定ではスパニングツリープロトコルの動作モードがRSTPになっているため、これをMSTPに変更します。これにより、MSTPの動作も自動的に有効になります。
SwitchB(config)# spanning-tree mode mstp
- MSTモードに移行して、MSTリージョンの識別情報を設定します。
この例では、すべてのスイッチを同一のMSTリージョンに所属させるので、リージョン名とリビジョンをすべてのスイッチで同じ値に設定します。ここではリージョン名を「Test」、リビジョンを1とします。
SwitchB(config)# spanning-tree mst configuration SwitchB(config-mst)# region Test SwitchB(config-mst)# revision 1
- MSTインスタンスを作成し、VLANと関連付けます。これにより、各VLAN所属のスイッチポートも自動的に対応するMSTインスタンスと関連付けられます。
SwitchB(config-mst)# instance 1 vlan 10 SwitchB(config-mst)# instance 2 vlan 20
- 各MSTインスタンスにおけるブリッジプライオリティーを設定します。スイッチBはMSTインスタンス「1」のルートブリッジにするので、MSTインスタンス「1」におけるブリッジプライオリティーを他のスイッチより高く(値を小さく)設定します。
SwitchB(config-mst)# instance 1 priority 4096 SwitchB(config-mst)# instance 2 priority 8192 SwitchB(config-mst)# exit
- 端末接続用のポートであるポート1.0.3と1.0.4をエッジポートに設定します。
SwitchB(config)# interface port1.0.3-1.0.4 SwitchB(config-if)# spanning-tree edgeport SwitchB(config-if)# exit
スイッチC(MSTI 2のルートブリッジ)
- VLANを定義します。
SwitchC(config)# vlan database SwitchC(config-vlan)# vlan 10,20 SwitchC(config-vlan)# exit
- スイッチポート1.0.1と1.0.2はトランクポート(タグ付きポート)として、両者ともvlan10とvlan20の両方に所属させます。
SwitchC(config)# interface port1.0.1-1.0.2 SwitchC(config-if)# switchport mode trunk SwitchC(config-if)# switchport trunk allowed vlan add 10,20 SwitchC(config-if)# exit
- スイッチポート1.0.3と1.0.4はアクセスポート(タグなしポート)として、それぞれvlan10とvlan20に所属させます。
SwitchC(config)# interface port1.0.3 SwitchC(config-if)# switchport mode access SwitchC(config-if)# switchport access vlan 10 SwitchC(config-if)# exit SwitchC(config)# interface port1.0.4 SwitchC(config-if)# switchport mode access SwitchC(config-if)# switchport access vlan 20 SwitchC(config-if)# exit
- 初期設定ではスパニングツリープロトコルの動作モードがRSTPになっているため、これをMSTPに変更します。これにより、MSTPの動作も自動的に有効になります。
SwitchC(config)# spanning-tree mode mstp
- MSTモードに移行して、MSTリージョンの識別情報を設定します。
この例では、すべてのスイッチを同一のMSTリージョンに所属させるので、リージョン名とリビジョンをすべてのスイッチで同じ値に設定します。ここではリージョン名を「Test」、リビジョンを1とします。
SwitchC(config)# spanning-tree mst configuration SwitchC(config-mst)# region Test SwitchC(config-mst)# revision 1
- MSTインスタンスを作成し、VLANと関連付けます。これにより、各VLAN所属のスイッチポートも自動的に対応するMSTインスタンスと関連付けられます。
SwitchC(config-mst)# instance 1 vlan 10 SwitchC(config-mst)# instance 2 vlan 20
- 各MSTインスタンスにおけるブリッジプライオリティーを設定します。スイッチCはMSTインスタンス「2」のルートブリッジにするので、MSTインスタンス「2」におけるブリッジプライオリティーを他のスイッチより高く(値を小さく)設定します。
SwitchC(config-mst)# instance 1 priority 8192 SwitchC(config-mst)# instance 2 priority 4096 SwitchC(config-mst)# exit
- 端末接続用のポートであるポート1.0.3と1.0.4をエッジポートに設定します。
SwitchC(config)# interface port1.0.3-1.0.4 SwitchC(config-if)# spanning-tree edgeport SwitchC(config-if)# exit
以上で設定は完了です。
スイッチポートからMSTインスタンスの割り当てを解除するには、spanning-tree mst instanceコマンドをno形式で実行します。
awplus(config)# interface port1.0.12 awplus(config-if)# no spanning-tree mst instance 2
MSTインスタンスとVLANの関連付けを解除するには、instance vlanコマンドをno形式で実行します。
awplus(config-mst)# no instance 1 vlan 10
MSTインスタンス内で任意のスイッチをルートブリッジ(MSTIリージョナルルート)にするには、該当MSTインスタンスにおける各スイッチのブリッジプライオリティーを調整して、MSTIリージョナルルートのプライオリティー値がもっとも小さく(優先度が高く)なるよう設定します。MSTインスタンスにおけるブリッジプライオリティーの設定は、instance priorityコマンドで行います。
awplus(config-mst)# instance 1 priority 4096 awplus(config-mst)# instance 2 priority 8192
同コマンドで設定できる値の範囲は0~61440ですが、実際に使用される値は4096の倍数に丸められます(指定値が4096の倍数でない場合、指定値よりも小さい直近の倍数が使われます)。初期値は32768です。
MSTPの全体設定を変更するには、次に示すグローバルコンフィグモードのコマンドを使います。
- MSTリージョン名の設定:regionコマンド
- MSTリージョンのリビジョン設定:revisionコマンド
- MSTインスタンスとVLANとの関連付け設定:instance vlanコマンド
- MSTインスタンスにおけるブリッジプライオリティーの設定:instance priorityコマンド
- MSTP BPDUの最大ホップ数の設定:spanning-tree max-hopsコマンド
MSTPのスイッチポート固有設定を変更するには、次に示すインターフェースモードのコマンドを使います。
- スイッチポートへのMSTインスタンス割り当て設定:spanning-tree mst instanceコマンド
- MSTインスタンスにおけるパスコストの設定:spanning-tree mst instance path-costコマンド
- MSTインスタンスにおけるポートプライオリティーの設定:spanning-tree mst instance priorityコマンド
CIST(インスタンス0)の全体設定を変更するには、次に示すグローバルコンフィグモードのコマンドを使います(STP/RSTPの設定と同じです)。
- ブリッジプライオリティーの設定:spanning-tree priorityコマンド(グローバルコンフィグモード)
- フォワードディレイタイムの設定:spanning-tree forward-timeコマンド
- ハロータイムの設定:spanning-tree hello-timeコマンド
- 最大エージタイムの設定:spanning-tree max-ageコマンド
CIST(インスタンス0)におけるスイッチポート固有設定を変更するには、次に示すインターフェースモードのコマンドを使います(STP/RSTPの設定と同じです)。
- パスコストの設定:spanning-tree path-costコマンド
- ポートプライオリティーの設定:spanning-tree priorityコマンド(インターフェースモード)
- リンクタイプの設定:spanning-tree link-typeコマンド
- エッジポート自動検出の有効・無効:spanning-tree autoedgeコマンド
- エッジポートの手動設定:spanning-tree edgeportコマンド、または、spanning-tree portfastコマンド
- BPDUバージョンの指定:spanning-tree force-versionコマンド
MSTPおよびCISTの全般的な情報を確認するには、show spanning-tree mstコマンドを使います。
awplus> show spanning-tree mst
% 1: Bridge up - Spanning Tree Enabled
% 1: CIST Root Path Cost 0 - CIST Root Port 0 - CIST Bridge Priority 32768
% 1: Forward Delay 15 - Hello Time 2 - Max Age 20 - Max-hops 20
% 1: CIST Root Id 80000000cd240367
% 1: CIST Reg Root Id 80000000cd240367
% 1: CIST Bridge Id 80000000cd240367
% 1: CIST 2 topology changes - last topology change Mon Jan 30 06:10:23 2012
% 1: portfast bpdu-filter disabled
% 1: portfast bpdu-guard disabled
% 1: portfast errdisable timeout disabled
% 1: portfast errdisable timeout interval 300 sec
%
% Instance VLAN
% 0: 1
% 1: 10 (port1.0.3)
% 1: 10 (port1.0.2)
% 1: 10 (port1.0.1)
% 2: 20 (port1.0.4)
% 2: 20 (port1.0.2)
% 2: 20 (port1.0.1)
CISTにおける各ポートの情報を確認するには、show spanning-tree mstコマンドでdetailオプションを指定します。
awplus> show spanning-tree mst detail
% 1: Bridge up - Spanning Tree Enabled
% 1: CIST Root Path Cost 0 - CIST Root Port 0 - CIST Bridge Priority 32768
% 1: Forward Delay 15 - Hello Time 2 - Max Age 20 - Max-hops 20
% 1: CIST Root Id 80000000cd240367
% 1: CIST Reg Root Id 80000000cd240367
% 1: CIST Bridge Id 80000000cd240367
% 1: CIST 2 topology changes - last topology change Mon Jan 30 06:10:23 2012
% 1: portfast bpdu-filter disabled
% 1: portfast bpdu-guard disabled
% 1: portfast errdisable timeout disabled
% 1: portfast errdisable timeout interval 300 sec
% port1.0.1: Port 5001 - Id 8389 - Role Designated - State Forwarding
% port1.0.1: Designated External Path Cost 0 -Internal Path Cost 0
% port1.0.1: Configured Path Cost 200000 - Add type Explicit ref count 3
% port1.0.1: Designated Port Id 8389 - CIST Priority 128 -
% port1.0.1: CIST Root 80000000cd240367
% port1.0.1: Regional Root 80000000cd240367
% port1.0.1: Designated Bridge 80000000cd240367
% port1.0.1: Message Age 0 - Max Age 20
% port1.0.1: CIST Hello Time 2 - Forward Delay 15
% port1.0.1: CIST Forward Timer 0 - Msg Age Timer 0 - Hello Timer 0 - topo cha
nge timer 0
% port1.0.1: forward-transitions 3
% port1.0.1: Version Multiple Spanning Tree Protocol - Received MSTP - Send MS
TP
% port1.0.1: No portfast configured - Current portfast off
% port1.0.1: portfast bpdu-guard default - Current portfast bpdu-guard off
% port1.0.1: portfast bpdu-filter default - Current portfast bpdu-filter off
% port1.0.1: no root guard configured - Current root guard off
% port1.0.1: Configured Link Type point-to-point - Current point-to-point
%
% port1.0.2: Port 5002 - Id 838a - Role Designated - State Forwarding
...
CISTだけでなく、割り当てられているMSTインスタンスにおけるポートの情報を確認するには、show spanning-tree mstコマンドでdetailオプションだけでなく、interfaceパラメーターでスイッチポートのインターフェース名も指定します。
awplus> show spanning-tree mst detail interface port1.0.1
% 1: Bridge up - Spanning Tree Enabled
% 1: CIST Root Path Cost 0 - CIST Root Port 0 - CIST Bridge Priority 32768
% 1: Forward Delay 15 - Hello Time 2 - Max Age 20 - Max-hops 20
% 1: CIST Root Id 80000000cd240367
% 1: CIST Reg Root Id 80000000cd240367
% 1: CIST Bridge Id 80000000cd240367
% 1: CIST 2 topology changes - last topology change Mon Jan 30 06:10:23 2012
% 1: portfast bpdu-filter disabled
% 1: portfast bpdu-guard disabled
% 1: portfast errdisable timeout disabled
% 1: portfast errdisable timeout interval 300 sec
% port1.0.1: Port 5001 - Id 8389 - Role Designated - State Forwarding
% port1.0.1: Designated External Path Cost 0 -Internal Path Cost 0
% port1.0.1: Configured Path Cost 200000 - Add type Explicit ref count 3
% port1.0.1: Designated Port Id 8389 - CIST Priority 128 -
% port1.0.1: CIST Root 80000000cd240367
% port1.0.1: Regional Root 80000000cd240367
% port1.0.1: Designated Bridge 80000000cd240367
% port1.0.1: Message Age 0 - Max Age 20
% port1.0.1: CIST Hello Time 2 - Forward Delay 15
% port1.0.1: CIST Forward Timer 0 - Msg Age Timer 0 - Hello Timer 0 - topo cha
nge timer 0
% port1.0.1: forward-transitions 3
% port1.0.1: Version Multiple Spanning Tree Protocol - Received MSTP - Send MS
TP
% port1.0.1: No portfast configured - Current portfast off
% port1.0.1: portfast bpdu-guard default - Current portfast bpdu-guard off
% port1.0.1: portfast bpdu-filter default - Current portfast bpdu-filter off
% port1.0.1: no root guard configured - Current root guard off
% port1.0.1: Configured Link Type point-to-point - Current point-to-point
%
% Instance 1: Vlans: 10
% 1: MSTI Root Path Cost 0 -MSTI Root Port 0 - MSTI Bridge Priority 4096
% 1: MSTI Root Id 10010000cd240367
% 1: MSTI Bridge Id 10010000cd240367
% port1.0.1: Port 5001 - Id 8389 - Role Designated - State Forwarding
% port1.0.1: Designated Internal Path Cost 0 - Designated Port Id 8389
% port1.0.1: Configured Internal Path Cost 200000
% port1.0.1: Configured CST External Path cost 200000
% port1.0.1: CST Priority 128 - MSTI Priority 128
% port1.0.1: Designated Root 10010000cd240367
% port1.0.1: Designated Bridge 10010000cd240367
% port1.0.1: Message Age 0 - Max Age 0
% port1.0.1: Hello Time 2 - Forward Delay 15
% port1.0.1: Forward Timer 0 - Msg Age Timer 0 - Hello Timer 0
% Instance 2: Vlans: 20
% 1: MSTI Root Path Cost 2000 -MSTI Root Port 5002 - MSTI Bridge Priority 8192
% 1: MSTI Root Id 10020000f4272c74
% 1: MSTI Bridge Id 20020000cd240367
% port1.0.1: Port 5001 - Id 8389 - Role Alternate - State Discarding
% port1.0.1: Designated Internal Path Cost 0 - Designated Port Id 8389
% port1.0.1: Configured Internal Path Cost 200000
% port1.0.1: Configured CST External Path cost 200000
% port1.0.1: CST Priority 128 - MSTI Priority 128
% port1.0.1: Designated Root 10020000f4272c74
% port1.0.1: Designated Bridge 10020000f4272c74
% port1.0.1: Message Age 0 - Max Age 0
% port1.0.1: Hello Time 2 - Forward Delay 15
% port1.0.1: Forward Timer 0 - Msg Age Timer 4 - Hello Timer 0
MSTPリージョンの設定を確認するには、show spanning-tree mst configコマンドを使います。
awplus> show spanning-tree mst config
%
% MSTP Configuration Information for bridge 1 :
%------------------------------------------------------
% Format Id : 0
% Name : Test
% Revision Level : 1
% Digest : 0x9357EBB7A8D74DD5FEF4F2BAB50531AA
%------------------------------------------------------
MSTインスタンスの全般的な情報と、該当MSTインスタンスにおけるスイッチポートの情報を確認するには、show spanning-tree mst instanceコマンドを使います。
awplus> show spanning-tree mst instance 1
% 1: MSTI Root Path Cost 0 - MSTI Root Port 0 - MSTI Bridge Priority 4096
% 1: MSTI Root Id 10010000cd240367
% 1: MSTI Bridge Id 10010000cd240367
% 1: 1 topology changes - last topology change Mon Jan 30 06:11:45 2012
% port1.0.3: Port 5003 - Id 838b - Role Disabled - State Discarding
% port1.0.3: Designated Internal Path Cost 0 - Designated Port Id 838b
% port1.0.3: Configured Internal Path Cost 20000000
% port1.0.3: Configured CST External Path cost 20000000
% port1.0.3: CST Priority 128 - MSTI Priority 128
% port1.0.3: Designated Root 10010000cd240367
% port1.0.3: Designated Bridge 10010000cd240367
% port1.0.3: Message Age 0 - Max Age 0
% port1.0.3: Hello Time 2 - Forward Delay 15
% port1.0.3: Forward Timer 0 - Msg Age Timer 0 - Hello Timer 0
%
% port1.0.2: Port 5002 - Id 838a - Role Designated - State Forwarding
% port1.0.2: Designated Internal Path Cost 0 - Designated Port Id 838a
% port1.0.2: Configured Internal Path Cost 200000
% port1.0.2: Configured CST External Path cost 200000
% port1.0.2: CST Priority 128 - MSTI Priority 128
% port1.0.2: Designated Root 10010000cd240367
% port1.0.2: Designated Bridge 10010000cd240367
% port1.0.2: Message Age 0 - Max Age 0
% port1.0.2: Hello Time 2 - Forward Delay 15
% port1.0.2: Forward Timer 0 - Msg Age Timer 0 - Hello Timer 1
%
% port1.0.1: Port 5001 - Id 8389 - Role Designated - State Forwarding
% port1.0.1: Designated Internal Path Cost 0 - Designated Port Id 8389
% port1.0.1: Configured Internal Path Cost 200000
% port1.0.1: Configured CST External Path cost 200000
% port1.0.1: CST Priority 128 - MSTI Priority 128
% port1.0.1: Designated Root 10010000cd240367
% port1.0.1: Designated Bridge 10010000cd240367
% port1.0.1: Message Age 0 - Max Age 0
% port1.0.1: Hello Time 2 - Forward Delay 15
% port1.0.1: Forward Timer 0 - Msg Age Timer 0 - Hello Timer 0