0Pricing
Network+ Academy · レッスン

スパニングツリープロトコルの基本

STPが冗長経路をブロックしてループを防ぐ仕組みを学びます。

「スパニングツリープロトコルの基本」はCoddyKit上の無料Network+ Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはNetwork+ Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Network+ Academyコースには全4レッスンが含まれています。

ループの解決策

ネットワークでは信頼性のために冗長リンクが必要ですが、それによって発生するループは許容できません。これを解決するのがSpanning Tree Protocol(STP)です。STPはスイッチ間の冗長経路を自動的に検出し、ループのない単一の経路だけを残すよう、必要なリンクをブロックします。同時に、ブロックしたリンクはバックアップとして使用できる状態に保ちます。このレッスンでは、冗長性を犠牲にせずにSTPがループを防止する基本的な仕組みを説明します。

基本的な考え方

STPは、物理ネットワークにループが存在する可能性があっても、その上にループのない論理ツリーを構築します。そのために、任意の2地点間で1つの経路を選び、それ以外を無効にします。後でアクティブな経路に障害が発生すると、STPはブロックしていたリンクを再び有効にして接続を復旧します。これにより、耐障害性のための冗長性と、安全性のためのループのない構成を同時に実現できます。

ルートブリッジの選出

STPはまず、ツリーの頂点にある基準スイッチであるルートブリッジを選出します。スイッチは、設定可能なプライオリティとスイッチのMACアドレスで構成されるブリッジIDという値を比較します。ブリッジIDが最も小さいスイッチが勝ち、ルートになります。すべての経路計算はこのルートを基準に行われるため、ルートの配置がツリー全体の形を決めます。

ルートポートの選択

ルート以外の各スイッチは、1つのルートポートを選択します。これは、ルートブリッジへ戻る経路のうち、コストが最も低いポートです。コストはリンク速度に基づき、速度が速いリンクほどコストが低くなります。ルートポートは、そのスイッチにとってツリーの頂点へ向かう最適な経路です。ルートやその先を宛先とするトラフィックは、通常このポートから送信されます。

指定ポートとブロックポート

STPはネットワークセグメントごとに、そのセグメントへの転送を担当する1つの指定ポートも選択します。ルートポートでも指定ポートでもないポートは、ブロッキング状態になります。ブロックされたポートはデータを転送しないためループを断ち切れますが、STPメッセージの受信は続けます。これにより、アクティブな経路に障害が発生した場合に引き継ぐことができます。

BPDU

スイッチは、スイッチ間で交換する小さなメッセージであるBPDU(Bridge Protocol Data Units)を使って連携します。BPDUにはブリッジIDとパスコストが含まれており、スイッチはこれを使ってルートの選出、経路の計算、トポロジーの変更検出を行います。ブロックポートでBPDUを受信しなくなると、STPはリンク障害と判断し、経路を復旧するためにそのポートを再び使用可能にすることがあります。

ポート状態

従来のSTPでは、ポートはブロッキング、リスニング、ラーニング、フォワーディングの各状態を順に移行します。この移行により、ポートが早すぎる段階で転送を開始し、一時的なループを誤って作成することを防ぎます。一方で、ポートが完全に開くまで約30~50秒かかるという欠点があります。この収束の遅さが、より高速なプロトコルバージョンの開発につながりました。

Rapid Spanning Tree

RSTP(Rapid Spanning Tree Protocol、802.1w)は、現代的に改良されたプロトコルです。ポート状態を簡略化し、スイッチ間で変更を直接ネゴシエーションすることで、数十秒ではなく数秒で収束します。RSTPには旧来のSTPとの下位互換性があり、現在のほとんどのスイッチでデフォルトとして使用されています。そのため、リンク障害からはるかに速く復旧できます。

PortFastとBPDU Guard

よく使われる便利な機能が2つあります。PortFastは、エンドデバイスを接続するアクセスポートについて、待機状態を省略してすぐにフォワーディングを開始できるようにします。1台のPCだけではループを作れないためです。BPDU Guardは、そうしたポートが予期せずBPDUを受信した場合にポートをシャットダウンして保護します。これは、PC用のポートに誰かがスイッチを接続したことを意味する可能性があります。

interface GigabitEthernet0/4
 switchport mode access
 spanning-tree portfast
 spanning-tree bpduguard enable

収束とフェイルオーバー

収束とは、変更が発生した後にSTPが安定したループのない状態に落ち着くまでの時間です。アクティブなリンクに障害が発生すると、予期されていた場所でBPDUが届かなくなり、STPが再計算を行います。そして、以前ブロッキング状態だったポートがフォワーディングへ移行し、経路を復旧します。従来のSTPでは収束に数十秒かかりますが、RSTPでは数秒です。収束が速いほど停止時間が短くなるため、現代のスイッチでは従来のSTPに代わってRSTPが使われています。

STPが重要な理由

STPと、その高速版であるRSTPは、ほぼすべての管理対象スイッチ上で静かに動作し、ループが引き起こすブロードキャストストームを防ぎながら、バックアップリンクを維持します。ルートブリッジの選出、ポートの役割、BPDUを理解することは、Network+の重要な知識です。バックアップリンクが引き継ぐ必要があるとき、ネットワークをループのない状態に保つ方法を、RSTPでは数秒でSTPが決定します。

クイックチェック

STPの基本を確認しましょう。

まとめ

Spanning Tree Protocol(STP)は、冗長リンクをバックアップとして維持しながらループを防止します。ルートブリッジ(最小のブリッジID)を選出し、各スイッチでルートに向かうルートポートを選び、セグメントごとに指定ポートを1つ選択し、余分なポートをブロッキング状態にします。スイッチはBPDUで連携します。従来のSTPは低速ですが、RSTPは数秒で収束します。PortFastはエンドデバイス用ポートを高速化し、BPDU Guardはそれらのポートを保護します。

よくある質問

「スパニングツリープロトコルの基本」レッスンは無料ですか?

はい。「スパニングツリープロトコルの基本」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Network+ Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Network+ Academyコースには全4レッスンが含まれています。

「スパニングツリープロトコルの基本」で何を学びますか?

STPが冗長経路をブロックしてループを防ぐ仕組みを学びます。 ブラウザで直接実行するハンズオンコードでNetwork+ Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Network+ Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのNetwork+ Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「スパニングツリープロトコルの基本」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このNetwork+ Academyレッスンでコードを書いて実行できますか?

はい。すべてのNetwork+ Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. VLANとは何か、なぜ役立つのか
  2. アクセスポートとトランクリンク
  3. スイッチングループが危険な理由
  4. スパニングツリープロトコルの基本
← Network+ Academyに戻る