内容

概要

前提条件

要件

使用するコンポーネント

背景説明

用語

制約事項

トラブルシュート

MST（単一領域）

トポロジ

コンフィギュレーション

検証

リージョン間の同期

トポロジ

検証

デバッグ

PVSTシミュレーションの失敗

PVST BPDUとMST BPDU

トポロジ

検証

デバッグ

P2Pクレーム

トポロジ

説明

MSTアプローチ

関連情報

概要

このドキュメントでは、PVSTまたはその他のリージョンを使用するトポロジでMSTがどのように動作するかを理解するために必要な基本概念について説明します。

前提条件

要件

次の項目に関する知識があることが推奨されます。

- Rapid-PVST(Rapid Per VLAN Spanning Tree)

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。

- Catalyst 9300.

- 17.3以降の列車。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期（デフォルト）設定の状態から起動しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

関連製品

このドキュメントは、次のハードウェアでも使用できます。

- すべてのCatalyst 9000ファミリ。

背景説明

用語

トラブルシューティングを開始して適用する前に、次の用語を考慮してください。

概念

説明

STPインスタンス

インスタンスは、CPUで実行される1つのセッションです。

PVSTでは、1つのVLANはのインスタンスです。

MSTでは、インスタンスはVLANのグループです。このドキュメントでは、この意味に基づいて「インスタンス」という用語を使用します。

IST

IST(Internal Spanning Tree)はInstance 0またはMSTI0：とも呼ばれます。

– これは特殊な例です。

- MSTI 0は、L2ドメイン全体で1つのループのないトポロジを作成するために使用されます。

- MSTが他のバージョンのスパニングツリーを実行する他の領域またはスイッチと通信する場合、ISTまたはMSTI0の設定が通信に使用されます。

- MSTI 0は唯一のBPDUであり、MSTI 0のスイッチ選出ルートは、すべての領域のルートになるか、MST領域内の領域ルートに関する情報を伝送する役割を担います

ISTは、BPDUを送受信する唯一のスパニングツリーインスタンスです。他のすべてのスパニングツリーインスタンス情報は、MSTP BPDU内にカプセル化されたMレコードに含まれています。MSTP BPDUはすべてのインスタンスの情報を伝送するため。タイマー関連のパラメータを持つ唯一のインスタンスです。MSTが他の領域やバージョンのスパニングツリーと通信する場合、ISTまたはMSTI0の設定が通信に使用されます。

MSTI

MSTIはMultiple Spanning Tree Instancesの略です。1 〜 15

Cisco の実装では、1 つの IST（インスタンス 0）と 15 の MSTI の合計 16 のインスタンスをサポートしています。

地域

MSTを実行するスイッチグループ。これらはすべて同じMST設定を持ちます。

CISTおよびCST

- Common Spanning Treeは、MST領域とシングルスパニングツリーを相互接続します。

- Common and Internal Spanning Treeは、各MST領域のISTとCommon Spanning Treeの集まりです。

地域ルート

これは、インスタンス0を除くリージョン内の各インスタンスの選択プロセスです。

必要に応じて、各インスタンスのスパニングツリー領域に異なるルートを設定できます。

これは、通常のスパニングツリーの選択を実行するために必要な情報を持つIST BPDU内の情報と見なされる場合に実行されます。

CISTルートブリッジは、先行標準の実装ではISTマスターと呼ばれていました。CISTルートブリッジがリージョン内にある場合、リージョナルルートはCISTルートブリッジです。

それ以外の場合、地域ルートは地域のCISTルートに最も近いスイッチです。リージョナルルートは、ISTのルートブリッジとして機能します。

Mレコード

BPDUは1つしかなく、そのBPDUはインスタンス0を収束するために必要な情報を反映するため、他のインスタンスのルートを形成するための別のメカニズムが必要です。

これをMレコードと呼びます。各Mレコードの内部には、個々のインスタンスのスパニングツリー情報がすべて含まれます。

この情報は、IST BPDU内のTLVで伝送されます。

争議

Disputeメカニズムは、組み込みの単方向リンク検出メカニズムです。これは、802.1d（RSTPは実際には2004年に802.1d標準に統合されました）またはPVSTの元のバージョンでは使用できません。

クレームメカニズムは、指定された状態でラーニングおよびフォワーディング状態にある不良BPDUを受信したときにトリガーされます。

これは単方向リンクを示し、ループを防ぐために、受信ポートはリンクをブロックします。

提案/合意

このプロポーザル合意メカニズムは、RSTPの最も重要な変更の1つです。

これは、高速スパニングツリーが実際に高速になることを可能にします。

プロポーザル合意プロセスの簡単な説明は、2つのネイバーが起動すると、両方がプロポーザルビットを使用してBPDU送信を開始することです。

ピアの1つがアグリーメントに移行すると（ネイバーがルートへの上位パスとして受け入れられると宣言します）、リンクはただちにフォワーディングステートに移行します。

BPDUを送信する両方のポートから開始します。代表ビットと提案ビットが設定されたルートであると主張します。

下位スイッチがこのポートがルートブリッジではなく、ルートへのベストパスを持つことを認識すると、プロポーザルビットが設定されなくなり、ルート状態とフォワーディングに移行します。

共有セグメント

RSTP/MSTは、半二重リンクを「共有」状態にします。つまり、プロポーザル契約プロセスは発生しません。

