この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
レイヤ 2 は、コンピュータ ネットワーキングの Open Systems Interconnection(OSI)モデルのデータ リンク層です。
この章では、Cisco Nexus 5000 シリーズ スイッチのレイヤ 2 スイッチングで起こり得る問題を特定し、解決する方法について説明します。
• マルチキャスト
• VLAN
データが転送されず、代わりに VLAN のすべてのポートにフラッディングされます。
ループの検出が原因で、MAC アドレスの学習がディセーブルになっています。この場合は、重大度 2 の Syslog メッセージ、STM_LOOP_DETECT が受信されています。
180 秒待機した後、学習が自動的にイネーブルになります。重大度 2 の Syslog メッセージ、STM_LEARNING_RE_ENABLE が受信されます。
MAC アドレス テーブルがいっぱいになっています。この場合は、重大度 2 の Syslog メッセージ、STM_LIMIT_REACHED が受信されています。
180 秒待機した後、MAC テーブルがフラッシュされ、学習が自動的にイネーブルになります。
あるいは、一部の MAC エントリの期限が切れて学習済みエントリの総数が 1500 より少なくなるまで待つか、「clear mac address-table dynamic [address <mac>]」コマンドを実行してエントリをクリアします。こうすると、新しい MAC エントリを学習するための空き領域が作成されます。重大度 2 の Syslog メッセージ、STM_LEARNING_RE_ENABLE が受信されます。
学習の過負荷が原因で(つまり、新しいアドレスが短時間であまりにも多すぎたため)、MAC アドレスの学習がディセーブルになっています。この場合は、重大度 4 の Syslog メッセージ、STM_LEARNING_OVERLOAD が受信されています。
スイッチによって MAC アドレスが学習されません。これが起こると、MAC アドレスは MAC テーブルに登録されません。
ループの検出が原因で、MAC アドレスの学習がディセーブルになっています。この場合は、重大度 2 の Syslog メッセージ、STM_LOOP_DETECT が受信されています。
180 秒待機した後、学習が自動的にイネーブルになります。重大度 2 の Syslog メッセージ、STM_LEARNING_RE_ENABLE が受信されます。
MAC アドレス テーブルがいっぱいになっています。この場合は、重大度 2 の Syslog メッセージ、STM_LIMIT_REACHED が受信されています。
180 秒待機した後、MAC テーブルがフラッシュされ、学習が自動的にイネーブルになります。
あるいは、一部の MAC エントリの期限が切れて学習済みエントリの総数が 1500 より少なくなるまで待つか、「clear mac address-table dynamic [address <mac>]」コマンドを実行してエントリをクリアします。こうすると、新しい MAC エントリを学習するための空き領域が作成されます。重大度 2 の Syslog メッセージ、STM_LEARNING_RE_ENABLE が受信されます。
学習の過負荷が原因で(つまり、新しいアドレスが短時間であまりにも多すぎたため)、MAC アドレスの学習がディセーブルになっています。この場合は、重大度 4 の Syslog メッセージ、STM_LEARNING_OVERLOAD が受信されています。
着信データ トラフィック用の出力パスが設定されていません。スイッチから発信されるデータのパスがない場合、そのデータ ストリームから MAC アドレスは学習されません。
たとえば、データが着信するインターフェイスを除くすべてのインターフェイスで VLAN がイネーブルになっていない場合があります。あるいは、送出インターフェイスがダウンしている場合もあります。この場合は、それらのインターフェイスをアップする必要があります。
VPC シナリオの下でデータが転送されず、代わりにフラッディングされます。
MAC アドレスが 1 台のスイッチのみで学習されています。通常、この状況は VPC ピアとの MAC アドレスの同期に関するバグです。
MAC アドレスが学習されたスイッチから MAC アドレスをクリアします。これにより、MAC アドレスの新しい学習と VPC スイッチ間での MAC アドレスの同期が行われます。
メッセージ「BPDUGuard errDisable」に伴って HIF がダウンします。
デフォルトでは、HIF は BPDU ガードがイネーブルになった STP エッジ モードになります。つまり、HIF はホストまたは非スイッチング デバイスに接続するよう想定されています。HIF が BPDU を送信する非ホスト デバイスまたはスイッチに接続している場合、その HIF は BPDU の受信時にエラー ディセーブルになります。
HIF およびピア接続デバイスで BPDUfilter をイネーブルにします。このフィルタをイネーブルにすると、HIF は BPDU を送信または受信しません。次のコマンドを使用して、ポートの STP ポート ステートの詳細を確認します。
スイッチで FWM-2-STM_LOOP_DETECT が検出されると、動的学習がディセーブルになります。
• 不適切な STP ポート ステートのコンバージェンスが原因で、MAC アドレスが移動しています。
• STP ステートがコンバージされて正しい状態にあるときにデータの送信元がすべてのスイッチを物理的に横断していることが原因で、MAC アドレスが移動しています。
次のコマンドを使用して、スイッチの VLAN 上の STP ポート ステートを確認します。
• 「show spanning-tree vlan <id>」
• 正しい STP コンバージェンスを確認し、関係図内のすべてのスイッチで STP ポートステートをチェックします。また、競合がないこと、および不適切なポートステートがないことも確認します。
• 物理的に移動しているデータ フレームの送信元が特定された場合は、高速な連続的移動を停止するよう送信元を制御します。
• デフォルトでは、動的学習は 180 秒後に再開します。その時点で、すべての STP 競合または不整合は解決されます。
STP ブロッキング ステート「BLK*(Type_Inc)」でポートがスタックしています。
アクセス ポートが相手側のトランク ポートに接続するときに、アクセス ポートでタイプが一致していない可能性があります。リンクに不適切な設定があることを示すため、そのポートは BLK*(Type_Inc) になります。次のコマンドを使用して、ポートの STP ポート ステートの詳細を確認します。
• 「show spanning-tree interface <id> detail」
• 「show spanning-tree interface <id>」
リンクの両端(ポート)で設定されている switchport モードを確認します。両者が同じモードになるようにします。両方をアクセス モードまたはトランク モードにする必要があります。モードが同期したら、ポートは不一致状態から正常な状態に移行します。
STP ブロッキング ステート「BLK*(PVID_Inc)」でポートがスタックしています。
トランク リンク上でネイティブ VLAN の不一致があるときに、PVID が一致していない可能性があります。これが起こると、ポート ステートは「BLK* (PVID_Inc)」になります。次のコマンドを使用して、ポートの STP ポート ステートの詳細を確認します。
• 「show spanning-tree interface <id> detail」
• 「show spanning-tree interface <id>」
リンクの両端(ポート)で設定されているネイティブ VLAN を確認します。両者が同じネイティブ VLAN を持つようにします。ネイティブ VLAN が同期したら、ポートは不一致状態から正常な状態に移行します。
STP ブロッキング ステート「BLK*(Loop_Inc)」でポートがスタックしています。
この状況は、ポートでループガードが設定されていて、ポートで BPDU の受信が停止したときに起こります。これは単方向リンク障害が発生したときにループを防止する働きがあります。ただし、そのポートは「BLK* (Loop_Inc)」ステートになります。次のコマンドを使用して、ポートの STP ポート ステートの詳細を確認します。
• 「show spanning-tree interface <id> detail」
• 「show spanning-tree interface <id>」
リンクの両端(ポート)で設定されているネイティブ VLAN を確認します。両者が同じネイティブ VLAN を持つようにします。ネイティブ VLAN が同期したら、ポートは不一致状態から正常な状態に移行します。
この状況では、IGMP 加入の送信元 MAC アドレスが学習されます。しかし、MAC アドレス空間を節約するため、スイッチでは通常、IGMP 加入の送信元 MAC アドレスは学習されません。
加入の受信と ISSU の実行が同時に行われるとこの状況が起こる場合があります。
加入が停止した場合、MAC アドレスは期限切れになります。あるいは、「clear mac address-table dynamic mac <mac>」コマンドを使用して明示的に MAC アドレスをクリアすることもできます。
ホストでマルチキャスト データ トラフィックが受信されません。
• ホスト アプリケーションから加入が送信されていることを確認します。
• 「show vlan id <vlan>」コマンドを使用して、加入が送信されている VLAN にスイッチ ポートが設定されているかどうかを確認します。
• 「show vlan id <vlan>」コマンドを使用して、該当する VLAN がアクティブかどうかを確認します。
• 「show spanning-tree vlan <vlan>」コマンドを使用して、スイッチ ポートが STP フォワーディング ステートにあるかどうかを確認します。
ホストがグループに登録されているのにマルチキャスト データ トラフィックが受信されません。
IGMP プロセスと FWM プロセス間の通信にバグがある可能性があります。
• 「show ip igmp snooping groups vlan 1001」
• 「show mac address-table multicast vlan 1001 igmp-snooping」
VPC セットアップでマルチキャスト トラフィックがフラッディングします。
いずれかのスイッチで IGMP スヌーピングがディセーブルになっています。
両方のスイッチで IGMP スヌーピングをイネーブルにします。
(注) リンク ローカル IP アドレス(つまり、224.0.0.X)のグループは作成されません。
Nexus 5000 の VLAN が、VTP サーバを実行しているスイッチの VLAN と同じではありません。
Nexus 5000 では現在、透過モードの VTP のみがサポートされています(4.2(1)N1(1) 以降のリリース)。
この状況は、VLAN をローカルに設定する必要があることを示します。ただし、次のコマンドを使用すると、VTP クライアントとサーバが Nexus 5000 を通じて通信できるようになります。
内部使用のために予約されていない VLAN 番号を使用します。
(注) 3968 ~ 4047 の VLAN 番号は内部使用のために予約されています。
VLAN <###> がまだ作成されていなくても、NX-OS では「interface vlan <###>」の設定が許可されます。その結果、「interface vlan <###>」はアップしません。「show vlan」コマンドを使用して、VLAN <###> が存在するかどうかを確認します。存在しない場合は、「vlan <###>」コマンドを使用して VLAN を作成します。VLAN を作成した後、アップするためにインターフェイス VLAN をバウンスする必要があります。
VLAN <###> を許可するためにインターフェイスをポートにアクセスするよう設定しても、VLAN <###> を通過できません。
NX-OS では、インターフェイスに対して「switchport access vlan <###>」コマンドを実行しても、VLAN <###> は自動的に作成されません。「vlan <###>」コマンドを使用して VLAN <###> を明示的に作成する必要があります。「show vlan」コマンドを使用して、VLAN <###> が存在するかどうかを確認します。存在しない場合は、「vlan <###>」コマンドを使用して VLAN を作成します。
Nexus 5000 では、アクティブな VLAN/VSAN の最大数はスイッチあたり 512 です(VSAN 用に 31、残りは VLAN 用)。「show resource vlan」コマンドを使用して、使用可能な VLAN の数を確認します。
「interface-vlan」機能がイネーブルになっていません。
SVI を設定する前に、「interface-vlan」機能をイネーブルにする必要があります。「show feature」コマンドを使用して、イネーブルになっている機能を確認します。
「private-vlan」機能がイネーブルになっていません。
PVLAN を設定する前に、「private-vlan」機能をイネーブルにする必要があります。そうすると、PVLAN コマンドが使用可能になります。「show feature」コマンドを使用して、イネーブルになっている機能を確認します。
Nexus 5000 でフレームがドロップされるときは論理的かつ物理的な原因があります。また、スイッチ アーキテクチャのカットスルー特性のためにフレームをドロップできない場合もあります。ドロップする必要があるフレームがカットスルー パスで切り替えられている場合、唯一のオプションはイーサネット Frame Check Sequence(FCS; フレーム チェック シーケンス)をストンプすることです。フレームをストンプするには、CRC チェックを通過しない既知の値に FCS を設定します。こうすると、このフレームのパスの後の方で後続の CRC チェックが失敗します。これにより、ダウンストリームのストアアンドフォワード デバイスまたはホストがこのフレームをドロップできます。
(注) フレームが 10 Gb/秒インターフェイスで受信されたとき、そのフレームはカットスルー パスにあるものと見なされます。
次の出力例は、特定のインターフェイスで見られたすべての廃棄とドロップ(キューイング ドロップを除く)を示します。キューイング ドロップは想定どおりの動作である場合があり、エラーの結果生じることもあります(ドロップは廃棄よりも一般的です)。
一部のコマンドでは、ポートが存在するチップを知っておく必要があります。
次の例では、チップの名称は「Gatos」です。この例は、どの Gatos とどの Gatos ポートがイーサネット 1/1 に関連付けられているかを示しています。
通常運用時、Nexus 5000 は論理的帰結に基づいて転送できないフレームに遭遇します。
たとえば、特定のインターフェイスで MAC アドレスを学習し、そのインターフェイスで受信したトラフィックが宛先としてその送信元インターフェイス上の MAC アドレスを持つ場合、このフレームは転送できません。これは既知のアドレスであり、したがってフラッディングできず、着信インターフェイスからトラフィックは送出できません。これはレイヤ 2 トポロジのループを回避するための要件です。
入力ポートが VLAN 内の唯一のポートである場合は、次の例に示すエラー カウンタが増加します。
(注) 「show platform fwm info gatos-errors」コマンドは、ある特定のドロップについてカウンタを 3 回増加させます。
|
|
---|---|
ACL が適用されていない場合には、NX-OS を DoS 攻撃から守るためにハードウェアでレート制限がイネーブルにされている場合に大量の CPU 宛てトラフィックが受信されると、このカウンタが増加します。 |
キューがいっぱいになったときは、入力インターフェイス上の個々のキューで廃棄を増やす必要があります。
Nexus 5000 は 10 Gb/秒ではカットスルー スイッチです。これは、MTU のチェックはできるものの、長さがわかるときにはすでにフレームの送信が開始されていることを意味します。したがって、フレームはドロップできません。このようなフレームは MTU に達した後に切り捨てられ、CRC 値がストンプされます。入力インターフェイスでは Rx Jumbo が増加し、出力インターフェイスでは Tx CRC と Tx Jumbo が増加します。
• 「show interface」コマンドまたは「show hardware internal gatos port e1/1 counters rx」コマンドでジャンボ フレームが示される場合、これはそれらのフレームがドロップされたことを意味するものではありません。ジャンボ フレームとは単に、受信または送信された 1500 バイトを超えるイーサネット フレームのことです。
• 「<b>show queuing interface <i>ex/y</i></b>」コマンドは、現在の(クラスごとの)MTU の設定値を示します。
• MTU 違反に起因するドロップを確認するには、「show hardware internal gatos counters interrupt match mtu*」コマンドを使用します。
• 「show hardware internal gatos port ethernet 1/1 | include instance|mac」コマンドによって出力される、Gatos 番号と fw_instance に一致するカウンタは、MTU 違反が発生してフレームがストンプされたことを示す指標です。
カットスルー ポート上の FCS で CRC エラーが発生した場合は、「show interface」の Rx CRC カウンタが増加します。ただし、FCS はワイヤ上のイーサネット フレームの最後にあるため、CRC エラーのフレームはドロップできません。
出力インターフェイスの Tx CRC エラーが増加し、パス上の次のデバイスに伝播します。
Nexus 5000 が CRC を伝播または生成しているかどうかを確認するには、「show hardware internal gatos counters interrupt match stomp」コマンドを使用します。
• ストンプ値が存在する場合は、そのインターフェイス上に一致する CRC 値があります。
• Rx CRC 値が存在する場合は、すでにエラーのある状態でスイッチポートに入ってきたことがわかります。接続されているデバイスに移動し、エラーをさかのぼって追跡できます。