2020-10-20 06:45 PM 2020-10-28 03:46 PM 更新
このドキュメントでは IOS-XE で利用可能な解析用の Feature の Packet Trace について紹介します。
Packet Trace の機能を利用することで QFP での転送処理の流れを追跡することが出来ます。
TAC のエンジニアに依頼された場合や、意図しない Packet Drop が発生した場合などの原因調査に使用してください。
なお、Packet Trace は QFP での転送処理の流れを追跡する機能ですので、ASR-90x など QFP が利用されていない platform では利用できません。show platform hardware qfp xxx 等のコマンド(例:show platform hardware qfp active statistics drop detail)を実行可能な platform であれば使用できます。
Packet Trace の各種設定について説明します。
debug platform packet-trace enable
Packet Trace を有効化します。16.xx.xx などの最近の version ではこの設定は不要です。
debug platform packet-trace packet num-packets [ fia-trace | summary-only ][ data-size data size ][ circular ]
Packet Trace で情報を取得するパケットの数を指定します。
debug platform packet-trace packet num-packets までは必須の設定です。
<Option>
fia-trace : 詳細な情報を取得します。
summary-only : summary のみ取得します。
data-size : 情報を取得する packet の size を指定します。default は 2048 です。
circular : このオプションを付けると最新のパケットの情報を取得します。例えば num-packets で 64 を指定した場合は最後の 64個のパケットについて情報を取得します。default はこのオプションは無効です。
default では Packet Trace を開始してからの初めの num-packets で指定しただけのパケットの情報が取得されます。
debug platform condition interface Interface [ ipv4 A.B.C.D/nn | ipv6 X:X:X:X::X/0-128 ] { ingress | egress | both }
Packet Trace を行う Interface と方向を指定します。必須の設定です。
Optionの ipv4 A.B.C.D/nn, ipv6 X:X:X:X::X/<0-128> を設定すると指定した範囲のアドレスにmatchするパケットの情報のみ取得します。 source か dest の指定は現状できません。
debug platform packet-trace copy packet { input | output | both } [size <copy size>] [ L2 | L3 | L4 ]
Option 設定です。このコマンドを追加すると packet の hex値 も取得してくれます。
size option で copy するパケットの size を指定します。default は 64 です。
L2|L3|L4 でどの header 以降を copy するかを指定します。default は L2 です。
debug platform packet-trace statistics
Option 設定です。このコマンドを追加すると統計情報も確認できるようになります。
debug platform packet-trace drop [ code code-num ]
Option 設定です。このコマンドを追加すると drop するパケットのみの情報を取得します。
code code-num Option を追加することで指定した code-num のみの情報を取得します。
code-num は「show platform packet-trace code drop」で確認可能。以下の Code の部分が code-num です。
Router#show platform packet-trace code drop Code DROP Description ---- ---------------------------------------- 0 Reserved 1 UidbNotCfgd 2 BadUidbIdx 3 BadUidbSubIdx 4 EncapUnknown 5 InvL2Hdr 6 BadLen 7 TcpBadfrag 8 Ipv4Acl 9 Ipv4AclLookupMiss 10 BadIpChecksum 11 IpFormatErr 12 IpBadOptions 13 Ipv4Martian 14 MpassErr 15 Ipv4Pbr 16 InvHdrErr 17 PuntErr 18 InjectErr 19 Ipv4NoRoute 20 QosPolicing --More--
debug platform packet-trace punt [ code code-num ]
Option 設定です。このコマンドを追加すると punt パケットのみの情報を取得します。
code code-num Option を追加することで指定した code-num のみの情報を取得します。
code-num は「show platform packet-trace code punt」で確認可能。以下の Code の部分が code-num です。
Router#show platform packet-trace code punt Code PUNT Description ---- ---------------------------------------- 0 Reserved 1 MPLS ICMP Can't Fragment 2 IPv4 Options 3 Layer2 control and legacy 4 PPP Control 5 CLNS IS-IS Control 6 HDLC keepalives 7 ARP request or response 8 Reverse ARP request or repsonse 9 Frame-relay LMI Control 10 Incomplete adjacency 11 For-us data 12 Mcast Directly Connected Source 13 Mcast IPv4 Options data packet 14 Skip egress processing 15 MPLS TTL expired 16 MPLS Reserved label (ie: 0-15) 17 IPv6 Bad hop limit 18 IPV6 Hop-by-hop Options 19 Mcast Internal Copy 20 Generic QFP generated packet --More--
debug platform packet-trace inject [ code code-num ]
Option 設定です。このコマンドを追加すると inject パケットのみの情報を取得します。
code code-num Option を追加することで指定した code-num のみの情報を取得します。
code-num は「show platform packet-trace code inject」で確認可能。以下の Code の部分が code-num です。
Router#show platform packet-trace code inject Code INJECT Description ---- ---------------------------------------- 0 RESERVED 1 L2 control/legacy 2 QFP destination lookup 3 QFP IPv4/v6 nexthop lookup 4 QFP generated packet 5 QFP <->RP keepalive 6 QFP Fwall generated packet 7 QFP adjacency-id lookup 8 Mcast specific inject packet 9 QFP ICMP generated packet 10 QFP/RP->QFP Subscriber data packet 11 SBC DTMF 12 ARP request or response 13 Ethernet OAM loopback packet 14 UNUSED 15 PPPoE discovery packet 16 PPPoE session packet 17 QFP inject for pp_index lookup 18 QFP inject replicate 19 QFP inject PIT lookup 20 SBC generated packets --More--
debug platform condition start
Packet Trace を開始します。
debug platform condition stop
Packet Trace を停止します。
clear platform packet-trace statistics
Packet Trace で取得した情報を clear します。
clear platform packet-trace configuration(show platform packet-trace configuration で表示される)Packet Trace の設定内容を clear します。
show platform packet-trace configuration
Packet Trace の設定内容を確認します。
show platform packet-trace statistics
Packet Trace の統計情報を表示します。
show platform packet-trace summary
Packet Trace 全体の Summary 情報を表示します。
show platform packet-trace packet { num | all } [ decode ]
show platform packet-trace packet の後に数字を指定するとその Packet Trace の詳細を表示します。
show platform packet-trace packet の後に all を指定すると全ての Packet の Packet Trace の詳細を表示します。
decode Option を追加することで Packet の decode 結果も含めて表示されるようになります。
show platform packet-trace packet all や show platform packet-trace packet all decode は実行後しばらくプロンプトの応答がなくなりますが、特に通信影響等はありませんので気になされなくて大丈夫です。
show debugging
Packet Trace の設定内容を確認します。
Step 1. packet-trace を設定
以下は設定例です。
debug platform packet-trace enable !!! 16.x 以降では不要 !!! debug platform packet-trace packet 8192 fia-trace
debug platform condition interface GigabitEthernet 1 both
debug platform condition interface internal-RP both
debug platform packet-trace copy packet both size 2048
debug platform packet-trace statistics
Step 2. packet-trace を開始
debug platform condition start
Step 3. packet-trace を行いたいパケットを送信
Step 4. packet-trace を停止
debug platform condition stop
Step 5. 各種 show コマンドの取得
show platform packet-trace statistics show platform packet-trace summary show platform packet-trace packet all decode
Step 6. 設定の clear
clear platform packet-trace configuration undebug platform condition interface GigabitEthernet 1 both undebug platform condition interface internal-RP both
IOS-XE Datapath パケット トレース機能
Cisco ASR 1000 Series Aggregation Services Routers Software Configuration Guide / Chapter: Packet Trace
検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう
シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします
下記より関連するコンテンツにアクセスできます