このシーケンスはP2Pリンクを迅速に起動することを目的としているため、順方向の状態への移行が早すぎるとループが発生する可能性があります。これは、スパニングツリーのshowコマンドで確認できます

インターフェイスでspanning-tree link-type point-to-pointと入力して、強制的にP2P状態にすることができます。慎重に使用してください。

複数の地域

・MST構成が一致しない場合、複数のリージョンが決定されます。

・CISTはMSTI0 BPDUを介してリージョン間で選出される

・他のデバイスに対して、複数のリージョンがリージョンごとに1つの論理スイッチとして表示される。

境界ポート

これらのポートはRegionの制限に基づいており、通常、これらのポートでは非MST BPDUが受信されるため、このポートではMSTは使用できません。

PVSTシミュレーションは、MSTとPVSTが同じネットワーク上で動作できる方法です。

PVST シミュレーション

ネットワークのトポロジの移行や変更など、特定のシナリオでは、複数のSTPフレーバーが一緒に検出され、MST領域が別のドメインに接続されます。

たとえば、PVST+からMSTに変更されるネットワークとすべてのスイッチを同時に変更することはできません。また、MSTとPVST+を連携させる必要もあります。

PVST+はMST BPUを処理できないため、PVST+とMST BPUの間には互換性メカニズムがあり、両方のプロトコルが相互対話できます。この互換性メカニズムはPVSTシミュレーションと呼ばれます。

PVSTシミュレーションの失敗

PVSTシミュレーションに記載されているルールが満たされていない場合

制約事項

- PVST+、Rapid PVST+、およびMSTPがサポートされていますが、一度にアクティブにできるバージョンは1つだけです。（たとえば、すべてのVLANがPVST+を実行するか、すべてのVLANがRapid PVST+を実行するか、すべてのVLANがMSTPを実行します）。

- MST設定のVLAN Trunking Protocol(VTP)伝播はサポートされていません。

トラブルシュート

目標は、MST領域を領域外から見て、仮想CSTブリッジのように動作させることです。

RootIDとRoot Pathのコストは変更されないため、別のリージョンまたはPVSTドメイン内にある他のスイッチは、MSTリージョンを1つのスイッチとしてのみ参照します。

MST（単一領域）

トポロジ

コンフィギュレーション

適切に収束するには、MST領域の下にあるすべてのスイッチで、これらの3つの属性を同じ方法で設定する必要があります。コマンドはMSTコンフィギュレーションモードで適用されます。

- [名前(Name)]

- リビジョン番号

- VLANからインスタンスへのマッピング

spanning-tree mst configuration

name <region name>

revision <number>

instance <number> vlan <vlan number>

次のコマンドを使用して、属性の設定を検証します。

show running-config | section span

例：リージョン1のスイッチ1、2、および3の属性設定

R1-SW1

R1-SW1#show running-config | section spann

spanning-tree mode mst

spanning-tree extend system-id

spanning-tree mst configuration

name R1               <---

revision 1            <---

instance 1 vlan 3-4   <---

R1-SW2

R1-SW2#show running-config | section spann

spanning-tree mode mst

spanning-tree extend system-id

spanning-tree mst configuration

name R1

revision 1

instance 1 vlan 3-4

R1-SW3

R1-SW3#show running-config | section spann

spanning-tree mode mst

spanning-tree extend system-id

spanning-tree mst configuration

name R1

revision 1

instance 1 vlan 3-4

検証

MSTの移行中は、STPモードを変更しなくてもMSTパラメータを設定できます。

設定ミスによるネットワークの中断を回避するには、次の推奨事項に従ってください。

- コミットする前にMST設定を確認します。

- コミット後のMST設定の確認

コミットする前にMST設定を確認します。

このチェックは、スパニングツリーモードmstがまだ適用されていない場合に行われます。

show spanning-tree mst

show current

show spanning-tree mst configuration digest

注:show currentは、MSTコンフィギュレーションモード(spanning-tree mst configuration submode)でのみ使用できます。

例：リージョン1のスイッチ1の場合

STPモードがまだMSTモードでないことを確認します。

R1-SW1#show spanning-tree mst

% Switch is not in mst mode   <--

現在のMST設定の確認

R1-SW1(config-mst)#show current

Current MST configuration

Name      [R1]

Revision  1     Instances configured 2

Instance  Vlans mapped

--------  ---------------------------------------------------------------------

0         1-2,6-4094

1         3-4

-------------------------------------------------------------------------------

注:show currentは、MSTコンフィギュレーションモードでのみ使用できます。

注:show span mst configurationとshow currentは同等のコマンドです。

ダイジェストハッシュの確認

R1-SW1#show spanning-tree mst configuration digest

% Switch is not in mst mode                          <--

Name [R1]

Revision 1 Instances configured 2

Digest 0xA423B8DBB209CCF6560F55618AB58726            <--

Pre-std Digest 0x8C9BE88BBC9B84CB8AED635EE008436A

注：ダイジェスト出力により、スイッチがすでにMSTモードになっているかどうかを確認できます。MSTモードがまだ有効になっていなくても、ダイジェストハッシュは変更されません。

注:Catalyst 9000スイッチでは、IEEE標準のMSTプロトコルが実行されます。したがって、Pre-std Digestの代わりにDigestハッシュに注目する必要があります

コミット後のMST設定の確認

show current

show pending

show spanning-tree mst configuration digest

abort

注:show pending(およびshow current)は、MSTコンフィギュレーションモードでのみ使用できます

