スパニングツリーをオンにした場合、ネットワークに問題があることをどのように確認しますか?


13

スパニングツリープロトコル(STP / RSTP / MSTP)について学んでいて、電源を入れてネットワークループなどから保護しているのに、ネットワークループがあることをどのように知ることができますか?

ほとんどの場合、ループが存在する部屋がダウンするため、それは明らかだと思いますが、苦情がない場合はどうでしょうか?

私はまだこのようなネットワークの問題があることを知る方法を望んでいるようです。デバイスが何らかのアラートを送信しているのでしょうか、それとも誰かが時々ログなどをチェックする必要があるのでしょうか?

回答:


22

スパニングツリーイベントのスイッチログを監視するか、STPがポートをシャットダウンしたときにSNMPトラップを送信するようにスイッチを設定します。


1
適切に監視すれば、それも把握できます。
lsd

これは明らかな答えだと思います。私は...私はSplunkの使用して、それがログに記録養うことができたとし、かついただきましたようなものまで、SNMPトラップとアラートを監視する
スコットSzretter

11

テスト。何かが機能していることを知りたい場合は、テストします。

STPを有効にしたら、ネットワークメンテナンスをスケジュールし、ケーブルをループに差し込みます。ネットワークがまだ機能している場合は、STPによってループが検出されました。ネットワークがダウンした場合、STPは機能していません。


3
+1このサイトの回答のほぼ半分が最初の文に変更される可能性があるため。
グレント

4
唯一の問題は、それが私が尋ねた質問に対する答えではないということです。私の場合、ネットワークは稼働しています。スパニングツリーがオフで、ネットワークループが発生した場合、機能しなくなります。スパニングツリーがオンの場合、理論的にはネットワークが動作し続けるので、たとえば、機器が問題をマスクするため、問題のループがあることをどのように知ることができますか?(これまでのところsnmp / logsに関する上記の答えは理にかなっています)
スコットSzretter

2
セットアップをテストした場合、管理インターフェイスがネットワークループを示しているかどうかがわかります。わからないので、セットアップをテストしてはいけません。ポートのSTPステータスがポートの「エラー」または「例外」ステータスレポートで示されるのは、私が見たセットアップでは一般的です。
クリスS

5

スパニングツリーは、ループを「エラー」とは見なしません。これらはプロトコルの一部であり、ループの原因となっているポートを検出して、それらの転送を無効にします。特定の条件が存在するかどうかを確認するためにプロトコルを使用しようとしていると思いますが、それは主な目的ではありません。「適切に設計された」ネットワークには、通常、ループが存在する場合があります(冗長性のため)。イベントスパニングツリーステータス(またはプラットフォーム上の同等)のログ記録を有効にすることに加えて、枠外で考えてください。ネットワーク内のループ(スパニングツリーによって無効にされていない場合)は、ブロードキャストストームで大きなトラフィックレベルを引き起こします。そのため、これらのレベルをグラフ化し、監視プラットフォームでトラフィックの急激な増加が見られる場合は、おそらくループが発生しています。


これは理解することが重要です。多くの人が誤ってスパニングツリーのループを非難していますが、スパニングツリーを有効にすると、冗長性のためにネットワークにループ追加できます
ポール・ギア

2

以下に、テストとともにSTP / RSTP / MSTP実装で考慮すべきいくつかの追加事項を示します。

  1. スイッチの優先順位を設定して、所定のスイッチがルートとして選択され、プライマリが故障した場合にセカンダリがルートとして引き継ぐように指定されるようにします。これは、スパニングツリーの実装でよく見られる間違いです。
  2. 永続的に接続されたデバイス(サーバー、プリンター、NASなど)があるポートはすべて、ポートファーストモード(Ciscoの用語。HPProCurveではエッジポートと呼ばれます)にして、待機時間が長くならないようにします。起動時のSTPコンバージェンス。
  3. エッジデバイス(PC、プリンター、サーバーなどを含む)に接続するポートでは、ルートガードを有効にする必要があります。これにより、誤って設定されたスイッチや不正なスイッチを接続して、予期せずに再コンバージェンスが発生することを防ぎます。
  4. コントロール内のスイッチ間リンクではないポート(PC、プリンター、サービスプロバイダールーターを含む)では、BPDUガードを有効にする必要があります。STPBPDUの受信時にポートを無効にするよう設定することをお勧めします。このようにして、人々があなたのエッジポートで間違ったことをし始めるとすぐに見つけます。

