この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、Catalyst 6500/6880シリーズInstant Accessネットワークでのパケット転送のトラブルシューティング方法について説明します。
Instant Accessベースのネットワークの設計、VNTAG形式、およびパケット転送ロジックについて十分に理解しておくことをお勧めします。
Catalyst 6500/6880 Instant AccessのInstant Accessアーキテクチャの詳細については、次のサイトを参照してください。
Cisco Catalyst インスタント アクセス ソリューションのホワイト ペーパー
このトポロジに関する以降の分析はすべて完了しています。
警告:ここで説明するステップは、ラボ設定でのみ、またはCisco TACエンジニアの直接指導の下で実行されます。
ここで示すコマンドの一部を正常に実行するには、Cisco Catalyst 6500/6880コントローラで「service internal」(隠しコマンド)を有効にします。これにより、隠しコマンドやTAC固有のコマンドの一部がロック解除されます。
6880#configure terminal 6880(config)#service internal
FEXへのフルアクセスを有効にします(サービス内部が必要)。時間(分)は指定します。
6880#test platform software console fex <fex-id> enable timeout <minutes>
このセクションでは、Instant Access/FEX(ファブリックエクステンダ)インターフェイス(Gi1/0/1に接続されたホスト)からCisco Catalyst 6500/6880シリーズコントローラへのパケットフローについて説明します。ここでは、パケット転送に関する最終的な決定について説明します。
パケットがFEX入力インターフェイス(Gi1/0/1)で受信されているかどうかを判別するには、次の方法を使用できます。
パケットの数を生成し、パケットがFEX上で表示されることを確認します。
6880#show int gi101/1/0/1 | in packets input 101 packets input, 151894 bytes, 0 no buffer 6880#show counters interface gi101/1/0/1 delta | in InPackets|InUcastPkts|InMcastPkts 1. InPackets = 104 3. InUcastPkts = 102 4. InMcastPkts = 2
注:設計に基づくと、MACラーニングはコントローラでのみ実行されるため、FEXのMACアドレステーブルは常に空です。
さらにトラブルシューティングするためにFEXからパケットをキャプチャする必要がある場合は、SPANセッションをFEXで直接設定できます(パケットレプリケーションがFEX自体で実行されるように)。主な要件は、SPAN宛先がSPAN送信元と同じFEXに接続されていることです。
6880#attach fex 101 Attach FEX:101 ip:192.168.1.101 Trying 192.168.1.101 ... Open User Access Verification Password: cisco FEX-101>enable Password: cisco FEX-101#conf t FEX-101(config)#monitor session 1 source interface gi1/0/1 FEX-101(config)#monitor session 1 destination interface gi1/0/2
この設定は、パケットキャプチャ(つまりSPANセッション)が6880で次のように直接設定されるシナリオとは異なります。
6880#configure terminal 6880(config)#monitor session 1 source interface gi101/1/0/1 6880(config)#monitor session 1 destination interface gi101/1/0/2
パケットキャプチャがFEXで設定されると、パケット複製はFEX自体でも発生し、FEXとコントローラ間の通信に問題がある場合は、パケットは宛先ポートで観察されます。パケットキャプチャが6880で直接設定されている場合(2番目の例を参照)、コントローラ自体でパケットの複製が発生し、コントローラとFEXの間に通信の問題がある場合は誤った分析が行われる可能性があります。このアプローチを使用すると、SPAN宛先を任意のポート(FEXなど)に接続できます。
これは、両方のシナリオで6880のレプリケーションSPANカウンタを確認することで確認できます。
FEXで直接設定されたSPANセッション – すべてのカウンタが0になる:
6880#clear platform hardware capacity rewrite-engine counter Clear rewrite-engine counter for both switches [confirm] 6880#sh platform hardware capacity rewrite-engine performance | in SPAN RX 1/5 0 0x210 SPAN RX 0 0 0 1/5 0 0x211 SPAN RX 1 0 0 (...)
コントローラで直接設定されたSPANセッション:カウンタは複製されたパケットの数に対応します。複製は、アクティブなVSSシャーシに属している必要のない入力コントローラモジュールで行われます。(例:chassis 2/module 5)。
6880#clear platform hardware capacity rewrite-engine counter Clear rewrite-engine counter for both switches [confirm] 6880#sh platform hardware capacity rewrite-engine performance | in SPAN RX (...> 2/5 0 0x211 SPAN RX 1 0 0 2/5 1 0x210 SPAN RX 0 0 0 2/5 1 0x211 SPAN RX 1 0 0 2/5 2 0x210 SPAN RX 0 102 0 (...)
SPANに対する別の方法として、ポイント2で説明したように、パケットをFEX CPUにリダイレクトする方法があります。log文を使用してACLを作成し、入力インターフェイス(このシナリオではGi1/0/1)に接続し、デバッグを実行してこれらのパケットをキャプチャします。 これにより、FEXでのパケット転送の決定に関する追加の詳細を収集することもできます。
注:このデバッグは、大量のパケットが存在する場合に備えて、コントローラスイッチでCPUの高使用状態を引き起こす可能性もあります。
注:Instant Accessスイッチがスタック構成になっている場合は、監視対象ポートに対してローカルにあるスイッチでデバッグを実行する必要があります。コマンド「session」を実行して、スタック内の他のスイッチにログインします。ここで、switch-noはスイッチ番号に対応します(たとえば、インターフェイスgi2/0/1の場合、switch-noは2です。インターフェイス5/0/11の場合、switch-noは5です)。
6880#attach fex 101 Attach FEX:101 ip:192.168.1.101 Trying 192.168.1.101 ... Open User Access Verification Password: cisco FEX-101>en Password: cisco FEX-101#conf t FEX-101(config)#access-list 100 permit ip host 10.0.0.2 host 10.0.0.1 log FEX-101(config)#access-list 100 permit ip any any FEX-101(config)#int gi1/0/1 FEX-101(config-if)#ip access-group 100 in ! FEX-101#debug platform cpu-queues logging-q
ホストによってパケットが生成されると、ロギングバッファに情報が追加され、パケットの特性(送信元と宛先のMACアドレス、送信元と宛先のIPアドレスなど)、パケットダンプ、および内部パケットの特性が記録されます。
Jun 7 14:05:23.059: Pak recvd on LOGGING-Q: Local Port Fwding L3If: L2If:GigabitEthernet1/0/1 DI:0x1E19, LT:7, Vlan:10 SrcGPN:1, SrcGID:1, ACLLogIdx:0x1, MacDA:0000.0000.0001, MacSA: 0000.0000.0002 IP_SA:10.0.0.2 IP_DA:10.0.0.1 IP_Proto:1 (FEX-101) TPFFD:F3800001_000A400A_01A00076-00011E19_5F5F0000_00002001 (FEX-101) (FEX-101) Jun 7 14:05:23.059: Raw FEX packet Dump: (FEX-101) Jun 7 14:05:23.059: 00 00 00 00 00 01 00 00 00 00 (FEX-101) Jun 7 14:05:23.059: 00 02 08 00 45 00 00 64 04 D3 (FEX-101) Jun 7 14:05:23.059: 00 00 FF 01 A2 C3 0A 00 00 02 (FEX-101) Jun 7 14:05:23.059: 0A 00 00 01 08 00 42 9D 00 13 (FEX-101) Jun 7 14:05:23.062: 00 00 00 00 00 00 38 96 03 04 (FEX-101)
転送された決定を確認するには、次のチェックを実行します(このログで提供されるDI宛先インデックスに基づいて、St1とSt2はスタックポートに対応し、Te1/0/1とTe1/0/2はポートチャネルに属するアップリンクです)。
FEX-101#show platform port-asic dest-map index 0x1E19 Ports: Te1/0/1 St1 Te1/0/2 St2
ポートチャネルからコントローラに向かってどのポートが使用されているかを判別するには(ポート番号はshow etherchannel summaryコマンドを実行することで確認できます)、次の方法を使用します。(この例はIPパケット用であり、非IPの場合はMACアドレスが使用されます)。
FEX-101#show etherchannel load-balance EtherChannel Load-Balancing Configuration: src-dst-ip EtherChannel Load-Balancing Addresses Used Per-Protocol: Non-IP: Source XOR Destination MAC address IPv4: Source XOR Destination IP address IPv6: Source XOR Destination IP address ! FEX-101#test etherchannel load-balance interface po1 ip 10.0.0.2 10.0.0.1 Would select Te1/0/2 of Po1
コントローラに送信されるパケットには、入力インターフェイスを反映するVNTAGが追加されています。この値を決定するには、次の方法に従います(インターフェイスGi1/0/1にVIF+1を使用)。
FEX-101#show platform fex ucast-entries vif sw_idb portname GPN handle res_index ==== ========== ====================== ==== ========= ========= 1 0x5CAC278 GigabitEthernet1/0/1 1 0x5 0x30F0000
パケットがコントローラに到達すると、パケットは入力フォワーディングエンジンによってさらに処理され、パケットに対して何を行うべきかについてさらに決定が行われます。
この例では、ポイント2.1で提供された分析に基づいて、パケットはインターフェイスTe1/0/2経由でFEXから送信されます。相手側で接続されているコントローラインターフェイスを確認するには、次のコマンドを使用します。
6880#show fex infra | in FEX Uplink|FLGS FLGS: Te1/5/13, FLGS: 0x3F FEX Uplink: Te1/0/1 Te2/5/13, FLGS: 0x1F FEX Uplink: Te1/0/2
パケットはポートTe2/5/13で受信されるため、次のチェックが可能です。
パケットがコントローラで受信されると、MACアドレスの学習が行われ、ホストのMACアドレスがすべてのモジュールで学習されます(ここでは、アクティブなスーパーバイザからの例は1つのみです)。
6880#show mac address-table interface gi101/1/0/1 Legend: * - primary entry age - seconds since last seen n/a - not available S - secure entry R - router's gateway mac address entry D - Duplicate mac address entry Displaying entries from active supervisor: vlan mac address type learn age ports ----+----+---------------+-------+-----+----------+----------------------------- * 10 0000.0000.0002 dynamic Yes 10 Gi101/1/0/1
(...)
ポイント2.1.2で説明されているように、パケットキャプチャもコントローラで次のように設定されます。
6880#configure terminal 6880(config)#monitor session 1 source interface gi101/1/0/1 6880(config)#monitor session 1 destination interface gi101/1/0/2
パケットが宛先インターフェイスで確認できる場合、パケットはFEXからコントローラに正常に送信されています。
パケットが内部バッファにキャプチャされるように、標準SPANセッションに加えて、内部パケットキャプチャを設定できます。
6880(config)#monitor session 1 type capture 6880(config-mon-capture)#source interface gi101/1/0/1 ! 6880#monitor capture start %SPAN-SW1-5-PKTCAP_START: Packet capture session 1 started 6880#show monitor capture buffer 1 IP: s=10.0.0.2 , d=10.0.0.1, len 100 2 IP: s=10.0.0.2 , d=10.0.0.1, len 100 3 IP: s=10.0.0.2 , d=10.0.0.1, len 100 4 IP: s=10.0.0.2 , d=10.0.0.1, len 100 (...)
この機能の詳細については、「ミニプロトコルアナライザ」を参照してください。
Catalyst 6500/6880シリーズには、パケット上のコントローラによって実行されるパケット転送の決定に関する詳細な情報を提供する、組み込みの内部パケットキャプチャがあります。
注:6500/SUP2Tおよび6880で有効なELAMの詳細については、「Supervisor Engine 2Tを使用したCatalyst 6500シリーズスイッチのELAM手順」を参照してください。
パケットがキャプチャされると、パケットの送信元(つまり、VIFマッピングに基づいて実行されるFEXインターフェイスを正しく指している場合)、およびパケットが転送される場所が決定されます。
この例では、パケットはスタンバイVSSシャーシで受信されます。
最初にログインすると –
6880#remote login standby Trying Switch ... Entering CONSOLE for Switch Type "^C^C^C" to end this session User Access Verification Password: 6880-sdby#^e Standby console enabled
ELAMを実行します。
6880-sdby#show platform capture elam asic eureka slot 5 Assigned asic_desc=eu50 6880-sdby#show platform capture elam trigger master eu50 dbus dbi ingress ipv4 if ip_sa = 10.0.0.2 6880-sdby#show platform capture elam start cap_commands: Default ELAM RBI PB1 added to list
パケットがホストから送信され、入力フォワーディングエンジン(この例ではシャーシ2上のeu50)に到達すると、キャプチャがトリガーされ、データ数とコロン数が取得されます。
6880-sdby#sh platform capture elam status ELAM Mode: local ID# Role ASIC Slot Inst Ver ELAM Status ----- ---- ------- ---- ---- --- --------- ------ eu50 M EUREKA 5 0 1.3 DBI_ING Capture Completed eu50 s EUREKA 5 0 1.3 RBI_PB1 Capture Completed ID# ELAM Trigger ----- --------- ---------- eu50 DBI_ING FORMAT=IP L3_PROTOCOL=IPV4 IP_SA = 10.0.0.2 eu50 RBI_PB1 TRIG=1 ! 6880-sdby#show platform capture elam data | in IP_SA|IP_DA|SMAC|DMAC|SRC_INDEX|DEST_INDEX|data DBUS data: SRC_INDEX ....................... [19] = 0x2000 [Po101[Te1/5/13,Te2/5/13],Gi101/1/0/1] DEST_INDEX ...................... [19] = 0xC [Te1/1/13] DMAC ............................ = 0000.0000.0001 SMAC ............................ = 0000.0000.0002 IP_SA ........................... = 10.0.0.2 IP_DA ........................... = 10.0.0.1 RBUS data: DEST_INDEX ...................... [19] = 0x380 [Switch/Router]
キャプチャ出力に基づいて、MAC/IPアドレス(図を参照)を持つパケットがFEXのGi101/1/0/1(DBUS SRC_INDEXフィールド)で受信され、コントローラで設定されたPo101経由でコントローラに渡されています。決定は、このパケットをVSS CPU(RBUS DEST_INDEXフィールド)に転送することです。
注:VIFと送信元インデックスの間でマッピングされるものは、VNTAGマネージャによって実行され、チェックできます(この場合、FEXのポートGi1/0/1からユニキャストフレームを渡すときにVIF=1が使用されました。動作状態は常に2で、タイプはユニキャストまたはマルチキャストの場合があります)。
6880#test platform software switch virtual vntag_mgr vif-map vif 1 detail VIF INFO: VIF# 1 Type UNICAST VIF LTL# 2000 OperStatus # 2
このセクションでは、コントローラのCisco Catalyst 6500/6880シリーズ入力フォワーディングエンジンからInstant Access/FEX(ファブリックエクステンダ)インターフェイスまでのパケットフローについて説明します。
パケットがCatalyst 6500/6880スイッチによって正常に受信されているかどうかを判別するには、スタンドアロン/VSSスイッチをトラブルシューティングするための標準的な方法が使用されます。これらの方法には、パケットキャプチャ(SPANセッションなど)が含まれます。これらのツールの詳細については、次のURLを参照してください。
パケットが転送されるための決定が、有効なVIF識別子を使用してFEXに送信されることであるかどうかを判断するために、入力フォワーディングエンジン(パケットが受信されたインターフェイスを処理するフォワーディングエンジン)のコントローラでパケットキャプチャが実行されます。
6500/SUP2Tおよび6880で有効なELAMの詳細については、次を参照してください。
Supervisor Engine 2T を含む Catalyst 6500 シリーズ スイッチの ELAM 手順
この例では、これは有効なELAM設定です。(トリガーの「shim」キーワードは、パケットがCPUから発信される場合に使用されます。中継トラフィックでは、このキーワードは使用されません)。
6880#show platform capture elam asic eureka slot 5 6880#show platform capture elam trigger master eu50 dbus dbi ingress shim ipv4 if ip_sa = 10.0.0.1 ip_da=10.0.0.2 6880#sh platform capture elam start 6880#sh platform capture elam status ELAM Mode: local ID# Role ASIC Slot Inst Ver ELAM Status ----- ---- ------- ---- ---- --- --------- ------ eu50 M EUREKA 5 0 1.3 DBI_ING Capture Completed eu50 s EUREKA 5 0 1.3 RBI_PB1 Capture Completed ID# ELAM Trigger ----- --------- ---------- eu50 DBI_ING FORMAT=OTHERS SHIM_ETYPE=E8_SHIM_ETYPE ETYPE=IPV4_ETYPE IP_SA = 10.0.0.1 IP_DA=10.0.0.2 eu50 RBI_PB1 TRIG=1
キャプチャされた結果を次に示します。
6880#show platform capture elam data | in IP_SA|IP_DA|SMAC|DMAC|SRC_INDEX|DEST_INDEX|data DBUS data: SRC_INDEX ....................... [19] = 0x380 [Switch/Router,Po255[Te2/5/1,Te2/5/5,Te2/5/6]] DEST_INDEX ...................... [19] = 0x0 [Te1/1/1] DMAC ............................ = 0000.0000.0002 SMAC ............................ = 0000.0000.0001 IP_SA ........................... = 10.0.0.1 IP_DA ........................... = 10.0.0.2 IP_DATA [224] RBUS data: DEST_INDEX ...................... [19] = 0x2000 [Po101[Te1/5/13,Te2/5/13],Gi101/1/0/1]
パケットはCPU(DBUS SRC_INDEXのスイッチ/ルータエントリ)から受信されています。転送の決定は、パケットをPo101(コントローラをFEXに接続するポートチャネル)経由で送信してから、FEX101のインターフェイスGi1/0/1経由で送信することです。
この場合に使用されるVIF識別子は、コマンドを介して確認できます。この場合、LTL値はDBUSのDEST_INDEXフィールドから取得されます。
6880#test platform software switch virtual vntag_mgr vif-map ltl 0x2000 detail VIF INFO: VIF# 1 Type UNICAST VIF LTL# 2000 OperStatus # 2
コントローラの出力インターフェイスはport-channelであるため、これらのコマンドを実行してどの物理リンクが使用されているかを判別できます。
6880#show etherchannel load-balance EtherChannel Load-Balancing Configuration: src-dst-ip enhanced mpls label-ip EtherChannel Load-Balancing Mode on FEX Modules: src-dst-ip EtherChannel Load-Balancing Addresses Used Per-Protocol: Non-IP: Source XOR Destination MAC address IPv4: Source XOR Destination IP address IPv6: Source XOR Destination IP address MPLS: Label or IP ! 6880#test etherchannel load-balance interface po101 ip 10.0.0.1 10.0.0.2 Computed RBH: 0x3 Would select Te1/5/13 of Po101
パケットがコントローラから受信され、FEXホストインターフェイス(HIF)に送信されるシナリオに対してFEXをトラブルシューティングする方法は、セクション2に記載されているものと一致します。記載されている唯一の違いは、2.1.3(FEX CPUへのパケットリダイレクション)に関連しています。
このアプローチの詳細については、セクション2.1.3を参照してください。
この例では、コントローラから受信したパケットをキャプチャするために、FEXで次の設定が行われます(インターフェイスが、ポイント3.1.2で説明されているように、最初に正しく識別された場合、ACLは単一のインターフェイスに割り当てられます)。
6880#attach fex 101 Attach FEX:101 ip:192.168.1.101 Trying 192.168.1.101 ... Open User Access Verification Password: cisco FEX-101>en Password: cisco FEX-101#conf t Enter configuration commands, one per line. End with CNTL/Z. FEX-101(config)#access-list 100 permit ip host 10.0.0.1 host 10.0.0.2 log FEX-101(config)#access-list 100 permit ip any any FEX-101(config)#int te1/0/1 FEX-101(config-if)#ip access-group 100 in FEX-101(config-if)#int te1/0/2 FEX-101(config-if)#ip access-group 100 in FEX-101#debug platform cpu-queues logging-q debug platform cpu-queue logging-q debugging is on
注:Instant Accessスイッチがスタックされている場合、コントローラへのアップリンクを持つスイッチでデバッグが実行されます。コマンド「session」を実行して、スタック内の別のスイッチにログインします。ここで、switch-noはスイッチ番号に対応します(たとえば、インターフェイスgi2/0/1の場合、switch-noは2です。インターフェイス5/0/11の場合、switch-noは5です)。
コントローラからのパケットが正常にFEXに送信されると、syslogに次の情報が生成されます。
Pak recvd on LOGGING-Q: Local Port Fwding L3If: L2If:TenGigabitEthernet1/0/1 DI:0x1F2A, LT:0, Vlan:10 SrcGPN:456, SrcGID:456, ACLLogIdx:0x1, MacDA:0000.0000.0002, MacSA: 0000.0000.0001 Non (IPv4/IPv6/ARP/RARP) TPFFD:F38001C8_000A400A_01A00080-00011F2A_F5F50000_00002BFD Jun 7 15:37:24.482: Raw FEX packet Dump: Jun 7 15:37:24.482: 00 00 00 00 00 02 00 00 00 00 Jun 7 15:37:24.482: 00 01 89 26 80 01 0B FD 81 00 Jun 7 15:37:24.482: 00 0A 08 00 45 00 00 64 76 87 Jun 7 15:37:24.482: 00 00 FF 01 31 0F 0A 00 00 01 Jun 7 15:37:24.482: 0A 00 00 02 08 00 A9 FF 00 12
12ビット(対応する16進数値については、Instant AccessホワイトペーパーのVNTAGパケット形式を参照)は、パケット自体に渡された宛先VIF値に対応します。この値(10進数に変更)は、FEXの終了点でさらに相互参照されます。
このコマンドは、出口を決定するために使用されます。これにより、ユニキャストVIFが考慮されます(VNTAGマネージャに関するポイント2.2.3の注を参照)。
FEX-101#sh platform fex ucast-entries vif sw_idb portname GPN handle res_index ==== ========== ====================== ==== ========= ========= 1 0x5CAC278 GigabitEthernet1/0/1 1 0x5 0x30F0000 2 0x5CAE2E0 GigabitEthernet1/0/2 2 0x6 0x30F0000
(...)
マルチキャストトラフィックの場合、ロジックは次のようになります。
1)特定のマルチキャストVIFの出力インターフェイスセットを決定します。
FEX-101#sh platform fex mcast-entries (...) Entry : 2 ================= Mcast VIF = 3072 : destid = 0x23DF : handle = 0x37 : result_index = 0x4D DestId 23DF details with GPN list index next flags cmi #GPN GPN 0x23DF 0xFFFF 0x00 0x0000 3 1 2 464 (...)
この例では、VIF=3072に対して、3つの出力インターフェイス(1、2、および464)が内部GPN番号で選択されています。 これらの内部GPNポート番号を物理インターフェイスに変換するには、次のコマンドを使用できます。
FEX-101#show platform pm if-numbers interface gid gpn lpn port slot unit slun port-type lpn-idb gpn-idb ---------------------------------------------------------------------- Gi1/0/1 1 1 1 0/2 1 1 1 local Yes Yes Gi1/0/2 2 2 2 0/1 1 2 2 local Yes Yes (...) Po2 464 464 0 16/0 9 2 2 local No No
これらの出力は、マルチキャスト宛先VIFが3072である受信パケットがインターフェイスGi1/0/1、Gi1/0/2、およびポートチャネル2に転送されることを意味します。
FEXに関連する問題が発生した場合は、次のコマンド出力が収集され、TACケースがオープンされたときに追加されます。
6880#show tech-support 6880#show tech-support fex infra 6880#attach fex <fex-id> Password: cisco FEX-101>en Password: cisco FEX-101#show tech-support
改定 | 発行日 | コメント |
---|---|---|
1.0 |
12-May-2022 |
初版 |