show currentの出力には、MSTサブモードを終了した後のMST設定（設定の変更が適用された場合）が表示されます。一方、show pendingの出力には、最近設定されたが適用されていないMST設定が表示されます。

何らかの理由で設定変更を元に戻す必要があり、MSTサブモードのままである場合は、abortコマンドを適用できます。このコマンドは、変更を適用せずにMSTサブモードを終了します。

注:show pending(およびshow current)は、MSTコンフィギュレーションモードでのみ使用できます

例：リージョン1のスイッチ1の場合

現在の設定と保留中の設定が同じであることに注意してください。これは、変更が行われていないことを意味します。

ダイジェストハッシュは、前の出力で検証されたものと同じです。

R1-SW1(config)#spanning-tree mst configuration

R1-SW1(config-mst)#show current

Current MST configuration

Name      [R1]

Revision  1     Instances configured 2

Instance  Vlans mapped

--------  ---------------------------------------------------------------------

0         1-2,5-4094

1         3-4

-------------------------------------------------------------------------------

R1-SW1(config-mst)#show pending

Pending MST configuration

Name      [R1]

Revision  1     Instances configured 2

Instance  Vlans mapped

--------  ---------------------------------------------------------------------

0         1-2,5-4094

1         3-4

-------------------------------------------------------------------------------

R1-SW1(config-mst)#do show spanning-tree mst configuration digest

Name      [R1]

Revision  1     Instances configured 2

Digest          0xA423B8DBB209CCF6560F55618AB58726   <--

Pre-std Digest  0x8C9BE88BBC9B84CB8AED635EE008436A

新しいインスタンスが作成され、それにVLAN 5がマッピングされます。今回は、show currentの出力には新しいインスタンスが最近条件付きで表示されませんが、show pendingでは表示されます。これは予想どおりの結果です。

ダイジェストハッシュが変更されていないことに注意してください。これは、新しい設定がMSTコンフィギュレーションモード(spanning-tree mst configurationサブモード)を終了するときにのみ適用されるためです

R1-SW1(config-mst)#instance 2 vlan 5       <--

R1-SW1(config-mst)#show current

Current MST configuration

Name      [R1]

Revision  1     Instances configured 2

Instance  Vlans mapped

--------  ---------------------------------------------------------------------

0         1-2,5-4094

1         3-4

-------------------------------------------------------------------------------

R1-SW1(config-mst)#show pending

Pending MST configuration

Name      [R1]

Revision  1     Instances configured 3

Instance  Vlans mapped

--------  ---------------------------------------------------------------------

0         1-2,6-4094

1         3-4

2         5     <--

-------------------------------------------------------------------------------

R1-SW1(config-mst)#do show spanning-tree mst configuration digest

Name      [R1]

Revision  1     Instances configured 2

Digest          0xA423B8DBB209CCF6560F55618AB58726     <--

Pre-std Digest  0x8C9BE88BBC9B84CB8AED635EE008436A

MSTコンフィギュレーションモードを終了すると、変更が反映されます。ダイジェストハッシュも、新しく行われた変更に合わせて再計算されます。

R1-SW1(config-mst)#exit

R1-SW1(config)#spanning-tree mst configuration

R1-SW1(config-mst)#show current

Current MST configuration

Name      [R1]

Revision  1     Instances configured 3

Instance  Vlans mapped

--------  ---------------------------------------------------------------------

0         1-2,6-4094

1         3-4

2         5       <--

-------------------------------------------------------------------------------

R1-SW1(config-mst)#show pending

Pending MST configuration

Name      [R1]

Revision  1     Instances configured 3

Instance  Vlans mapped

--------  ---------------------------------------------------------------------

0         1-2,6-4094

1         3-4

2         5     <--

-------------------------------------------------------------------------------

R1-SW1(config-mst)#do show spanning-tree mst configuration digest

Name      [R1]

Revision  1     Instances configured 3

Digest          0x083305551908B9A2CC50B482DC577B8F     <--

Pre-std Digest  0xA8AC09BDF2942058FAF4CE727C9D258F

これらのコマンドは、MSTパラメータとコンバージェンスを検証するのに役立ちます。また、MSTタイマーやコストなどに関する情報も提供します。

show spanning-tree pathcost method

show spanning-tree root

show spanning-tree summary

show spanning-tree mst

show spanning-tree interface <interface>

注:show spanning-tree mstとshow spanning-tree は同等です

例：リージョン1のスイッチ1の場合

パスコストを測定する方法には、ショート（レガシー）とロングの2つがあります。レイヤ2ネットワークでは常に同じレイヤであることが望まれます。長いパスコスト方式を実行する場合は、STP上で動作するすべてのスイッチに従って実行します。

R1-SW1#show spanning-tree pathcost method

Spanning tree default pathcost method used is long  <--

この出力では、パスコスト方式を確認できるだけでなく、スイッチで標準のMSTプロトコルが実行され、拡張システムID（MST使用時には必須）が使用されていることを確認できます。

R1-SW1#show spanning-tree summary

Switch is in mst mode (IEEE Standard)               <--

Root bridge for: none

EtherChannel misconfig guard            is enabled

Extended system ID                      is enabled  <--

Portfast Default                        is disabled

PortFast BPDU Guard Default            is disabled

Portfast BPDU Filter Default           is disabled

Loopguard Default                      is disabled

UplinkFast                              is disabled

BackboneFast                            is disabled

Configured Pathcost method used is long             <--

Name                   Blocking Listening Learning Forwarding STP Active