これは非常に便利な回答です。ありがとうございます。偶然、あなたが言及したポイントのHP ProCurveの同等のコマンドを知らないでしょうか?このHPのリンクは、あなたのベスト・プラクティスの推奨事項が欠けているh20565.www2.hp.com/hpsc/doc/public/...
g18c

私は自分自身のコメントにお気軽にこの質問に答えるに行くを持っていた:) serverfault.com/questions/703386/...
g18c

2

以前の診断の提案に加えて、スイッチの「show spanning-tree」コマンド(または同等のもの)からの出力を解釈することも学ぶ必要があります。ルートポート、指定ポート、その他の重要な診断が表示されます。

ここに、2 x Cisco 2950と1 x HP 3400clでセットアップしたネットワークの例を示します。ネットワーク内の接続は次のとおりです。

  • hp3400cl [24]-> c2950 [g0 / 2](1000 Mbps)
  • c2950 [f0 / 23]-> c2950b [f0 / 47](100 Mbps)
  • c2950b [f0 / 45]-> hp3400cl [23](100 Mbps)

スイッチはすべてMSTPモードで、共通のスパニングツリーインスタンスのみが設定されています。hp3400clの優先度は0、c2950は8192の次に高い優先度、c2950bは優先度12288の最後です。したがって、hp3400clがルートになります。「show spanning-tree」の出力は次のとおりです。

hp3400cl# show spanning-tree 

 Multiple Spanning Tree (MST) Information

  STP Enabled   : Yes
  Force Version : MSTP-operation
  IST Mapped VLANs : 1-4094
  Switch MAC Address : 001871-8bd020
  Switch Priority    : 0    
  Max Age  : 6 
  Max Hops : 20
  Forward Delay : 4 

  Topology Change Count  : 4           
  Time Since Last Change : 4 mins      

  CST Root MAC Address : 001871-8bd020
  CST Root Priority    : 0           
  CST Root Path Cost   : 0           
  CST Root Port        : This switch is root

  IST Regional Root MAC Address : 001871-8bd020
  IST Regional Root Priority    : 0           
  IST Regional Root Path Cost   : 0           
  IST Remaining Hops            : 20          

  Root Guard Ports : 
  TCN Guard Ports  : 
  BPDU Protected Ports :                                         
  BPDU Filtered Ports  :                                         

                  |           Prio             | Designated    Hello         
  Port  Type      | Cost      rity  State      | Bridge        Time  PtP Edge
  ----- --------- + --------- ----- ---------- + ------------- ----- --- ----
  1     100/1000T | Auto      128   Disabled   |
...
  22    100/1000T | Auto      128   Disabled   |
  23    100/1000T | 200000    128   Forwarding | 001871-8bd020 1     Yes No  
  24    100/1000T | 20000     128   Forwarding | 001871-8bd020 1     Yes No  

c2950#show spanning-tree 

MST00
  Spanning tree enabled protocol mstp
  Root ID    Priority    0
             Address     0018.718b.d020
             Cost        20000
             Port        26 (GigabitEthernet0/2)
             Hello Time   1 sec  Max Age  6 sec  Forward Delay  4 sec

  Bridge ID  Priority    8192   (priority 8192 sys-id-ext 0)
             Address     000c.308f.7f80
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
...
Fa0/24           Desg FWD 200000    128.24   P2p 
Gi0/2            Root FWD 20000     128.26   P2p Bound(RSTP) 

c2950b#show spanning-tree 

MST00
  Spanning tree enabled protocol mstp
  Root ID    Priority    0
             Address     0018.718b.d020
             Cost        20000
             Port        47 (FastEthernet0/47)
             Hello Time   1 sec  Max Age  6 sec  Forward Delay  4 sec

  Bridge ID  Priority    12288  (priority 12288 sys-id-ext 0)
             Address     000a.b7e3.30c0
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/45           Altn BLK 200000    128.45   P2p Bound(RSTP) 
Fa0/47           Root FWD 200000    128.47   P2p 

上記のリストのポート状態について注意すべき重要な点は次のとおりです。

  • 他のスイッチへのルートスイッチのリンクは転送しています
  • ルートへの非ルートスイッチのリンクは、どちらの場合も「ルートFWD」です。
  • 非ルートスイッチの相互リンクは、一方の端が「Altn BLK」で、もう一方の端が「Desg FWD」です。これは、c0950bがf0 / 45がルートへの代替ルートであることを認識し、ループを防ぐためにそれをブロックしたことを意味します。ルートポート(f0 / 47)に障害が発生すると、c2950bは再収束せずにf0 / 45をルートポートとして設定します。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.