オプションのスパニングツリー機能の概要
ここでは、オプションのスパニングツリー機能の操作方法について説明します。
• 「PortFastの概要」
• 「BPDUガードの概要」
• 「BPDUフィルタリングの概要」
• 「UplinkFastの概要」
• 「CSUFの概要」
• 「BackboneFastの概要」
• 「EtherChannelガードの概要」
• 「ルート ガードの概要」
• 「ループ ガードの概要」
PortFastの概要
PortFastを使用することにより、アクセス ポートまたはトランク ポートとして設定されたインターフェイスは、ブロッキング ステートから、リスニングおよびラーニング ステートを経由することなく、直接にフォワーディング ステートになります。単一のワークステーションまたはサーバに接続されたインターフェイス上でPortFastを使用すると、スパニングツリーがコンバージするのを待たずにデバイスをただちにネットワークに接続できます(図 18-1を参照)。
単一のワークステーションまたはサーバに接続されているインターフェイスはBridge Protocol Data Unit(BPDU;ブリッジ プロトコル データ ユニット)を受信しません。PortFastがイネーブルに設定されているインターフェイスは、スイッチを再起動すると、通常のスパニングツリー ステータスの変化をたどります。
(注) PortFastの目的は、インターフェイスがスパニングツリーのコンバージェンスを待つ時間を最小限にすることです。したがって、エンド ステーションに接続されたインターフェイスで使用した場合に限り有効になります。別のスイッチに接続しているインターフェイスでPortFastをイネーブルにした場合は、スパニングツリー ループが発生する危険性が生じます。
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働している場合は、 spanning-tree portfast インターフェイス コンフィギュレーション コマンドまたは spanning-tree portfast default グローバル コンフィギュレーション コマンドを使用して、この機能をイネーブルにすることができます。
図 18-1 PortFast対応インターフェイス
BPDUガードの概要
BPDUガード機能はスイッチ全体でグローバルにイネーブルにすることも、インターフェイス単位でイネーブルにすることもできますが、いくつかの相違点があります。
グローバル レベルでは、 spanning-tree portfast bpduguard default グローバル コンフィギュレーション コマンドを使用することにより、PortFastイネーブル設定インターフェイスでBPDUガードをイネーブルにできます。スパニングツリーは、PortFast稼働ステートのインターフェイスをシャットダウンします。有効な設定では、PortFastがイネーブルに設定されているインターフェイスはBPDUを受信しません。PortFastがイネーブルに設定されているインターフェイスがBPDUを受信するということは、無許可デバイスの接続など、無効な設定があることを意味するので、BPDUガード機能はそのインターフェイスをエラー ディセーブル ステートにします。
インターフェイス レベルでは、 spanning-tree bpduguard enable インターフェイス コンフィギュレーション コマンドを使用することにより、 PortFast機能をイネーブルにせずに 、任意のインターフェイスでBPDUガードをイネーブルにできます。インターフェイスがBPDUを受信すると、そのポートはエラー ディセーブル ステートになります。
このように、管理者が手動でインターフェイスを再起動しなければならないため、BPDUガード機能は、無効な設定に対する安全対策として使用できます。サービス プロバイダーのネットワークでBPDUガード機能を使用すると、アクセス ポートがスパニングツリーに参加するのを防ぐことができます。
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働している場合は、スイッチ全体または1つのインターフェイスに対してBPDUガード機能をイネーブルにできます。
BPDUフィルタリングの概要
BPDUフィルタリング機能はスイッチ全体でグローバルにイネーブルにすることも、インターフェイス単位でイネーブルにすることもできますが、いくつかの相違点があります。
グローバル レベルでは、 spanning-tree portfast bpdufilter default グローバル コンフィギュレーション コマンドを使用することにより、PortFastイネーブル設定インターフェイスでBPDUフィルタリングをイネーブルにできます。このコマンドは、PortFast稼働ステート インターフェイスがBPDUできないようにします。ただし、スイッチが送信BPDUのフィルタリングを開始する前のリンクアップ時では、インターフェイスはBPDUをいくつか送信します。このようなインターフェイスに接続されたホストがBPDUを受信しないようにするには、スイッチ全体でBPDUフィルタリングをイネーブルにする必要があります。PortFastイネーブル設定インターフェイス上でBPDUが受信された場合、そのインターフェイスではPortFast稼働ステータスを解除され、BPDUフィルタリングはディセーブルになります。
インターフェイス レベルでは、 spanning-tree bpdufilter enable インターフェイス コンフィギュレーション コマンドを使用することにより、 PortFast機能をイネーブルにせずに 、任意のインターフェイスでBPDUフィルタリングをイネーブルにできます。このコマンドにより、インターフェイスはBPDUを送受信できなくなります。
注意 1つのインターフェイス上でBPDUフィルタリングをイネーブルにすることは、そのインターフェイス上でスパニングツリーをディセーブルにすることと同じであるため、結果として、スパニングツリー ループが生じる可能性があります。
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働している場合は、スイッチ全体または1つのインターフェイスに対してBPDUフィルタリング機能をイネーブルにできます。
UplinkFastの概要
階層型ネットワークに配置されたスイッチは、バックボーン スイッチ、ディストリビューション スイッチ、およびアクセス スイッチに分類することができます。図 18-2に、ディストリビューション スイッチおよびアクセス スイッチに1つまたは複数の冗長リンクが確保されている複雑なネットワークの例を示します。冗長リンクは、ループを防止するために、スパニングツリーによってブロックされています。
図 18-2 階層型ネットワークのスイッチ
スイッチの接続が切断されると、スイッチはスパニングツリーが新しいルート ポートを選択すると同時に代替パスを使用し始めます。 spanning-tree uplinkfast グローバル コンフィギュレーション コマンドを使用してUplinkFastをイネーブルにすると、リンクまたはスイッチで障害が発生した場合、またはスパニングツリー再構成時に、新しいルート ポートを短時間で選択できます。ルート ポートは、通常のスパニングツリー手順のようにリスニング ステートおよびラーニング ステートを経由することなく、ただちにフォワーディング ステートに移行します。UplinkFast機能を使用できるのは、スイッチでPVST+が稼働している場合だけです。Rapid PVST+またはMSTPは、高速コンバージェンスを使用し、それがUplinkFastより優先されるため、スイッチがこれらのプロトコルを稼働している場合、UplinkFastはサポートされません。
スパニングツリーが新しいルート ポートを再設定すると、他のインターフェイスはインターフェイスで学習したアドレスごとに1つずつ、マルチキャスト パケットをネットワークにフラッディングします。max-update-rateパラメータの値(このパラメータのデフォルト値は150パケット/秒)を小さくすることにより、マルチキャスト トラフィックのこのようなバーストを制限できます。ただし、0を入力した場合には、ステーションを学習するフレームが生成されないので、接続の切断後、スパニングツリー トポロジーのコンバージェンスにかかる時間が長くなります。
(注) UplinkFastは、ネットワークのアクセスまたはエッジにある配線クローゼットのスイッチでの使用が最も効果的です。バックボーン デバイスには適していません。また、他のタイプのアプリケーションでは効果的に利用できないこともあります。
UplinkFastは、直接リンク障害のあとで高速コンバージェンスを行い、アップリンク グループを使用して、冗長レイヤ2リンク間でロード バランシングを実現します。アップリンク グループは、(VLAN単位の)レイヤ2インターフェイスの集合であり、いかなるときも、その中の1つのインターフェイスだけが転送を行います。具体的には、アップリンク グループは、(転送を行う)ルート ポートと1組のブロック ポートからなります(セルフループ ポートを除く)。アップリンク グループは、転送中のリンクで障害が発生した場合にそなえて代替パスを提供します。
図 18-3に、リンク障害のないトポロジー例を示します。ルート スイッチであるスイッチAは、リンクL1を介してスイッチBに、リンクL2を介してスイッチCに直接接続されています。スイッチBに直接接続されているスイッチCのレイヤ2インターフェイスは、ブロッキング ステートです。
図 18-3 直接リンク障害発生前のUplinkFastの例
スイッチCが、ルート ポートの現在アクティブ リンクであるL2でリンク障害( 直接 リンク障害)を検出すると、UplinkFastがスイッチCでブロックされていたインターフェイスのブロックを解除し、リスニング ステートおよびラーニング ステートを経由せずに、直接フォワーディング ステートに移行させます(図 18-4を参照)。この切り替えに要する時間は、1~5秒程度です。
図 18-4 直接リンク障害発生後のUplinkFastの例
CSUFの概要
Catalyst 3750スイッチでは、UplinkFast機能はCross-Stack UplinkFast(CSUF)機能です。CSUFは、スイッチ スタック全体に高速スパニングツリー トランジション(通常のネットワーク状況下では1秒未満の高速コンバージェンス)を提供します。高速トランジションの実行中は、スイッチ スタック上の代替冗長リンクがフォワーディング ステートになりますが、一時的にスパニングツリー ループが発生したり、バックボーンとの接続が失われたりすることはありません。この機能を使用すると、一定の構成で、冗長性と回復力に優れたネットワークを構築できます。CSUFは、 spanning-tree uplinkfast グローバル コンフィギュレーション コマンドを使用してUplinkFast機能をイネーブルにすると、自動的にイネーブルになります。CSUF機能を使用できるのは、スイッチでPVST+が稼働している場合だけです。スイッチがRapid PVST+またはMSTPを稼働しているときは、サポートされません。
CSUFは常に高速トランジションを実現するとは限りません。場合によっては、標準スパニングツリー トランジションが実行され、完了までに30~40秒かかります。詳細については、「高速コンバージェンスを実行させるイベント」を参照してください。
CSUFの機能
CSUFでは、スタックの1つのリンクが、ルートへのパスとして確実に選択されます。図 18-5に示したように、スイッチ1のスタックルート ポートがスパニングツリーのルートへのパスを提供します。スイッチ2およびスイッチ3の代替スタックルート ポートは、現在のスタックルート スイッチに障害が生じた場合やスパニングツリー ルートへのリンクに障害が生じた場合に、スパニングツリー ルートへの代替パスを提供できます。
リンク1(ルート リンク)は、スパニングツリー フォワーディング ステートです。リンク2およびリンク3は、スパニングツリー ブロッキング ステートの代替冗長リンクです。スイッチ1、スタックルート ポート、あるいはリンク1に障害が発生すると、CSUFはスイッチ2またはスイッチ3のいずれかの代替スタックルート ポートを選択し、1秒未満でそのポートをフォワーディング ステートに変更します。
図 18-5 CSUFのトポロジー
何らかのリンク損失またはスパニングツリー イベントが発生すると(高速コンバージェンスを実行させるイベントを参照)、Fast Uplink Transition Protocolは近接リストを使用して、スタック メンバーに高速トランジション要求を送信します。
高速トランジション要求を送信するスイッチは、ルート ポートとして選択したポートを高速トランジションでフォワーディング ステートにする必要があります。また、高速トランジションを実行する前に、スタックの各スイッチから確認応答を受信する必要があります。
スタックの各スイッチは、ルート、コスト、およびブリッジIDを比較して、送信側スイッチが自身よりもスパニングツリー インスタンスのスタック ルートして適しているかどうかを判別します。送信側スイッチがスタック ルートとして最適である場合、スタック内の各スイッチは確認応答を戻します。最適でない場合には、高速トランジション要求を送信します。この場合、送信側スイッチは、すべてのスタック スイッチからは確認応答を受信しないことになります。
すべてのスタック スイッチから確認応答を受信すると、送信側スイッチのFast Uplink Transition Protocolは、そのスイッチの代替スタックルート ポートをただちにフォワーディング ステートに移行させます。送信側スイッチがすべてのスタック スイッチからの確認応答を得られなかった場合、通常のスパニングツリー トランジション(ブロッキング、リスニング、ラーニング、フォワーディング)が実行され、スパニングツリー トポロジーのコンバージェンスは標準の速度(2×転送遅延時間+最大エージング タイム)で行われます。
Fast Uplink Transition Protocolは、VLAN単位で実装され、一度に1つのスパニングツリー インスタンスだけに適用されます。
高速コンバージェンスを実行させるイベント
CSUF高速コンバージェンスが実行されるかどうかは、ネットワークのイベントまたは障害によります。
高速コンバージェンス(通常のネットワーク状況で1秒未満)は、次の状況のもとで実行されます。
• スタックルート ポートのリンクに障害が発生した場合
スタック内の2つのスイッチにルートへの代替パスが設定されている場合は、1つのスイッチのみが高速トランジションを実行します。
• スタック ルートとスパニングツリー ルートを接続しているリンクの障害が回復した場合
• ネットワークの再構築により、新しいスタックルート スイッチが選択された場合
• ネットワークの再構築により、現在のスタックルート スイッチの新しいポートがスタックルート ポートとして選択された場合
(注) 複数のイベントが同時に発生すると、高速トランジションが実行されないことがあります。たとえば、スタック メンバーの電源が切断され、同時に、スタック ルートからスパニングツリー ルートへのリンク障害が回復した場合、標準のスパニングツリー コンバージェンスが実行されます。
標準のスパニングツリー コンバージェンス(30~40秒)は、次の状況のもとで実行されます。
• スタックルート スイッチの電源が切断された場合、またはソフトウェア障害が発生した場合
• スタックルート スイッチの電源または障害が回復した場合
• スタックルートになる可能性のある新しいスイッチが、スタックに追加された場合
BackboneFastの概要
BackboneFastは、バックボーンのコアに発生した間接的な障害を検出します。BackboneFastは、アクセス スイッチに直接接続されたリンク上の障害に応答するUplinkFast機能の補完的技術です。BackboneFastを使用すると、インターフェイス上で受信するプロトコル情報の保存期間を決定する最大エージング タイマーが最適化されます。スイッチが別のスイッチの指定ポートから下位BPDUを受信した場合、このBPDUは、他のスイッチからルートへのパスが消失した可能性があること、およびBackboneFastがルートへの代替パスを検出しようとしていることを示します。BackboneFast機能を使用できるのは、スイッチでPVST+が稼働している場合だけです。スイッチがRapid PVST+またはMSTPを稼働しているときは、サポートされません。
BackboneFastをイネーブルにするには、 spanning-tree backbonefast グローバル コンフィギュレーション コマンドを使用します。BackboneFastは、スイッチのルート ポートまたはブロック インターフェイスが指定スイッチから下位BPDUを受信したときに起動します。下位BPDUは、自身をルート ブリッジと指定ブリッジの両方として宣言した1つのスイッチを識別します。スイッチが下位BPDUを受信するということは、そのスイッチが直接接続されていないリンク( 間接 リンク)に障害が発生したということです(つまり、指定スイッチとルート スイッチの接続が切断されています)。スパニングツリーのルールでは、スイッチは、 spanning-tree vlan vlan-id max-age グローバル コンフィギュレーション コマンドで設定されている最大エージング タイムの間、下位BPDUを無視します。
スイッチは、ルート スイッチへの代替パスの有無を判別しようと試みます。下位BPDUがブロック インターフェイスに到達した場合、スイッチのルート ポートおよび他のブロック インターフェイスがルート スイッチへの代替パスになります(セルフループ ポートは、ルート スイッチへの代替パスとみなされません)。下位BPDUがルート ポートに到達した場合には、すべてのブロック インターフェイスがルート スイッチへの代替パスになります。下位BPDUがルート ポートに到達し、かつブロック インターフェイスがない場合には、スイッチはルート スイッチへの接続が切断されたものとみなし、ルートの最大エージング タイムが満了するまで待ち、通常のスパニングツリー ルールに従ってルート スイッチになります。
スイッチにルート スイッチへの代替パスがある場合、スイッチはこれらの代替パスを使用して、Root Link Query(RLQ)要求を送信します。スイッチは、スタック メンバーがルート スイッチへの代替ルートを持つかどうかを学習するために、すべての代替パスにRLQ要求を送信し、ネットワーク内およびスタック内の他のスイッチからのRLQ応答を待機します。
スタック メンバーは、ブロック インターフェイス上の非スタック メンバーからRLQ応答を受け取り、その応答が別の非スタック スイッチ宛てだった場合には、スパニングツリー インターフェイス ステートに関係なくその応答パケットを転送します。
スタック メンバーは、非スタック メンバーからRLQ応答を受信し、その応答がスタック宛てだった場合は、他のすべてのスタック メンバーがその応答を受信できるように、それを転送します。
ルートへの代替パスがまだ存在していることを検出すると、スイッチは、下位BPDUを受信したインターフェイスの最大エージング タイムが満了するまで待ちます。ルート スイッチに対するすべての代替パスが、スイッチとルート スイッチ間の接続が切断されていることを示している場合には、スイッチは、RLQを受信したインターフェイスの最大エージング タイムが満了するまで待ちます。1つまたは複数の代替パスからルート スイッチに引き続き接続できる場合には、スイッチは、下位BPDUを受信したすべてのインターフェイスを指定ポートにして、(ブロッキング ステートになっていた場合)ブロッキング ステートを解除し、リスニング ステートおよびラーニング ステートを経て、フォワーディング ステートに移行させます。
図 18-6に、リンク障害のないトポロジー例を示します。ルートスイッチであるスイッチAは、リンクL1を介してスイッチBに、リンクL2を介してスイッチCに直接接続されています。スイッチBに直接接続されているスイッチCのレイヤ2インターフェイスは、ブロッキング ステートです。
図 18-6 間接リンク障害発生前のBackboneFastの例
リンクL1に障害が発生した場合(図 18-7を参照)、スイッチCはリンクL1に直接接続していないのでこの障害を検出できません。ただし、スイッチBはL1を介してルート スイッチに直接接続しているので障害を検出し、自身をルートとして選択して、スイッチCにBPDUの送信を始めると同時に自身をルートとして識別します。スイッチCは、スイッチBから下位BPDUを受信すると、間接障害が発生しているものと仮定します。その時点で、BackboneFastは、スイッチCのブロック インターフェイスを、インターフェイスの最大エージング タイムの満了を待たずにただちにリスニング ステートに移行させます。BackboneFastは、次に、スイッチCのレイヤ2インターフェイスをフォワーディング ステートに移行させ、スイッチBからスイッチAへのパスを設定します。この切り替えには約30秒必要です。これは転送遅延時間がデフォルトの15秒に設定されていればその倍の時間です。図 18-7では、リンクL1で障害が発生した場合BackboneFastがどのようにトポロジーを再構成するかを示します。
図 18-7 間接リンク障害発生後のBackboneFastの例
新しいスイッチがメディア共有型トポロジーに組み込まれた場合(図 18-8を参照)、BackboneFastは起動されません。認識されている指定スイッチ(スイッチB)か下位BPDUが届いていないためです。新しいスイッチは、自らがルート スイッチであることを伝える下位BPDUの送信を開始します。ただし、他のスイッチはこれらの下位BPDUを無視します。その結果、新しいスイッチはスイッチBがスイッチA(ルート スイッチ)への指定スイッチであることを学習します。
図 18-8 メディア共有型トポロジーへのスイッチの追加
EtherChannelガードの概要
EtherChannelガードを使用すると、スイッチおよび接続された装置間のEtherChannel設定の誤りを検出できます。スイッチ インターフェイスがEtherChannelに設定され、他の装置のインターフェイスが設定されていない場合、設定の誤りが発生します。また、チャネル パラメータがEtherChannel両端で同じでない場合、設定の誤りが発生します。EtherChannel設定の注意事項については、「EtherChannel設定時の注意事項」を参照してください。
スイッチが他の装置上で設定の誤りを検出した場合、EtherChannelガードはスイッチ インターフェイスをエラー ディセーブル ステートにし、エラー メッセージが表示されます。
PM-4-ERR_DISABLE: Channel-misconfig error detected on [chars], putting [chars] in err-disable state.
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働している場合は、 spanning-tree etherchannel guard misconfig グローバル コンフィギュレーション コマンドを使用して、この機能をイネーブルにできます。
ルート ガードの概要
サービス プロバイダー(SP)のレイヤ2ネットワークには、SPが所有するスイッチ以外への接続が多く含まれている場合があります。このようなトポロジーでは、図 18-9に示すように、スパニングツリーが再構成され、カスタマーのスイッチがルート スイッチとして選択される可能性があります。この状況を防ぐには、カスタマー ネットワーク内のスイッチに接続するSPスイッチのインターフェイス上で、ルート ガード機能を設定します。スパニングツリー計算によりカスタマー ネットワークのインターフェイスがルート ポートとして選択された場合、ルート ガード機能はそのインターフェイスをroot-inconsistent(ブロック)ステートに変更し、カスタマーのスイッチがルート スイッチにならないように、またルートへのパスを提供しないようにします。
SPネットワークの外側のスイッチがルート スイッチになると、インターフェイスはブロックされ(root-inconsistentステートになるので)、スパニングツリーによって新しいルート スイッチが選択されます。したがって、カスタマーのスイッチは、ルート スイッチにはならず、ルートへのパスにも含まれません。
そのスイッチがMultiple Spanning-Tree(MST)モードで動作している場合、ルート ガード機能によって、そのインターフェイスは強制的に指定ポートになります。ルート ガードにより、Internal Spanning-Tree(IST)インスタンス内の境界ポートがブロックされた場合、そのインターフェイスはすべてのMSTインスタンスでブロックされます。境界ポートは、指定スイッチが802.1Dスイッチまたは異なるMSTリージョン コンフィギュレーションを持つスイッチであるLANに接続されたインターフェイスです。
1つのインターフェイスでルート ガードをイネーブルにすると、そのインターフェイスが属するすべてのVLANにルート ガードが適用されます。VLANをグループにまとめてMSTインスタンスにマッピングすることができます。
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働している場合は、 spanning-tree guard root インターフェイス コンフィギュレーション コマンドを使用して、この機能をイネーブルにできます。
注意 ルート ガード機能を誤って使用すると、接続が切断されることがあります。
図 18-9 サービス プロバイダー ネットワークにおけるルート ガード
ループ ガードの概要
ループ ガードを使用すると、 障害による単方向リンクが原因で、代替ポートまたはルート ポートが指定ポートになるのを防止できます。 この機能は、スイッチド ネットワーク全体で設定すると、大きな効果が得られます。ループ ガードは、代替ポートおよびルート ポートが指定ポートになるのを防ぎます。したがって、スパニングツリーはルート ポートまたは代替ポートでBPDUを送信しません。
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働している場合は、 spanning-tree loopguard default グローバル コンフィギュレーション コマンドを使用して、この機能をイネーブルにできます。
スイッチがPVST+モードまたはRapid PVST+モードで動作している場合、ループ ガードは、代替ポートおよびルート ポートが指定ポートになるのを防ぎます。スパニングツリーはルート ポートまたは代替ポート上でBPDUを送信しません。
スイッチがMSTモードで動作している場合、非境界ポートでBPDUが送信されないのは、すべてのMSTインスタンスにおいて、そのインターフェイスがループ ガードによりブロックされている場合だけです。境界ポートでは、ループ ガードによってすべてのMSTインスタンスのインターフェイスがブロックされます。
オプションのスパニングツリー機能の設定方法
ここでは、オプションのスパニングツリー機能を設定する手順について説明します。
• 「オプションのスパニングツリー機能のデフォルト設定」
• 「オプションのスパニングツリー機能の設定時の注意事項」
• 「PortFastのイネーブル化」(任意)
• 「BPDUガードのイネーブル化」(任意)
• 「BPDUフィルタリングのイネーブル化」(任意)
• 「冗長リンクで使用するためのUplinkFastのイネーブル化」(任意)
• 「CSUFのイネーブル化」(任意)
• 「BackboneFastのイネーブル化」(任意)
• 「EtherChannelガードのイネーブル化」(任意)
• 「ルート ガードのイネーブル化」(任意)
• 「ループ ガードのイネーブル化」(任意)
オプションのスパニングツリー機能のデフォルト設定
表 18-1 に、オプションのスパニングツリー機能のデフォルト設定を示します。
表 18-1 オプションのスパニングツリー機能のデフォルト設定
|
|
PortFast、BPDUフィルタリング、BPDUガード |
グローバルにディセーブル(インターフェイス単位で個別に設定されていない場合) |
UplinkFast |
グローバルにディセーブル(Catalyst 3750スイッチでは、UplinkFast機能はCSUF機能です) |
BackboneFast |
グローバルにディセーブル |
ルート ガード |
全インターフェイスでディセーブル |
ループ ガード |
全インターフェイスでディセーブル |
オプションのスパニングツリー機能の設定時の注意事項
Rapid PVST+またはMSTPを使用する場合、UplinkFast、BackboneFast、およびCSUFの機能はサポートされません。
PortFastのイネーブル化
PortFast機能がイネーブルに設定されたインターフェイスは、標準の転送遅延時間を待たずに直接スパニングツリーのフォワーディング ステートに移行されます。
注意 PortFastを使用するのは、単一のエンド ステーションをアクセス ポートまたはトランク ポートに接続する場合
だけにしてください。スイッチまたはハブに接続するインターフェイスでこの機能をイネーブルにすると、スパニングツリーがネットワーク ループを検出または阻止できなくなり、そのためにブロードキャスト ストームやアドレス学習の障害が起こる可能性があります。
PortFast機能は、音声VLAN機能をイネーブルにすると自動的にイネーブルになりますが、音声VLAN機能をディセーブルしても自動的にディセーブルになりません。詳細については、 第15章「音声VLANの設定」 を参照してください。
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働していれば、この機能をイネーブルにできます。
PortFastをイネーブルにするには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
|
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
interface interface-id |
設定するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 3 |
spanning-tree portfast [ trunk ] |
単一のワークステーションまたはサーバに接続されたアクセス ポートでPortFastをイネーブルにします。 trunk キーワードを指定することにより、トランク ポートでPortFastをイネーブルにすることができます。
注意 トランク ポートでPortFastをイネーブルにする前に、そのトランク ポートとワークステーションまたはサーバの間のネットワークにループがないことを確認してください。
デフォルトでは、PortFastはすべてのインターフェイスでディセーブルに設定されています。 |
ステップ 4 |
end |
イネーブルEXECモードに戻ります。 |
ステップ 5 |
show spanning-tree interface interface-id portfast |
設定を確認します。 |
ステップ 6 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
(注) spanning-tree portfast defaultグローバル コンフィギュレーション コマンドを使用すると、すべての非トランク ポート全体でPortFast機能をイネーブルにすることができます。
PortFast機能をディセーブルにするには、 spanning-tree portfast disable インターフェイス コンフィギュレーション コマンドを使用します。
BPDUガードのイネーブル化
PortFastがイネーブルに設定されているインターフェイス(PortFast稼働ステート)でグローバルにBPDUガードをイネーブルにすると、スパニングツリーはBPDUを受信したPortFastイネーブル設定インターフェイスをシャットダウンします。
有効な設定では、PortFastがイネーブルに設定されているインターフェイスはBPDUを受信しません。PortFastがイネーブルに設定されているインターフェイスがBPDUを受信するということは、無許可デバイスの接続など、無効な設定があることを意味するので、BPDUガード機能はそのインターフェイスをエラー ディセーブル ステートにします。このように、管理者が手動でインターフェイスを再起動しなければならないため、BPDUガード機能は、無効な設定に対する安全対策として使用できます。サービス プロバイダーのネットワークでBPDUガード機能を使用すると、アクセス ポートがスパニングツリーに参加するのを防ぐことができます。
注意 PortFastを設定するのは、エンド ステーションに接続されているインターフェイスだけにしてください。そうしないと、偶発的なトポロジー ループによってデータ パケットのループが発生し、スイッチやネットワークの動作が混乱する可能性があります。
spanning-tree bpduguard enable インターフェイス コンフィギュレーション コマンドを使用すると、PortFast機能をイネーブルにしなくても、任意のインターフェイスでBPDUガードをイネーブルにすることができます。インターフェイスがBPDUを受信すると、そのポートはエラー ディセーブル ステートになります。
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働していれば、BPDUガード機能をイネーブルにできます。
BPDUガード機能をグローバルにイネーブルにするには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
|
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
spanning-tree portfast bpduguard default |
BPDUガードをグローバルにイネーブルにします。 デフォルトでは、BPDUガードはディセーブルに設定されています。 |
ステップ 3 |
interface interface-id |
エンド ステーションに接続されたインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 4 |
spanning-tree portfast |
PortFast機能をイネーブルにします。 |
ステップ 5 |
end |
イネーブルEXECモードに戻ります。 |
ステップ 6 |
show running-config |
設定を確認します。 |
ステップ 7 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
BPDUガードをディセーブルにするには、 no spanning-tree portfast bpduguard default グローバル コンフィギュレーション コマンドを使用します。
spanning-tree bpduguard enable インターフェイス コンフィギュレーション コマンドを使用すると、 no spanning-tree portfast bpduguard default グローバル コンフィギュレーション コマンドの設定を上書きすることができます。
BPDUフィルタリングのイネーブル化
PortFastがイネーブルに設定されているインターフェイスでグローバルにBPDUフィルタリングをイネーブルにすると、PortFast稼働ステートのインターフェイスはBPDUを送受信できなくなります。ただし、スイッチが送信BPDUのフィルタリングを開始する前のリンクアップ時では、インターフェイスはBPDUをいくつか送信します。このようなインターフェイスに接続されたホストがBPDUを受信しないようにするには、スイッチ全体でBPDUフィルタリングをイネーブルにする必要があります。PortFastイネーブル設定インターフェイス上でBPDUが受信された場合、そのインターフェイスはPortFast稼働ステータスを解除され、BPDUフィルタリングはディセーブルになります。
注意 PortFastを設定するのは、エンド ステーションに接続されているインターフェイスだけにしてください。そうしないと、偶発的なトポロジー ループによってデータ パケットのループが発生し、スイッチやネットワークの動作が混乱する可能性があります。
spanning-tree bpdufilter enable インターフェイス コンフィギュレーション コマンドを使用すると、PortFast機能をイネーブルにせずに、任意のインターフェイスでBPDUフィルタリングをイネーブルにすることができます。このコマンドにより、インターフェイスはBPDUを送受信できなくなります。
注意 1つのインターフェイス上でBPDUフィルタリングをイネーブルにすることは、そのインターフェイス上でスパニングツリーをディセーブルにすることと同じであるため、結果として、スパニングツリー ループが生じる可能性があります。
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働していれば、BPDUフィルタリング機能をイネーブルにできます。
BPDUフィルタリング機能をグローバルにイネーブルにするには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
|
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
spanning-tree portfast bpdufilter default |
BPDUフィルタリングをグローバルにイネーブルにします。 デフォルトでは、BPDUフィルタリングはディセーブルに設定されています。 |
ステップ 3 |
interface interface-id |
エンド ステーションに接続されたインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 4 |
spanning-tree portfast |
PortFast機能をイネーブルにします。 |
ステップ 5 |
end |
イネーブルEXECモードに戻ります。 |
ステップ 6 |
show running-config |
設定を確認します。 |
ステップ 7 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
BPDUフィルタリングをディセーブルにするには、 no spanning-tree portfast bpdufilter default グローバル コンフィギュレーション コマンドを使用します。
spanning-tree bpdufilter enable インターフェイス コンフィギュレーション コマンドを使用すると、 no spanning-tree portfast bpdufilter default グローバル コンフィギュレーション コマンドの設定値を上書きすることができます。
冗長リンクで使用するためのUplinkFastのイネーブル化
UplinkFastは、スイッチ プライオリティが設定されたVLANではイネーブルにできません。スイッチ プライオリティが設定されたVLANでUplinkFastをイネーブルにするには、まず no spanning-tree vlan vlan-id priority グローバル コンフィギュレーション コマンドを使用して、VLAN上のスイッチ プライオリティをデフォルト値に戻します。
(注) UplinkFastをイネーブルにすると、スイッチ スタックのすべてのVLANに影響します。個々のVLANにUplinkFastを設定することはできません。
UplinkFast機能を使用できるのは、スイッチでPVST+が稼働している場合だけです。スイッチがRapid PVST+またはMSTPを稼働しているときは、サポートされません。
UplinkFastおよびCSUFをイネーブルにするには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
|
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
spanning-tree uplinkfast [ max-update-rate pkts-per-second ] |
UplinkFastをイネーブルにします。 (任意) pkts-per-second では、指定できる範囲は0~32000パケット/秒です。デフォルトは150パケット/秒です。 速度を0に設定すると、ステーションを学習するフレームが生成されないので、接続の切断後、スパニングツリー トポロジーのコンバージェンスに要する時間が長くなります。 このコマンドを入力すると、すべての非スタック ポート インターフェイス上でもCSUFがイネーブルになります。 |
ステップ 3 |
end |
イネーブルEXECモードに戻ります。 |
ステップ 4 |
show spanning-tree summary |
設定を確認します。 |
ステップ 5 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
UplinkFastをイネーブルにすると、すべてのVLANのスイッチ プライオリティが49152に設定されます。パス コストを3000未満の値に変更し、UplinkFastをイネーブルにするか、UplinkFastがすでにイネーブルになっている場合、すべてのインターフェイスおよびVLANトランクのパス コストが3000だけ増分されます(3000以上の値に変更した場合は、パス コストは変わりません)。スイッチ プライオリティとパス コストを変更することによって、スイッチがルート スイッチになる可能性が減少します。
デフォルト値を変更していなければ、UplinkFastをディセーブルにすると、すべてのVLANのスイッチ プライオリティおよびすべてのインターフェイスのパス コストは、デフォルト値に設定されます。
アップデート パケット レートをデフォルト設定に戻すには、 no spanning-tree uplinkfast max-update-rate グローバル コンフィギュレーション コマンドを使用します。UplinkFastをディセーブルにするには、 no spanning-tree uplinkfast コマンドを使用します。
CSUFのイネーブル化
spanning-tree uplinkfast グローバル コンフィギュレーション コマンドを使用してUplinkFast機能をイネーブルまたはディセーブルにすると、CSUFは自動的に非スタック ポート インターフェイス上でグローバルにイネーブルまたはディセーブルになります。
詳細については、「冗長リンクで使用するためのUplinkFastのイネーブル化」を参照してください。
CSUF機能を使用できるのは、スイッチでPVST+が稼働している場合だけです。スイッチがRapid PVST+またはMSTPを稼働しているときは、サポートされません。
スイッチおよびそのすべてのVLANでUplinkFastをディセーブルにするには、 no spanning-tree uplinkfast グローバル コンフィギュレーション コマンドを使用します。
BackboneFastのイネーブル化
BackboneFastをイネーブルにすると、間接リンク障害を検出し、スパニングツリーの再構築をより早く開始できます。
(注) BackboneFastを使用する場合は、ネットワーク内のすべてのスイッチでイネーブルにする必要があります。BackboneFastはトークンリングVLANではサポートされていません。この機能は、サードパーティ製スイッチでの使用のためサポートされています。
BackboneFast機能を使用できるのは、スイッチでPVST+が稼働している場合だけです。スイッチがRapid PVST+またはMSTPを稼働しているときは、サポートされません。
BackboneFastをイネーブルにするには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
|
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
spanning-tree backbonefast |
BackboneFastをイネーブルにします。 |
ステップ 3 |
end |
イネーブルEXECモードに戻ります。 |
ステップ 4 |
show spanning-tree summary |
設定を確認します。 |
ステップ 5 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
BackboneFast機能をディセーブルにするには、 no spanning-tree backbonefast グローバル コンフィギュレーション コマンドを使用します。
EtherChannelガードのイネーブル化
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働している場合、EtherChannelガード機能をイネーブルにしてEtherChannel設定の誤りを検出できます。
EtherChannelガードをイネーブルにするには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
|
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
spanning-tree etherchannel guard misconfig |
EtherChannelガードをイネーブルにします。 |
ステップ 3 |
end |
イネーブルEXECモードに戻ります。 |
ステップ 4 |
show spanning-tree summary |
設定を確認します。 |
ステップ 5 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
EtherChannelガード機能をディセーブルにするには、 no spanning-tree etherchannel guard misconfig グローバル コンフィギュレーション コマンドを使用します。
EtherChannel設定の誤りが原因でディセーブルであるスイッチ ポートを検出するには、 show interfaces status err-disabled イネーブルEXECコマンドを使用します。リモート デバイスで show etherchannel summary イネーブルEXECコマンドを入力すると、EtherChannel設定を確認できます。
設定を修正したあと、誤って設定されたポート チャネル インターフェイス上で shutdown および no shutdown インターフェイス コンフィギュレーション コマンドを入力します。
ルート ガードのイネーブル化
1つのインターフェイスでルート ガードをイネーブルにすると、そのインターフェイスが属するすべてのVLANにルート ガードが適用されます。UplinkFast機能が使用するインターフェイス上でルート ガードをイネーブルにしないでください。UplinkFastでは、障害発生時に(ブロッキング ステートの)バックアップ インターフェイスがルート ポートになります。ただし、ルート ガードも同時にイネーブルになっていると、UplinkFast機能が使用するすべてのバックアップ インターフェイスがroot-inconsistent(ブロック)ステートに変更され、フォワーディング ステートに移行できなくなります。
(注) ルート ガードとループ ガードを同時にイネーブルにすることはできません。
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働していれば、この機能をイネーブルにできます。
インターフェイス上でルート ガードをイネーブルにするには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
|
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
interface interface-id |
設定するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 3 |
spanning-tree guard root |
インターフェイスでルート ガードをイネーブルに設定します。 デフォルトでは、ルート ガードはすべてのインターフェイスでディセーブルに設定されています。 |
ステップ 4 |
end |
イネーブルEXECモードに戻ります。 |
ステップ 5 |
show running-config |
設定を確認します。 |
ステップ 6 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ルート ガードをディセーブルにするには、 no spanning-tree guard インターフェイス コンフィギュレーション コマンドを使用します。
ループ ガードのイネーブル化
ループ ガードを使用すると、 障害による単方向リンクが原因で、代替ポートまたはルート ポートが指定ポートになるのを防止できます。 この機能は、スイッチド ネットワーク全体で設定すると、大きな効果が得られます。ループ ガードが機能するのは、スパニングツリーによってポイントツーポイントとみなされたインターフェイス上だけです。
(注) ループ ガードとルート ガードを同時にイネーブルにすることはできません。
スイッチでPVST+、Rapid PVST+、またはMSTPが稼働していれば、この機能をイネーブルにできます。
ループ ガードをイネーブルにするには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
|
|
|
ステップ 1 |
show spanning-tree active または show spanning-tree mst |
インターフェイスが代替ポートまたはルート ポートであることを確認します。 |
ステップ 2 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
spanning-tree loopguard default |
ループ ガードをイネーブルにします。 デフォルトでは、ループ ガードはディセーブルに設定されています。 |
ステップ 4 |
end |
イネーブルEXECモードに戻ります。 |
ステップ 5 |
show running-config |
設定を確認します。 |
ステップ 6 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ループ ガードをグローバルにディセーブルにするには、 no spanning-tree loopguard default グローバル コンフィギュレーション コマンドを使用します。 spanning-tree guard loop インターフェイス コンフィギュレーション コマンドを使用すると、 no spanning-tree loopguard default グローバル コンフィギュレーション コマンドの設定値を上書きすることができます。