---------------------- -------- --------- -------- ---------- ----------

MST0                         0         0        0          3          3

MST1                         0         0        0          3          3

---------------------- -------- --------- -------- ---------- ----------

2 msts                       0         0        0          6          6

ブリッジとルートID、優先順位、コスト、ポートの役割とステータス、およびVLANマッピングは、次の出力で確認できます。

R1-SW1#show spanning-tree mst

##### MST0    vlans mapped:   1-2,5-4094

Bridge        address 3473.2db8.be80  priority      32768 (32768 sysid 0)

Root          address f04a.021e.9500  priority      24576 (24576 sysid 0)

port    Gi1/0/2         path cost     0

Regional Root address f04a.021e.9500  priority      24576 (24576 sysid 0)

internal cost 20000     rem hops 19

Operational   hello time 2 , forward delay 15, max age 20, txholdcount 6

Configured    hello time 2 , forward delay 15, max age 20, max hops    20

Interface                        Role Sts Cost      Prio.Nbr Type

----------------                 ---- --- --------- -------- --------------------------------

Gi1/0/1                          Desg FWD 20000     128.1    P2p

Gi1/0/2                          Root FWD 20000     128.2    P2p

Gi1/0/4                          Desg FWD 20000     128.4    P2p

##### MST1    vlans mapped:   3-4

Bridge        address 3473.2db8.be80  priority      32769 (32768 sysid 1)

Root          address f04a.021e.9500  priority      24577 (24576 sysid 1)

port    Gi1/0/2         cost          20000     rem hops 19

Interface                        Role Sts Cost      Prio.Nbr Type

----------------                 ---- --- --------- -------- --------------------------------

Gi1/0/1                          Desg FWD 20000     128.1    P2p

Gi1/0/2                          Root FWD 20000     128.2    P2p

Gi1/0/4                          Desg FWD 20000     128.4    P2p

このコマンドは、インスタンス単位ではなくインターフェイスの観点から、STPロールのステータス、プライオリティ、およびリンクタイプを表示します。

R1-SW1#show spanning-tree interface gigabitEthernet 1/0/1

Mst Instance        Role Sts Cost      Prio.Nbr Type

------------------- ---- --- --------- -------- --------------------------------

MST0                Desg FWD 20000     128.1    P2p

MST1                Desg FWD 20000     128.1    P2p

R1-SW1#show spanning-tree interface gigabitEthernet 1/0/2

Mst Instance        Role Sts Cost      Prio.Nbr Type

------------------- ---- --- --------- -------- --------------------------------

MST0                Root FWD 20000     128.2    P2p

MST1                Root FWD 20000     128.2    P2p

リージョン間の同期

リージョン2がトポロジに追加されました。目的は、2つの異なる領域がどのように相互作用し、収束するかを確認することです。この通信では、境界スイッチのみが行われます。

リンクの両端が同じ通信プロセスを持つため。このセクションでは、R1-SW2のshow spanning-tree mstと、パケットキャプチャから取得された2つのBPDUの出力に焦点を当てています。

トポロジ

検証

これは、領域1からのR1-SW2と領域2からのR2-SW1の間の最初の通信です。両方のデバイス間で接続が確立されるとすぐに、BPDUが送信されます。

初期状態がブロッキング(BLK)であるR2-SW1からのインターフェイスGi1/0/2に注目します。選出プロセスの時点で、スイッチポートがBLK状態になることに注意してください。

R2-SW1#show spanning-tree mst

MST0

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

------------------- ---- --- --------- -------- --------------------------------

Gi1/0/2             Desg BLK 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

MST1

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

------------------- ---- --- --------- -------- --------------------------------

Gi1/0/2             Desg BLK 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

パケットキャプチャでは、この最初のBPDUが確認され、ポートロールのフラグは指定フラグとプロポーザルとして示されます。

つまり、通信はすでに開始され、両方のポートが同期プロセスを開始して契約を確立し、ポートのロールと状態を設定します。すべては提案メカニズムから始まります。

IEEE 802.3 Ethernet

Destination: Spanning-tree-(for-bridges)_00 (01:80:c2:00:00:00)

Source: Cisco_05:d6:02 (f0:4a:02:05:d6:02)

Length: 121

Logical-Link Control

Spanning Tree Protocol

Protocol Identifier: Spanning Tree Protocol (0x0000)

Protocol Version Identifier: Multiple Spanning Tree (3)

BPDU Type: Rapid/Multiple Spanning Tree (0x02)

BPDU flags: 0x0e, Port Role: Designated, Proposal

0... .... = Topology Change Acknowledgment: No

.0.. .... = Agreement: No

..0. .... = Forwarding: No

...0 .... = Learning: No

.... 11.. = Port Role: Designated (3)

.... ..1. = Proposal: Yes

.... ...0 = Topology Change: No

Root Identifier: 24576 / 0 / f0:4a:02:1e:95:00

Root Path Cost: 20004

Bridge Identifier: 32768 / 0 / a0:f8:49:10:47:80

Port identifier: 0x8002

Message Age: 2

Max Age: 20

Hello Time: 2

Forward Delay: 15

Version 1 Length: 0

Version 3 Length: 80

MST Extension

スイッチ間でBPDUが交換されると、状態はラーニング(LRN)に変わります。

R2-SW1が前述の最初のBPDUを受信した後、LRN状態がブロッキングステートの後の最初の移行状態になります。

