この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、単一のポッドファブリックでポリシーベースのリダイレクト(PBR)を使用してアプリケーションセントリックインフラストラクチャ(ACI)環境をトラブルシューティングする方法について説明します。
この記事では、次の項目に関する一般的な知識を持っていることが推奨されます。
このトラブルシューティングの演習は、第2世代のNexusスイッチN9K-C93180YC-EXおよびN9K-C93240YC-FX2を使用するACIバージョン6.0(8f)で行われました。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
バージョン | 主な機能 |
2.0(1m) |
|
3.x以前 |
|
3.2(x) |
|
4.0(x) |
|
4.2(1) |
|
4.2(3) |
|
5.0(1) |
|
5.2(1) |
|
6.0(1) |
|
ELAMとFtriageの詳細な説明は、セッションBRKDCN-3900bのCiscoLiveオンデマンドライブラリにあります。
また、すべての設定ガイドラインは、ホワイトペーパー『Cisco Application Centric Infrastructure Policy-Based Redirect Service Graph Design White Paper』に記載されています。
物理トポロジ:
ステップ1:障害
設定またはポリシーのインタラクションに問題がある場合、ACIは障害を生成します。障害が発生した場合のPBRレンダリングプロセスに関する特定の障害が特定されています。
F1690:構成は次の理由により無効です:
このエラーは、サービスノードのカプセル化されたVLANが使用できないことを示します。たとえば、論理デバイスで使用されるVirtual Machine Manager (VMM)ドメインに関連付けられたVLANプールで使用可能なダイナミックVLANがない可能性があります。
解決策:論理デバイスで使用されているドメイン内のVLANプールを確認します。 論理デバイスインターフェイスが物理ドメイン内にある場合は、カプセル化されたVLAN設定も検査します。これらの設定は、テナント>サービス> L4-L7 >デバイスおよびファブリック>アクセスポリシー>プール> VLANにあります。
逆に、論理デバイスインターフェイス(LODI)が仮想ドメイン内にあり、トランクインターフェイス経由でESXiホストに接続する場合は、trunking portオプションが有効になっていることを確認します。
このエラーは、論理デバイスがサービスグラフのレンダリングに配置できないことを示します。たとえば、サービスグラフに関連付けられた契約に一致するデバイス選択ポリシーがない可能性があります。
解決策:デバイス選択ポリシーが定義されていることを確認します。デバイス選択ポリシーは、契約名、サービスグラフ名、およびサービスグラフ内のノード名に基づいて、サービスデバイスとそのコネクタの選択基準を指定します。これは、テナント>サービス> L4-L7 > Device Selection Policyの下にあります。
注:サービスグラフテンプレートを導入すると、ACIはソースEPGのブリッジドメインを事前に選択します。PBRコンシューマコネクタのブリッジドメインを変更する必要があります。同じことが、プロバイダーコネクタにも当てはまります。
このエラーは、サービスノードのブリッジドメイン(BD)が見つからないことを示します。たとえば、BDはデバイス選択ポリシーでは指定されません。
解決策:デバイス選択ポリシーでBDが指定されていることと、コネクタ名が正しいことを確認します。この設定は、テナント>サービス> L4-L7 > Devices Selection Policy > [ Contract + SG ] > [ Consumer | Provider ]の下にあります。
これらの障害は、デバイスがクラスタインターフェイスと関係がないことを示しています。
解決策:レイヤ4 ~レイヤ7(L4-L7)デバイス設定に、特定の具体的なインターフェイスセレクタが含まれていることを確認します。この設定は、テナント>サービス> L4-L7 >デバイス> [ Device ] >クラスタインターフェイスにあります。
このエラーは、サービスグラフ内のサービス機能でリダイレクションがアクティブ化されているにもかかわらず、PBRポリシーが適用されていないことを示します。
解決策:PBRポリシーがDevice Selection Policy設定内で設定されていることを確認します。この設定は、テナント>サービス> L4-L7 > Devices Selection Policy > [ Contract + SG ] > [ Consumer | Provider ]の下にあります。
F0759: graph-rendering-failure - "Service graph for tenant < tenant > could not be instantiated.関数ノード<ノード>構成が無効です。
関数ノード名の構成が無効なため、指定されたテナントのサービスグラフをインスタンス化できませんでした。
このエラーは、前述の状態に関連する設定の問題があることを示唆しています。
さらに、初期導入時に、この障害が一時的に発生し、すぐに解決される可能性があります。これは、すべてのポリシーを導入するためにACIで実行されるレンダリングプロセスが原因で発生します。
解決:報告された他の障害を調査し、状況に応じて解決します。
F0764: configuration-failed - "L4-L7 Devices configuration < device > for tenant < tenant > is invalid."
PBRデバイスポリシーの構成が無効なため、指定されたテナントのサービスグラフをインスタンス化できませんでした。
このエラーは、前述の状態に関連する設定の問題があることを示唆しています。
解決:報告された他の障害を調査し、状況に応じて解決します。
F0772: configuration-failed - "LIf configuration < cluster > for L4-L7 Devices < device > for tenant < tenant >は無効です。"
PBRデバイスクラスタインターフェイス選択の構成が無効なため、指定されたテナントのサービスグラフをインスタンス化できませんでした。
このエラーは、前述の状態に関連する設定の問題があることを示唆しています。
解決:報告された他の障害を調査し、状況に応じて解決します。
ステップ2:送信元および宛先エンドポイントのラーニング
ファブリック内で送信元エンドポイントと宛先エンドポイントが認識されていることを確認します。これには基本設定が必要です。
正しいEPGとインターフェイスでエンドポイント学習を確認するには、エンドポイントが学習されたリーフ(コンピュートリーフとも呼ばれる)で次のコマンドを実行します。
show system internal epm endpoint [ ip | mac ] [ x.x.x.x | eeee.eeee.eeee ]
Leaf101# show system internal epm endpoint ip 10.10.100.10
MAC : aaaa.aaaa.aaaa ::: Num IPs : 1
IP# 0 : 10.10.100.10 ::: IP# 0 flags : ::: l3-sw-hit: No
Vlan id : 57 ::: Vlan vnid : 10865 ::: VRF name : TZ:Prod
BD vnid : 16056291 ::: VRF vnid : 2162692
Phy If : 0x16000008 ::: Tunnel If : 0
Interface : port-channel9
Flags : 0x80004c05 ::: sclass : 49155 ::: Ref count : 5
EP Create Timestamp : 02/18/2025 15:00:18.767228
EP Update Timestamp : 02/18/2025 15:04:57.908343
EP Flags : local|VPC|IP|MAC|sclass|timer|
::::
Leaf101#
このコマンドでは、エンドポイントが分類されているEPGに関連付けられているpcTag(sclass)を識別し、インターフェイス、VRFスコープ、およびMACアドレス情報を取得できます。
送信元または宛先エンドポイントの場所がわからない場合は、APICで次のコマンドを使用できます。
show endpoint [ ip | mac ] [ x.x.x.x | eeee.eeee.eeee ]
APIC# show endpoint ip 10.10.100.10
Legends:
(P):Primary VLAN
(S):Secondary VLAN
Dynamic Endpoints:
Tenant : TZ
Application : TZ
AEPg : Prod-Consumer
End Point MAC IP Address Source Node Interface Encap Multicast Address Create TS
----------------- ---------------------------------------- ------------ ---------- ------------------------------ --------------- --------------- --------------------
AA:AA:AA:AA:AA:AA 10.10.100.10 learned,vmm 101 102 vpc VPC-ESX-169 vlan-2673 not-applicable 2025-02-18T15:16:40.
565-06:00
Total Dynamic Endpoints: 1
Total Static Endpoints: 0
APIC#
GUIでは、エンドポイントの監視と管理のために、Operations > EP Trackerの順に選択することで、EP Tracker機能にアクセスできます。
送信元と宛先のエンドポイントから収集した情報を使用して、PBRポリシーの導入に集中できます。
ステップ3:契約のリダイレクト
PBRはサービスグラフフレームワークに統合されています。そのため、サービスグラフテンプレートは、契約に従って送信元スイッチと宛先スイッチの両方に導入し、設定する必要があります。前の手順で収集したpcTags情報を利用して、次のコマンドを実行すると、エンドポイントグループ(EPG)がサービスグラフグループにリダイレクトされているかどうかを確認できます。
show zoning-rule scope [ vrf_scope ]
ゾーン分割ルールでは、次のルールを考慮する必要があります。
Leaf101# show zoning-rule scope 2162692
+---------+--------+--------+----------+----------------+---------+---------+------+------------------+----------------------+
| Rule ID | SrcEPG | DstEPG | FilterID | Dir | operSt | Scope | Name | Action | Priority |
+---------+--------+--------+----------+----------------+---------+---------+------+------------------+----------------------+
| 4565 | 49155 | 49156 | default | bi-dir | enabled | 2162692 | | redir(destgrp-8) | src_dst_any(9) |
| 4565 | 49156 | 49155 | default | uni-dir-ignore | enabled | 2162692 | | redir(destgrp-9) | src_dst_any(9) |
| 4973 | 16387 | 49155 | default | uni-dir | enabled | 2162692 | | permit | src_dst_any(9) |
| 4564 | 49157 | 49156 | default | uni-dir | enabled | 2162692 | | permit | src_dst_any(9) |
+---------+--------+--------+----------+----------------+---------+---------+------+------------------+----------------------+
Leaf101#
ポリシーベースルーティング(PBR)の導入プロセス中に作成されたシャドウEPGのpcTagを確認するには、Tenants > [ TENANT_NAME ] > Services > L4-L7 > Deployed Graph Instance > [ SG_NAME ] > Function Node - N1に移動します。
このスクリプトは、ゾーン分割ルール、フィルタ、統計情報、およびEPG名を関連付けます。このスクリプトは、ACIリーフまたはAPIC上で直接安全に実行できます。APIC上で実行すると、すべてのリーフスイッチで具体的なオブジェクトが収集されます。大規模なポリシー展開では数分かかる場合があります。
ACIバージョン3.2以降では、contract_parserはイメージ内にバンドルされており、リーフで使用できます。iBashシェルからcontract_parser.pyと入力するだけです。
Leaf101# contract_parser.py --sepg 49155
Key:
[prio:RuleId] [vrf:{str}] action protocol src-epg [src-l4] dst-epg [dst-l4] [flags][contract:{str}] [hit=count]
[7:4999] [vrf:TZ:Prod] log,redir ip tn-TZ/ap-TZ/epg-Prod-Consumer(49155) tn-TZ/ap-TZ/epg-Prod-Provideer(49156) [contract:uni/tn-TZ/brc-TZ-PBR-Contract] [hit=81]
destgrp-8 vrf:TZ:Prod ip:192.168.100.10 mac:00:50:56:B7:D0:5D bd:uni/tn-TZ/BD-Cons-Connector
Leaf101#
このコマンドは、コントラクトアクション、送信元および宛先EPG、使用中のコントラクト名、ヒットカウントなどの詳細を提供します。
ステップ4:リダイレクトグループ
ゾーン分割ルールに適用されたコントラクトに基づいてリダイレクトグループを特定した後、次のステップとして、リダイレクト対象のデバイスのIPアドレスとMACアドレスを特定します。これを行うには、次のコマンドを実行します。
show service redir info group [ destgrp_ID ]
Leaf101# show service redir info group 8
===============================================================================================================================================================
LEGEND
TL: Threshold(Low) | TH: Threshold(High) | HP: HashProfile | HG: HealthGrp | BAC: Backup-Dest | TRA: Tracking | RES: Resiliency | W: Weight
===============================================================================================================================================================
GrpID Name destination HG-name BAC W operSt operStQual TL TH HP TRA RES
===== ==== =========== ============== === === ======= ============ === === === === ===
8 destgrp-8 dest-[192.168.100.10]-[vxlan-2162692] Not attached N 1 enabled no-oper-grp 0 0 sym no no
Leaf101#
Leaf101# show service redir info group 9
===============================================================================================================================================================
LEGEND
TL: Threshold(Low) | TH: Threshold(High) | HP: HashProfile | HG: HealthGrp | BAC: Backup-Dest | TRA: Tracking | RES: Resiliency | W: Weight
===============================================================================================================================================================
GrpID Name destination HG-name BAC W operSt operStQual TL TH HP TRA RES
===== ==== =========== ============== === === ======= ============ === === === === ===
9 destgrp-9 dest-[192.168.200.20]-[vxlan-2162692] Not attached N 1 enabled no-oper-grp 0 0 sym no no
Leaf101#
このコマンドを使用すると、リダイレクトグループの動作ステータス(OperSt)、L4-L7 PBRセクションで設定されたIPアドレス、およびPBRノードブリッジドメインに関連付けられたVRFのVNIDを確認できます。次に、設定されているMACアドレスを判別する必要があります。
show service redir info destinations ip [ PBR-node IP ] vnid [ VRF_VNID ]
Leaf101# show service redir info destination ip 192.168.100.10 vnid 2162692
===============================================================================================================================================================
LEGEND
TL: Threshold(Low) | TH: Threshold(High) | HP: HashProfile | HG: HealthGrp | BAC: Backup-Dest | TRA: Tracking | RES: Resiliency | W: Weight
===============================================================================================================================================================
Name bdVnid vMac vrf operSt operStQual HG-name
==== ====== ==== ==== ===== ========= =======
dest-[192.168.100.10]-[vxlan-2162692] vxlan-15826939 00:50:56:B7:D0:5D TZ:Prod enabled no-oper-dest Not attached
Leaf101#
Leaf101# show service redir info destination ip 192.168.200.20 vnid 2162692
===============================================================================================================================================================
LEGEND
TL: Threshold(Low) | TH: Threshold(High) | HP: HashProfile | HG: HealthGrp | BAC: Backup-Dest | TRA: Tracking | RES: Resiliency | W: Weight
===============================================================================================================================================================
Name bdVnid vMac vrf operSt operStQual HG-name
==== ====== ==== ==== ===== ========= =======
dest-[192.168.200.20]-[vxlan-2162692] vxlan-16646036 00:50:56:B7:BF:94 TZ:Prod enabled no-oper-dest Not attached
Leaf101#
前述の詳細に加えて、このコマンドは、VRF名、BD VNID、およびPBRノードの設定済みMACアドレスなどの有益な情報を提供します。
注:この段階では、IPアドレスとMACアドレスの両方がユーザ設定になっていることに注意してください。つまり、L4-L7ポリシーベースルーティング(PBR)定義中に入力エラーが発生する可能性があります。
ステップ5:PBRノードがトラフィックを受信していません。
PBRフォワーディングで発生する一般的な問題は、PBRノードに到達するトラフィックがないことです。この問題の一般的な原因は、L4-L7ポリシーベースルーティング(PBR)設定内のMACアドレスの指定が誤っていることです。
L4-L7ポリシーベースルーティングで設定されたMACアドレスの精度を検証するには、ステップ2で以前使用したコマンドを実行します。このコマンドは、サービスリーフとして指定されたリーフスイッチ上で実行できます。このリーフスイッチでノードが学習されます。
show system internal epm endpoint [ ip | mac ] [ x.x.x.x | eeee.eeee.eeee ]
Leaf103# show system internal epm endpoint ip 192.168.100.10
MAC : 0050.56b7.d05d ::: Num IPs : 1
IP# 0 : 192.168.100.10 ::: IP# 0 flags : ::: l3-sw-hit: Yes ::: flags2 : dp-lrn-dis
Vlan id : 71 ::: Vlan vnid : 10867 ::: VRF name : TZ:Prod
BD vnid : 15826939 ::: VRF vnid : 2162692
Phy If : 0x16000008 ::: Tunnel If : 0
Interface : port-channel19
Flags : 0x80004c25 ::: sclass : 16387 ::: Ref count : 5
EP Create Timestamp : 02/19/2025 12:07:44.065032
EP Update Timestamp : 02/19/2025 15:27:03.400086
EP Flags : local|vPC|peer-aged|IP|MAC|sclass|timer|
::::
Leaf103#
•••••
Leaf103# show system internal epm endpoint ip 192.168.200.20
MAC : 0050.56b7.bf94 ::: Num IPs : 1
IP# 0 : 192.168.200.20 ::: IP# 0 flags : ::: l3-sw-hit: Yes ::: flags2 : dp-lrn-dis
Vlan id : 60 ::: Vlan vnid : 10866 ::: VRF name : TZ:Prod
BD vnid : 16646036 ::: VRF vnid : 2162692
Phy If : 0x16000008 ::: Tunnel If : 0
Interface : port-channel19
Flags : 0x80004c25 ::: sclass : 49157 ::: Ref count : 5
EP Create Timestamp : 02/19/2025 13:51:03.377942
EP Update Timestamp : 02/19/2025 15:28:34.151877
EP Flags : local|vPC|peer-aged|IP|MAC|sclass|timer|
::::
Leaf103#
EPMテーブルに記録されたMACアドレスが、サービスリダイレクトグループで設定されたアドレスと一致することを確認します。PBRノードの宛先への適切なトラフィックルーティングを確保するには、わずかな入力エラーでも修正する必要があります。
ステップ6:トラフィックフロー。
ELAMプロセスの設定と解釈をエンドツーエンドで自動化するように設計されたAPIC用のCLIツール。このツールを使用すると、特定のフローと、そのフローの起点となるリーフスイッチを指定できます。各ノードでELAMを順次実行して、フローの転送パスを分析します。このツールは、パケットパスを容易に認識できない複雑なトポロジで特に役立ちます。
APIC # ftriage -user admin route -sip 10.10.100.10 -dip 10.20.200.20 -ii LEAF:101,102
Starting ftriage
Log file name for the current run is: ftlog_2025-02-25-10-26-05-108.txt
2025-02-25 10:26:05,116 INFO /controller/bin/ftriage -user admin route -sip 10.10.100.10 -dip 10.20.200.20 -ii LEAF:101,102
Request password info for username: admin
Password:
2025-02-25 10:26:31,759 INFO ftriage: main:2505 Invoking ftriage with username: admin
2025-02-25 10:26:34,188 INFO ftriage: main:1546 Enable Async parellel ELAM with 2 nodes
2025-02-25 10:26:57,927 INFO ftriage: fcls:2510 LEAF101: Valid ELAM for asic:0 slice:0 srcid:64 pktid:1913
2025-02-25 10:26:59,120 INFO ftriage: fcls:2863 LEAF101: Signal ELAM found for Async lookup
2025-02-25 10:27:00,620 INFO ftriage: main:1317 L3 packet Seen on LEAF101 Ingress: Eth1/45 (Po9) Egress: Eth1/52 Vnid: 2673
2025-02-25 10:27:00,632 INFO ftriage: main:1372 LEAF101: Incoming Packet captured with [SIP:10.10.100.10, DIP:10.20.200.20]
•••
2025-02-25 10:27:08,665 INFO ftriage: main:480 Ingress BD(s) TZ:Prod-Consumer
2025-02-25 10:27:08,666 INFO ftriage: main:491 Ingress Ctx: TZ:Prod Vnid: 2162692
•••
2025-02-25 10:27:45,337 INFO ftriage: pktrec:367 LEAF101: traffic is redirected
•••
2025-02-25 10:28:10,701 INFO ftriage: unicast:1550 LEAF101: traffic is redirected to vnid:15826939 mac:00:50:56:B7:D0:5D via tenant:TZ graph:TZ-PBR-SG contract: TZ-PBR-Contract
•••
2025-02-25 10:28:20,339 INFO ftriage: main:975 Found peer-node SPINE1001 and IF: Eth1/1 in candidate list
•••
2025-02-25 10:28:39,471 INFO ftriage: main:1366 SPINE1001: Incoming Packet captured with Outer [SIP:10.2.200.64, DIP:10.2.64.97] .... Inner [SIP:10.10.100.10, DIP:10.20.200.20]
2025-02-25 10:28:39,472 INFO ftriage: main:1408 SPINE1001: Outgoing packet's Vnid: 15826939
2025-02-25 10:28:58,469 INFO ftriage: fib:524 SPINE1001: Proxy in spine
•••
2025-02-25 10:29:07,898 INFO ftriage: main:975 Found peer-node LEAF103. and IF: Eth1/50 in candidate list
•••
2025-02-25 10:29:35,331 INFO ftriage: main:1366 LEAF103: Incoming Packet captured with Outer [SIP:10.2.200.64, DIP:10.2.200.64] .... Inner [SIP:10.10.100.10, DIP:10.20.200.20]
•••
2025-02-25 10:29:50,277 INFO ftriage: ep:128 LEAF103: pbr traffic with dmac: 00:50:56:B7:D0:5D
2025-02-25 10:30:07,374 INFO ftriage: main:800 Computed egress encap string vlan-2676
2025-02-25 10:30:13,326 INFO ftriage: main:535 Egress Ctx TZ:Prod
2025-02-25 10:30:13,326 INFO ftriage: main:536 Egress BD(s): TZ:Cons-Connector
•••
2025-02-25 10:30:18,812 INFO ftriage: misc:908 LEAF103: caller unicast:581 EP if(Po19) same as egr if(Po19)
2025-02-25 10:30:18,812 INFO ftriage: misc:910 LEAF103: L3 packet caller unicast:668 getting bridged in SUG
2025-02-25 10:30:18,813 INFO ftriage: main:1822 dbg_sub_nexthop function returned values on node LEAF103 done True, nxt_nifs None, nxt_dbg_f_n , nxt_inst , eg_ifs Eth1/45, Vnid: 2676
2025-02-25 10:30:19,378 INFO ftriage: acigraph:794 : Ftriage Completed with hunch: matching service device not found
APIC #
Embedded Logic Analyzer Module(ELAM)は、ユーザがハードウェアで特定の条件を確立し、それらの条件を満たす最初のパケットまたはフレームをキャプチャできるようにする診断ツールです。キャプチャが成功すると、ELAMステータスはtriggeredと表示されます。トリガー時にELAMが無効になり、データダンプの収集が可能になるため、そのパケットまたはフレームに対してスイッチのASICで実行される多数の転送決定の分析が容易になります。ELAMはASICレベルで動作し、スイッチのCPUや他のリソースに影響を与えないようにします。
コマンド構文の構造。この構造は、『ACI Intra-Fabric Forwarding Toolsのトラブルシューティング』のドキュメントから収集されたものです
vsh_lc [This command enters the line card shell where ELAMs are run]
debug platform internal <asic> elam asic 0 [refer to the ASICs table]
トリガーする条件の設定
trigger reset [ensures no existing triggers are running]
trigger init in-select <number> out-select <number> [determines what information about a packet is displayed and which conditions can be set]
set outer/inner [sets conditions]
start [starts the trigger]
status [checks if a packet is captured]
パケット分析を含むダンプを生成します。
ereport [display detailed forwarding decision for the packet]
対象となるすべてのデバイス間のトラフィックフローを把握することが重要です。Ftriageツールは、このフローの優れた要約を提供します。ただし、詳細な段階的検証と、パケット受信プロセスのより深い洞察を得るために、ネットワークトポロジ内の各点でEmbedded Logic Analyzer Module(ELAM)を実行できます。
1. 入力トラフィックは、送信元サーバが学習されたコンピューティングリーフで発生します。この特定のシナリオでは、送信元がvPCインターフェイスの背後に配置されているため、vPCピアでELAMを設定する必要があります。これは、ハッシュアルゴリズムによって選択された物理インターフェイスが不確定であるために必要です。
LEAF101# vsh_lc
module-1# debug platform internal tah elam asic 0
module-1(DBG-elam)# trigger reset
module-1(DBG-elam)# trigger init in-select 6 out-select 1
module-1(DBG-elam-insel6)# reset
module-1(DBG-elam-insel6)# set outer ipv4 src_ip 10.10.100.10 dst_ip 10.20.200.20
module-1(DBG-elam-insel6)# start
module-1(DBG-elam-insel6)# status
ELAM STATUS
===========
Asic 0 Slice 0 Status Triggered
Asic 0 Slice 1 Status Armed
module-1(DBG-elam-insel6)# ereport
======================================================================================================
Trigger/Basic Information
======================================================================================================
•••
Incoming Interface : 0x40( 0x40 ) >>> Eth1/45
•••
-------------------------------------------------------------------------------------------------------
Outer L2 Header
-------------------------------------------------------------------------------------------------------
Destination MAC : 0022.BDF8.19FF >>> Bridge-domain MAC address
Source MAC : AAAA.AAAA.AAAA
802.1Q tag is valid : yes( 0x1 )
CoS : 0( 0x0 )
Access Encap VLAN : 2673( 0xA71 )
-------------------------------------------------------------------------------------------------------
Outer L3 Header
-------------------------------------------------------------------------------------------------------
L3 Type : IPv4
IP Version : 4
DSCP : 0
IP Packet Length : 84 ( = IP header(28 bytes) + IP payload )
Don't Fragment Bit : set
TTL : 64
IP Protocol Number : ICMP
IP CheckSum : 6465( 0x1941 )
Destination IP : 10.20.200.20
Source IP : 10.10.100.10
-------------------------------------------------------------------------------------------------------
Contract Lookup Key
-------------------------------------------------------------------------------------------------------
IP Protocol : ICMP( 0x1 )
L4 Src Port : 2048( 0x800 )
L4 Dst Port : 7345( 0x1CB1 )
sclass (src pcTag) : 49155( 0xC003 ) >>> Prod-Consumer EPG
dclass (dst pcTag) : 49156( 0xC004 ) >>> Prod-Provider EPG
src pcTag is from local table : yes >>> EPGs are known locally
derived from a local table on this node by the lookup of src IP or MAC
Unknown Unicast / Flood Packet : no
If yes, Contract is not applied here because it is flooded
-------------------------------------------------------------------------------------------------------
Sideband Information
-------------------------------------------------------------------------------------------------------
ovector : 176( 0xB0 ) >>> Eth1/52
Ovec in "show plat int hal l2 port gpd"
Opcode : OPCODE_UC
-------------------------------------------------------------------------------------------------------
sug_luc_latch_results_vec.luc3_0.service_redir: 0x1 >>> Service Redir 0x1 = PBR was applied
------------------------------------------------------------------------------------------------------
提供された情報から、service_redirオプションが有効なため、パケットがポリシーベースルーティング(PBR)経由でリダイレクトされていることが明らかです。また、sclassとdclassの値を取得します。この特定のシナリオでは、スイッチはdclassを認識します。ただし、宛先エンドポイントがEPMテーブルに存在しない場合、dclass値はデフォルトで1になります。
さらに、入力インターフェイスはSRCIDによって決定され、出力インターフェイスはベクトル値によって識別されます。次の値は、vsh_lcレベルで次のコマンドを実行することによって、前面ポートに変換できます。
show platform internal hal l2 port gpd
2. フローの後続のステップでは、スパインスイッチに到達して宛先MACアドレスをPBRノードにマッピングします。トラフィックはVXLANヘッダーでカプセル化されるため、スパインまたはリモートリーフでELAMを実行するには、in-select 14を使用してカプセル化を正しくデコードする必要があります。
SPINE1001# vsh_lc
module-1# debug platform internal roc elam asic 0
module-1(DBG-elam)# trigger reset
module-1(DBG-elam)# trigger init in-select 14 out-selec 0
module-1(DBG-elam-insel14)# reset
module-1(DBG-elam-insel14)# set inner ipv4 src_ip 10.10.100.10 dst_ip 10.20.200.20
module-1(DBG-elam-insel14)# start
module-1(DBG-elam-insel14)# status
ELAM STATUS
===========
Asic 0 Slice 0 Status Armed
Asic 0 Slice 1 Status Armed
Asic 0 Slice 2 Status Triggered
Asic 0 Slice 3 Status Armed
module-1(DBG-elam-insel14)# ereport
======================================================================================================
Trigger/Basic Information
======================================================================================================
Incoming Interface : 0x48( 0x48 ) >>> Eth1/1
( Slice Source ID(Ss) in "show plat int hal l2 port gpd" )
Packet from vPC peer LEAF : yes
Packet from tunnel (remote leaf/avs) : yes
-------------------------------------------------------------------------------------------------------
Outer L2 Header
-------------------------------------------------------------------------------------------------------
Destination MAC : 000D.0D0D.0D0D
Source MAC : 000C.0C0C.0C0C
-------------------------------------------------------------------------------------------------------
Inner L2 Header
-------------------------------------------------------------------------------------------------------
Inner Destination MAC : 0050.56B7.D05D >>> Firewall MAC
Source MAC : AAAA.AAAA.AAAA
-------------------------------------------------------------------------------------------------------
Outer L3 Header
-------------------------------------------------------------------------------------------------------
L3 Type : IPv4
DSCP : 0
Don't Fragment Bit : 0x0
TTL : 32
IP Protocol Number : UDP
Destination IP : 10.2.64.97
Source IP : 10.2.200.64
-------------------------------------------------------------------------------------------------------
Inner L3 Header
-------------------------------------------------------------------------------------------------------
L3 Type : IPv4
DSCP : 0
Don't Fragment Bit : 0x1
TTL : 63
IP Protocol Number : ICMP
Destination IP : 10.20.200.20
Source IP : 10.10.100.10
-------------------------------------------------------------------------------------------------------
Outer L4 Header
-------------------------------------------------------------------------------------------------------
L4 Type : iVxLAN
Don't Learn Bit : 1
Src Policy Applied Bit : 1
Dst Policy Applied Bit : 1
sclass (src pcTag) : 0xc003 >>> pcTag 49155 (Prod-Consumer)
VRF or BD VNID : 15826939( 0xF17FFB ) >>> BD: Prod-Consumer
-------------------------------------------------------------------------------------------------------
Sideband Information
-------------------------------------------------------------------------------------------------------
Opcode : OPCODE_UC
-------------------------------------------------------------------------------------------------------
bky_elam_out_sidebnd_no_spare_vec.ovector_idx: 0x1F0 >>> Eth1/10
-------------------------------------------------------------------------------------------------------
上記の出力から、宛先MACアドレスがファイアウォールのMACアドレスに書き換えられていることがわかります。その後、COOPルックアップが実行されて、MACの宛先パブリッシャが識別され、パケットはスイッチの対応するインターフェイスに転送されます。
ブリッジドメインVNIDとファイアウォールのMACアドレスを使用して次のコマンドを実行すると、このルックアップをスパインでシミュレートできます。
SPINE1001# show coop internal info repo ep key 15826939 0050.56B7.D05D | egrep "Tunnel|EP" | head -n 3
EP bd vnid : 15826939
EP mac : 00:50:56:B7:D0:5D
Tunnel nh : 10.2.200.66
SPINE1001#
3. トラフィックは、ファイアウォールのMACアドレスが認識されたサービスリーフに到達し、PBRノードに転送されます。
MXS2-LF101# vsh_lc
module-1# debug platform internal tah elam asic 0
module-1(DBG-elam)# trigger reset
module-1(DBG-elam)# trigger init in-select 14 out-select 1
module-1(DBG-elam-insel14)# reset
module-1(DBG-elam-insel14)# set inner ipv4 src_ip 10.10.100.10 dst_ip 10.20.200.20
module-1(DBG-elam-insel14)# start
module-1(DBG-elam-insel14)# status
ELAM STATUS
===========
Asic 0 Slice 0 Status Armed
Asic 0 Slice 1 Status Triggered
module-1(DBG-elam-insel14)# ereport
======================================================================================================
Trigger/Basic Information
======================================================================================================
Incoming Interface : 0x0( 0x0 ) >>> Eth1/17
( Slice Source ID(Ss) in "show plat int hal l2 port gpd" )
Packet from vPC peer LEAF : yes
Packet from tunnel (remote leaf/avs) : yes
-------------------------------------------------------------------------------------------------------
Outer L2 Header
-------------------------------------------------------------------------------------------------------
Destination MAC : 000D.0D0D.0D0D
Source MAC : 000C.0C0C.0C0C
-------------------------------------------------------------------------------------------------------
Inner L2 Header
-------------------------------------------------------------------------------------------------------
Inner Destination MAC : 0050.56B7.D05D >>> Firewall MAC
Source MAC : AAAA.AAAA.AAAA
-------------------------------------------------------------------------------------------------------
Outer L3 Header
-------------------------------------------------------------------------------------------------------
L3 Type : IPv4
DSCP : 0
Don't Fragment Bit : 0x0
TTL : 32
IP Protocol Number : UDP
Destination IP : 10.2.200.66
Source IP : 10.2.200.64
-------------------------------------------------------------------------------------------------------
Inner L3 Header
-------------------------------------------------------------------------------------------------------
L3 Type : IPv4
DSCP : 0
Don't Fragment Bit : 0x1
TTL : 63
IP Protocol Number : ICMP
Destination IP : 10.20.200.20
Source IP : 10.10.100.10
-------------------------------------------------------------------------------------------------------
Outer L4 Header
-------------------------------------------------------------------------------------------------------
L4 Type : iVxLAN
Don't Learn Bit : 1
Src Policy Applied Bit : 1
Dst Policy Applied Bit : 1
sclass (src pcTag) : 0xc003 >>> pcTag 49155 (Prod-Consumer)
VRF or BD VNID : 15826939( 0xF17FFB ) >>> BD: Prod-Consumer
-------------------------------------------------------------------------------------------------------
Contract Lookup Key
-------------------------------------------------------------------------------------------------------
IP Protocol : ICMP( 0x1 )
L4 Src Port : 2048( 0x800 )
L4 Dst Port : 50664( 0xC5E8 )
sclass (src pcTag) : 49155( 0xC003 ) >>> Prod-Consumer EPG
dclass (dst pcTag) : 16387( 0x4003 ) >>> Consumer connector EPG
src pcTag is from local table : no
derived from group-id in iVxLAN header of incoming packet
Unknown Unicast / Flood Packet : no
If yes, Contract is not applied here because it is flooded
-------------------------------------------------------------------------------------------------------
Sideband Information
-------------------------------------------------------------------------------------------------------
ovector : 64( 0x40 ) >>> Eth1/45
Ovec in "show plat int hal l2 port gpd"
Opcode : OPCODE_UC
4. PBRノードから返されるパッカーの場合、まず、このノードが自身のディリジェンスを行い、VRF、インターフェイス、またはVLANを変更する必要があります。次に、パケットはプロバイダーコネクタのACIに転送されます。
LEAF103# vsh_lc
module-1# debug platform internal tah elam asic 0
module-1(DBG-elam)# trigger reset
module-1(DBG-elam)# trigger init in-select 6 out-select 1
module-1(DBG-elam-insel6)# reset
module-1(DBG-elam-insel6)# set outer ipv4 src_ip 10.10.100.10 dst_ip 10.20.200.20
module-1(DBG-elam-insel6)# set outer l2 src_mac 0050.56b7.bf94
module-1(DBG-elam-insel6)# start
module-1(DBG-elam-insel6)# stat
ELAM STATUS
===========
Asic 0 Slice 0 Status Triggered
Asic 0 Slice 1 Status Armed
module-1(DBG-elam-insel6)# ereport
======================================================================================================
Trigger/Basic Information
======================================================================================================
•••
Incoming Interface : 0x40( 0x40 ) >>> Eth1/45
•••
-------------------------------------------------------------------------------------------------------
Outer L2 Header
-------------------------------------------------------------------------------------------------------
Destination MAC : 0022.BDF8.19FF
Source MAC : 0050.56B7.BF94
802.1Q tag is valid : yes( 0x1 )
CoS : 0( 0x0 )
Access Encap VLAN : 2006( 0x7D6 )
-------------------------------------------------------------------------------------------------------
Outer L3 Header
-------------------------------------------------------------------------------------------------------
L3 Type : IPv4
IP Version : 4
DSCP : 0
IP Packet Length : 84 ( = IP header(28 bytes) + IP payload )
Don't Fragment Bit : set
TTL : 62
IP Protocol Number : ICMP
IP CheckSum : 46178( 0xB462 )
Destination IP : 10.20.200.20
Source IP : 10.10.100.10
-------------------------------------------------------------------------------------------------------
Contract Lookup Key
-------------------------------------------------------------------------------------------------------
IP Protocol : ICMP( 0x1 )
L4 Src Port : 2048( 0x800 )
L4 Dst Port : 37489( 0x9271 )
sclass (src pcTag) : 49157( 0xC005 ) >>> Provider connector EPG
dclass (dst pcTag) : 49156( 0xC004 ) >>> Prod-Provider EPG
src pcTag is from local table : yes
derived from a local table on this node by the lookup of src IP or MAC
Unknown Unicast / Flood Packet : no
If yes, Contract is not applied here because it is flooded
-------------------------------------------------------------------------------------------------------
Sideband Information
-------------------------------------------------------------------------------------------------------
ovector : 176( 0xB0 ) >>> Eth1/52
Ovec in "show plat int hal l2 port gpd"
Opcode : OPCODE_UC
-------------------------------------------------------------------------------------------------------
sug_luc_latch_results_vec.luc3_0.service_redir: 0x0
-------------------------------------------------------------------------------------------------------
5. 残りのネットワークトラフィックは、これまでに説明した手順(パケットがスパインスイッチに戻り、coopルックアップに基づいて最終的なサーバ宛先が決定される)に従います。その後、パケットはローカル学習フラグを持つコンピューティングリーフスイッチに送信され、スパインのCOOPテーブルにこの情報を伝達します。ステップ2とステップ3のELAMの実行は、最終的な宛先へのパケットの配布に関して一貫しています。正確な配信を保証するには、これらを宛先EPGのpcTagと出力インターフェイスで検証することが不可欠です。
IP SLAは、ネットワークパスの動作ステータスとパフォーマンスを評価するために使用されます。リアルタイムネットワークの状態に基づいて、定義されたポリシーに従ってトラフィックが効率的にルーティングされるようにします。ACIでは、PBRはIP SLAを活用して、情報に基づいたルーティングの決定を行います。IP SLAメトリックにパスのパフォーマンスが低下していることが示されている場合、PBRは必要なパフォーマンス基準を満たす代替パスを介してトラフィックを再ルーティングできます。
バージョン5.2(1)以降では、IP SLAのダイナミックMACトラッキングを有効にできます。これは、PBRノードがフェールオーバーし、同じIPアドレスのMACアドレスを変更するシナリオに役立ちます。スタティックな導入では、トラフィックの送信を続行するためにPBRノードがMACアドレスを変更するたびに、ポリシーベースのリダイレクトポリシーの変更を行う必要があります。IP SLAでは、このポリシーで使用されるMACアドレスがプローブ応答にリレーされます。このドキュメントの執筆時点で、PBRノードが正常であるかどうかを判断するために、ICMP、TCP、L2Ping、HTTPなどの各種プローブを使用できます。
IP SLAポリシーの一般的な設定は次のようになります。
IP SLAポリシーは、ヘルスグループを使用してPBRノードIPにマッピングする必要があります。
MACアドレスを動的に検出するIP SLAが使用される場合、このフィールドは空ではなく、すべて0に設定されます。
L4-L7ポリシーベースのリダイレクトポリシーで、L3宛先を介してHealth GroupがPBRノードIPと関連付けられると、到達不能時のIP SLA動作を定義するためのしきい値を設定します。リダイレクションを維持するために必要なアクティブL3宛先の最小数を指定します。ライブPBRノードの数がしきい値のパーセンテージを下回るか、超える場合、選択されたしきい値ダウンアクションによってグループ全体が影響を受け、再配布が停止されます。このアプローチは、トラフィックフローに影響を与えずに、トラブルシューティング中のPBRノードのバイパスをサポートします。
同一のHealth Groupポリシーが使用される限り、1つのL4-L7ポリシーベースリダイレクトポリシーまたは複数のL4-L7ポリシーベースリダイレクトポリシーのL3宛先で定義されたすべてのIPは、Health Groupによってバインドされます。
Leaf101# show service redir info health-group aperezos::tz-HG
===============================================================================================================================================================
LEGEND
TL: Threshold(Low) | TH: Threshold(High) | HP: HashProfile | HG: HealthGrp | BAC: Backup-Dest | TRA: Tracking | RES: Resiliency | W: Weight
===============================================================================================================================================================
HG-Name HG-OperSt HG-Dest HG-Dest-OperSt
======= ========= ======= ==============
aperezos::tz-HG enabled dest-[192.168.100.10]-[vxlan-2162692]] up
dest-[192.168.200.20]-[vxlan-2162692]] up
Leaf1011#
改定 | 発行日 | コメント |
---|---|---|
1.0 |
17-Sep-2025
|
初版 |