R2-SW1#show spanning-tree mst

MST0

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

------------------- ---- --- --------- -------- --------------------------------

Gi1/0/2             Desg LRN 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

MST1

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

------------------- ---- --- --------- -------- --------------------------------

Gi1/0/2             Desg LRN 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

ピアの1つがアグリーメントを確立し、同期が行われると（ネイバーがルートへの上位パスとして受け入れられる）、リンクは即座にフォワーディングステートに移行します。

ここでは、学習として設定されたフラグを使用してBPDUを観察できます。また、ポートがLRNからフォワーディング(FWR)に移行するとすぐにトリガーされるトポロジ変更通知(TCN)フラグも含まれます。

この状態では、MSTはポートがフレーム転送に関与しているかどうかを判断します（状態BLK）。

IEEE 802.3 Ethernet

Logical-Link Control

Spanning Tree Protocol

Protocol Identifier: Spanning Tree Protocol (0x0000)

Protocol Version Identifier: Multiple Spanning Tree (3)

BPDU Type: Rapid/Multiple Spanning Tree (0x02)

BPDU flags: 0x3d, Forwarding, Learning, Port Role: Designated, Topology Change

0... .... = Topology Change Acknowledgment: No

.0.. .... = Agreement: No

..1. .... = Forwarding: Yes

...1 .... = Learning: Yes

.... 11.. = Port Role: Designated (3)

.... ..0. = Proposal: No

.... ...1 = Topology Change: Yes

Root Identifier: 24576 / 0 / f0:4a:02:1e:95:00

Root Path Cost: 20004

Bridge Identifier: 32768 / 0 / a0:f8:49:10:47:80

Port identifier: 0x8002

Message Age: 2

Max Age: 20

Hello Time: 2

Forward Delay: 15

Version 1 Length: 0

Version 3 Length: 80

MST Extension

最後に、スイッチポートは、ネットワークトポロジの作成に関係するすべての状態を通過した後、フォワーディングステートに入ります。

これは、指定されたロール(Desg)とステータスFDWを持つポートの最後の状態です。

R2-SW1#show spanning-tree mst

MST0

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

------------------- ---- --- --------- -------- --------------------------------

Gi1/0/2             Desg FWD 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

MST1

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

------------------- ---- --- --------- -------- --------------------------------

Gi1/0/2             Desg FWD 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

デバッグ

これらのバグは、R2-SW1とR1-SW2の間の通信中にイネーブルにされました。

debug spanning-tree mstp roles

debug spanning-tree mstp tc

debug spanning-tree mstp boundary

例：

R2-SW1#show debugging

Packet Infra debugs:

Ip Address                                               Port

------------------------------------------------------|----------

Multiple Spanning Tree:

MSTP port ROLES changes debugging is on

MSTP Topology Change notifications debugging is on

MSTP port BOUNDARY flag changes debugging is on

観察されたログ

%LINK-3-UPDOWN: Interface GigabitEthernet1/0/2, changed state to down

%LINK-3-UPDOWN: Interface GigabitEthernet1/0/2, changed state to up

MST[0]: Gi1/0/2 is now designated port

MST[0]: Gi1/0/2 becomes designated - clearing BOUNDARY flag

MST[1]: Gi1/0/2 is now designated port

MST[0]: port Gi1/0/2 received external tc

MST[0]: port Gi1/0/2 received external tc

MST[1]: port Gi1/0/2 received tc

MST[0]: port Gi1/0/2 received external tc

MST[0]: port Gi1/0/2 received external tc

MST[1]: port Gi1/0/2 received tc

MST[0]: port Gi1/0/2 received external tc

MST[0]: port Gi1/0/2 received external tc

MST[1]: port Gi1/0/2 received tc

MST[0]: port Gi1/0/2 initiating tc

MST[1]: port Gi1/0/2 initiating tc

MST[0]: port Gi1/0/2 received external tc

MST[0]: port Gi1/0/2 received external tc

MST[1]: port Gi1/0/2 received tcsho span

%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/2, changed state to up

MST[0]: port Gi1/0/3 received internal tc

MST[0]: port Gi1/0/3 received internal tc

MST[0]: port Gi1/0/3 received internal tc

PVSTシミュレーションの失敗

PVSTシミュレーションは、MSTがMST以外のスイッチと通信するために使用するメカニズムです。

PVSTスイッチはMST BPDUを認識しません。これは、MST BPDUが単に異なるためです。このため、PVSTとMST BPDUの違いを理解することが重要です。

PVST BPDUとMST BPDU

PVST用とMST用の2つのBPDUがキャプチャされ、両者の違いが確認されました。

PVST

- PVSTは、スイッチに設定されているすべてのVLANに対してBPDUを送信します。したがって、100のVLANを設定すると、100のBPDUがすべてのポートに送信され、独自のループのないトポロジが構築されます。

- PVSTは従来のSTPに基づいています

Ethernet II, Src: Cisco_06:19:01 (f0:4a:02:06:19:01), Dst: PVST+ (01:00:0c:cc:cc:cd)

Destination: PVST+ (01:00:0c:cc:cc:cd)

Source: Cisco_06:19:01 (f0:4a:02:06:19:01)

Type: 802.1Q Virtual LAN (0x8100)

802.1Q Virtual LAN, PRI: 7, DEI: 0, ID: 3

111. .... .... .... = Priority: Network Control (7)

...0 .... .... .... = DEI: Ineligible

.... 0000 0000 0011 = ID: 3

Length: 50

Logical-Link Control

DSAP: SNAP (0xaa)

SSAP: SNAP (0xaa)

Control field: U, func=UI (0x03)

Organization Code: 00:00:0c (Cisco Systems, Inc)

PID: PVSTP+ (0x010b)

Spanning Tree Protocol

Protocol Identifier: Spanning Tree Protocol (0x0000)

Protocol Version Identifier: Spanning Tree (0)

BPDU Type: Configuration (0x00)

BPDU flags: 0x01, Topology Change

0... .... = Topology Change Acknowledgment: No

.... ...1 = Topology Change: Yes

Root Identifier: 32768 / 0 / 68:9e:0b:a0:f5:80

Root Bridge Priority: 32768

Root Bridge System ID Extension: 0

Root Bridge System ID: Cisco_a0:f5:80 (68:9e:0b:a0:f5:80)

Root Path Cost: 20000

Bridge Identifier: 32768 / 0 / f0:4a:02:06:19:00

Bridge Priority: 32768

Bridge System ID Extension: 0

Bridge System ID: Cisco_06:19:00 (f0:4a:02:06:19:00)

Port identifier: 0x8001

Message Age: 1

Max Age: 20

Hello Time: 2

Forward Delay: 15

Originating VLAN (PVID): 3

Type: Originating VLAN (0x0000)

Length: 2

Originating VLAN: 3

MST

- MSTは、スイッチに設定されているすべてのMSTインスタンスに対して1つのBPDUを送信します。これは、すべてのインスタンスの情報を持つMST拡張（Mレコード）のおかげで達成されます。

- MSTはRSTPに基づいています。つまり、このプロトコルの本質的なメカニズムはすべてMSTに継承されています。

- タイマーはISTによって定義され、リージョン内の他のすべてのインスタンスに影響します

IEEE 802.3 Ethernet

Destination: Spanning-tree-(for-bridges)_00 (01:80:c2:00:00:00)

Source: Cisco_b8:be:81 (34:73:2d:b8:be:81)

Length: 121

Logical-Link Control

DSAP: Spanning Tree BPDU (0x42)

SSAP: Spanning Tree BPDU (0x42)

Control field: U, func=UI (0x03)

Spanning Tree Protocol

Protocol Identifier: Spanning Tree Protocol (0x0000)

Protocol Version Identifier: Multiple Spanning Tree (3)

BPDU Type: Rapid/Multiple Spanning Tree (0x02)

BPDU flags: 0x0e, Port Role: Designated, Proposal

0... .... = Topology Change Acknowledgment: No

.0.. .... = Agreement: No

..0. .... = Forwarding: No

...0 .... = Learning: No

.... 11.. = Port Role: Designated (3)

.... ..1. = Proposal: Yes

.... ...0 = Topology Change: No

Root Identifier: 32768 / 0 / 34:73:2d:b8:be:80

Root Bridge Priority: 32768

Root Bridge System ID Extension: 0

Root Bridge System ID: Cisco_b8:be:80 (34:73:2d:b8:be:80)

Root Path Cost: 0

Bridge Identifier: 32768 / 0 / 34:73:2d:b8:be:80

Bridge Priority: 32768

Bridge System ID Extension: 0

Bridge System ID: Cisco_b8:be:80 (34:73:2d:b8:be:80)

Port identifier: 0x8001

Message Age: 0

Max Age: 20

Hello Time: 2

Forward Delay: 15

Version 1 Length: 0

Version 3 Length: 80

MST Extension

MST Config ID format selector: 0

MST Config name: R1

MST Config revision: 1

MST Config digest: a423b8dbb209ccf6560f55618ab58726

CIST Internal Root Path Cost: 0

CIST Bridge Identifier: 32768 / 0 / 34:73:2d:b8:be:80

CIST Bridge Priority: 32768

CIST Bridge Identifier System ID Extension: 0

CIST Bridge Identifier System ID: Cisco_b8:be:80 (34:73:2d:b8:be:80)

CIST Remaining hops: 20

MSTID 1, Regional Root Identifier 32768 / 34:73:2d:b8:be:80

MSTI flags: 0x0e, Port Role: Designated, Proposal

0... .... = Topology Change Acknowledgment: No

.0.. .... = Agreement: No

..0. .... = Forwarding: No

...0 .... = Learning: No

.... 11.. = Port Role: Designated (3)

.... ..1. = Proposal: Yes

.... ...0 = Topology Change: No

1000 .... = Priority: 0x8

.... 0000 0000 0001 = MSTID: 1

Regional Root: Cisco_b8:be:80 (34:73:2d:b8:be:80)

Internal root path cost: 0

Bridge Identifier Priority: 8

Port identifier priority: 8

Remaining hops: 20

トポロジ

PVSTを使用するスイッチがネットワークに追加されました。リージョン1とリージョン2を相互接続します。

検証

PVSTスイッチが接続された後、領域1からのスイッチR1-SW3の境界ポート(gi1/0/1)がPVST inconsistentに移行し、ポートをブロックします。

R1-SW3#show spanning-tree mst

##### MST0    vlans mapped:   1-2,5-4094

Bridge        address f04a.021e.9500  priority      32768 (32768 sysid 0)

Root          address 689e.0ba0.f580  priority      16385 (16384 sysid 1)

port    Gi1/0/1         path cost     20000

Regional Root this switch

Operational   hello time 2 , forward delay 15, max age 20, txholdcount 6

Configured    hello time 2 , forward delay 15, max age 20, max hops    20

Interface                        Role Sts Cost      Prio.Nbr Type

----------------                 ---- --- --------- -------- --------------------------------

Gi1/0/1                          Root BKN*20000     128.1    P2p Bound(PVST) *PVST_Inc

Gi1/0/2                          Desg FWD 20000     128.2    P2p

Gi1/0/3                          Desg FWD 20000     128.3    P2p

##### MST1    vlans mapped:   3-4

Bridge        address f04a.021e.9500  priority      32769 (32768 sysid 1)

Root          address 3473.2db8.be80  priority      32769 (32768 sysid 1)

port    Gi1/0/2         cost          20000     rem hops 19

Interface                        Role Sts Cost      Prio.Nbr Type

----------------                 ---- --- --------- -------- --------------------------------

Gi1/0/1                          Mstr BKN*20000     128.1    P2p Bound(PVST) *PVST_Inc

Gi1/0/2                          Root FWD 20000     128.2    P2p

Gi1/0/3                          Altn BLK 20000     128.3    P2p

注：同様の出力が、別の境界ポートである領域2からのR2-SW2で観測されます。

.

これは、これらの規則のどれかが破られたために起こりました

- CISTのルートブリッジが非MST領域内にある場合は、そのドメイン内のVLAN 2以降のスパニングツリープライオリティがVLAN 1よりも高い（低い）必要があります。

- CISTのルートブリッジがMST領域内にある場合、非MSTドメインで定義されているVLAN 2以降では、スパニングツリーのプライオリティをCISTルートよりも低く（高く）設定する必要があります。

この問題に対処するためにスイッチに設定された無効な設定を確認してください。

Case 1.PVSTスイッチはVLAN 2 ～ 4のルートですが、VLAN 2 ～ 4のプライオリティはVLAN 1よりも低い（より高い）プライオリティです。この場合、PVSTスイッチを除くすべてのスイッチは、デフォルトのSTPプライオリティ(32768)を持ちます

PVST-SW1# show run | inc span

spanning-tree mode pvst

spanning-tree extend system-id

spanning-tree vlan 1 priority 4096    <--

spanning-tree vlan 2-4 priority 16384 <--

spanning-tree mst configuration

確認されたログ：

%SPANTREE-2-PVSTSIM_FAIL: Blocking root port Gi1/0/1: Inconsitent inferior PVST BPDU received on VLAN 2, claiming root 16386:689e.0ba0.f580

Case 2.PVSTスイッチはVLAN 1のルートではありませんが、VLAN 2 ～ 4のプライオリティはルートよりも高く（低い）。この場合、rootにはデフォルトのプライオリティ24576が設定されています。これは、ルートブリッジがすべてのVLANのルートではないことを意味します

PVST-SW1#show run | inc span

spanning-tree mode pvst

spanning-tree extend system-id

spanning-tree vlan 1 prio 32768       <-- higher priority than the root

spanning-tree vlan 2-4 priority 16384 <--  lower priority than the root

spanning-tree mst configuration

確認されたログ：

%SPANTREE-2-PVSTSIM_FAIL: Blocking root port Gi1/0/1: Inconsistent inferior PVST BPDU received on VLAN 2, claiming root 40962:689e.0ba0.f580

前述のルールを検討した後、これらの有効な設定を使用してこの問題を削除できます。

Case 1.

PVST-SW1# show run | inc span

spanning-tree mode pvst

spanning-tree extend system-id

spanning-tree vlan 1 priority 16384  <-- VLAN 1 has a higher priority than all other VLANs

spanning-tree vlan 2-4 priority 4096 <--

spanning-tree mst configuration

確認されたログ：

%SPANTREE-2-PVSTSIM_OK: PVST Simulation nconsistency cleared on port GigabitEthernet1/0/1.

Case 2.

PVST-SW1#show run | inc span

spanning-tree mode pvst

spanning-tree extend system-id

spanning-tree vlan 1 prio 32768       <-- higher priority than the root

spanning-tree vlan 2-4 priority 40960 <--  higher priority than the root

spanning-tree mst configuration

確認されたログ：

%SPANTREE-2-PVSTSIM_OK: PVST Simulation nconsistency cleared on port GigabitEthernet1/0/1.

デバッグ

パケットキャプチャが不可能な場合は、BPDUデバッグを使用してBPDUを確認します。

debug spanning-tree mstp bpdu receive

debug spanning-tree mstp bpdu transmit

例：PVSTスイッチに接続されたリージョン2のスイッチ2の場合

R2-SW2#debug spanning-tree mstp bpdu receive

MSTP BPDUs RECEIVEd dump debugging is on

R2-SW2#debug spanning-tree mstp bpdu transmit

MSTP BPDUs TRANSMITted dump debugging is on

R2-SW2#debug condition interface gigabitEthernet 1/0/2 <-- interface facing PVST switch

R2-SW2#show logging

! Output omitted for brevity

%LINK-3-UPDOWN: Interface GigabitEthernet1/0/2, changed state to down

%LINK-3-UPDOWN: Interface GigabitEthernet1/0/2, changed state to up

MST[0]:-TX> Gi1/0/2 BPDU Prot:0 Vers:3 Type:2

MST[0]: Role :Desg Flags[P] Age:2 RemHops:19

MST[0]: CIST_root:16385.689e.0ba0.f580 Cost :40000

MST[0]: Reg_root :32768.f04a.0205.d600 Cost :20000

MST[0]: Bridge_ID:32768.a0f8.4910.4780 Port_ID:32770

MST[0]: max_age:20 hello:2 fwdelay:15

MST[0]: V3_len:80 region:R2 rev:1 Num_mrec: 1

MST[1]:-TX> Gi1/0/2 MREC

MST[1]: Role :Desg Flags[MAP] RemHops:20

MST[1]: Root_ID :32769.a0f8.4910.4780 Cost :0

MST[1]: Bridge_ID:32769.a0f8.4910.4780 Port_id:130

%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/2, changed state to up

MST[0]:-TX> Gi1/0/2 BPDU Prot:0 Vers:3 Type:2

MST[0]: Role :Desg Flags[P] Age:2 RemHops:19

MST[0]: CIST_root:16385.689e.0ba0.f580 Cost :40000

MST[0]: Reg_root :32768.f04a.0205.d600 Cost :20000

MST[0]: Bridge_ID:32768.a0f8.4910.4780 Port_ID:32770

MST[0]: max_age:20 hello:2 fwdelay:15

MST[0]: V3_len:80 region:R2 rev:1 Num_mrec: 1

MST[1]:-TX> Gi1/0/2 MREC

MST[1]: Role :Desg Flags[MAP] RemHops:20

MST[1]: Root_ID :32769.a0f8.4910.4780 Cost :0

MST[1]: Bridge_ID:32769.a0f8.4910.4780 Port_id:130

MST[0]:

MST[0]: Role :Desg Flags[FLTc] Age:0

MST[0]: CIST_root:16385.689e.0ba0.f580 Cost :0

MST[0]: Bridge_ID:16385.689e.0ba0.f580 Port_ID:32770

MST[0]: max_age:20 hello:2 fwdelay:15

P2Pクレーム

トポロジ

説明

このセクションでは、アグリーメントを確立できず、ポートのステータスを正しく設定できなかった2台のデバイスの問題を確認できます。

R1-SW1#show spanning-tree mst

##### MST0    vlans mapped:   1-2,5-4094

Bridge        address 3473.2db8.be80  priority      32768 (32768 sysid 0)

Root          address 689e.0ba0.f580  priority      4097  (4096 sysid 1)

port    Gi1/0/2         path cost     20000

Regional Root address f04a.021e.9500  priority      24576 (24576 sysid 0)

internal cost 20000     rem hops 19

Operational   hello time 2 , forward delay 15, max age 20, txholdcount 6

Configured    hello time 2 , forward delay 15, max age 20, max hops    20

Interface                        Role Sts Cost      Prio.Nbr Type

----------------                 ---- --- --------- -------- --------------------------------

Gi1/0/1                          Desg FWD 20000     128.1    P2p

Gi1/0/2                          Root FWD 20000     128.2    P2p

Gi1/0/4                          Desg BLK 20000     128.2    P2p Dispute

##### MST1    vlans mapped:   3-4

Bridge        address 3473.2db8.be80  priority      32769 (32768 sysid 1)

Root          address f04a.021e.9500  priority      24577 (24576 sysid 1)

port    Gi1/0/2         cost          20000     rem hops 19

Interface                        Role Sts Cost      Prio.Nbr Type

----------------                 ---- --- --------- -------- --------------------------------

Gi1/0/1                          Desg FWD 20000     128.1    P2p

Gi1/0/2                          Root FWD 20000     128.2    P2p

Gi1/0/4                          Desg BLK 20000     128.2    P2p Dispute

R1-SW1（ルート）は、新しいデバイスが接続されていることを認識しました。そのため、自身のBPDUを送信し、自身をルートとして定義します。

リンクの反対側で、フラグがポートロール（指定、転送、および学習）として設定されることを指定するBPDUを受信しました。

これは、ルートに到達するためのより良いパスを持つ新しいスイッチが接続されていることを意味します。ただし、R1-SW1がルートであり、それ以上のパスがないため、これは不可能です。

両方のスイッチがアグリーメントを確立できず、ポートを正しく設定できなかったため（両方のBPDUがルートへのより良いパスを示すため）、R1-SW1は新しいスイッチがBPDUを受信しないと想定し、ループを引き起こす可能性がある単方向シナリオを回避するために、ポートステータスをP2Pクレームに設定します。

MSTアプローチ

このドキュメントで説明したように、ネットワークに追加するスイッチの数が増えれば、MSTはさらに複雑になる可能性があります。このため、同じネットワークに対して異なるアプローチを取ることが重要です。

例：

発生した問題がMST領域内ではなくPVSTドメイン内にある場合は、より広い範囲を把握し、MST領域内の問題を無視できます（CSTパースペクティブ）。

一方、問題がMST領域間または領域内にあると疑われる場合は、CISTの方がより適切な視点を提供します。

必要に応じて、スイッチのポートの役割とステータスに焦点を当てることができます

関連情報

- マルチ スパニング ツリー プロトコル（802.1s）について

- レイヤ2コンフィギュレーションガイド、Cisco IOS XE Amsterdam 17.3.x（Catalyst 9300スイッチ）

- レイヤ2およびレイヤ3コンフィギュレーションガイド、Cisco IOS XE Everest 16.5.1a（Catalyst 9300スイッチ）

- MSTスイッチでのPVSTシミュレーション

- Cisco Bug ID CSCvy02075:スイッチがブロックBLK状態のポートで受信したトラフィックを転送する