セキュリティ : Cisco IOS ファイアウォール

IOS-XE 設定のための ZBFW はガイドを解決します

2016 年 6 月 18 日 - 機械翻訳について
その他のバージョン: PDFpdf | 英語版 (2016 年 4 月 21 日) | フィードバック

概要

この資料は ASR のハードウェア ドロップ カウンタをポーリングするのに使用するコマンドでどのように推奨を解決します集約 サービス ルータ(ASR)のゾーンによって基づくファイアウォール(ZBFW)機能を 1000、記述したものです。 ASR1000 はハードウェア ベース フォワーディング プラットフォームです。 Cisco IOS XE ® のソフトウェアコンフィギュレーションはハードウェアASICs (クォンタム フロー プロセッサ(QFP)を機能 フォワーディング機能を実行するためプログラムします。 これはより高いスループットおよび方がパフォーマンスを可能にします。 これへの欠点は解決するためにより大きいチャレンジを示すことです。 有効ではないドロップはソフトウェアにゾーン ベースのファイアウォール(ZBFW)によって現在のセッションおよびドロップ カウンタをポーリングするのに使用される従来の Cisco IOSコマンドがもはやもはやではないです。 

Rama Darbha、Namit Agarwal、および Olivier Pelerin によって貢献される、Cisco TAC エンジニア。

リンクおよびドキュメント

コマンド リファレンス

Datapath はステップを解決します

datapath を解決するために、トラフィックが ASR および Cisco IOS XE コードによってきちんと通過するかどうか識別して下さい。 ファイアウォール特性への仕様は、datapath トラブルシューティング次の手順に従います:

  1. 確認して下さい設定-設定を収集し、接続を確認するために出力を検査して下さい。

  2. トラフィックがきちんと渡ったら州接続を、Cisco IOS XE 開始します ZBFW 機能の接続を確認して下さい。 この接続はクライアント および サーバ間のトラフィックおよびステート情報をトラッキングします。

  3. 確認して下さいドロップ カウンタ-トラフィックがきちんと渡らないとき、Cisco IOS XE はあらゆる破棄された パケットのためのドロップ カウンタを記録 します。 トラフィック失敗の原因を特定するためにこの出力をチェックして下さい。

  4. 記録-接続ビルドおよびパケット破棄で粒状情報を提供するために syslog を収集して下さい。

  5. パケットトレース 破棄された パケット-破棄された パケットをつかまえるためにパケットトレースを使用して下さい。

  6. デバッグ-収集するデバッグはほとんどの冗長オプションです。 デバッグはパケットのための正確なフォワーディングパスを確認するために条件付きで得ることができます。

設定の確認

show tech support ファイアウォールの出力はここに要約されます:

-------- show clock --------
-------- show version -------
-------- show running-config --------
-------- show parameter-map type inspect --------
-------- show policy-map type inspect -------
-------- show class-map type inspect --------
-------- show zone security --------
-------- show zone-pair security --------
-------- show policy-firewall stats global --------
-------- show policy-firewall stats zone --------
-------- show platform hardware qfp active feature firewall datapath <submode> --------
-------- show platform software firewall RP <submode> --------

接続状態を確認して下さい

接続 情報は ZBFW のすべての接続がリストされているように得ることができます。 コマンド

ASR#show policy-firewall sessions platform           
--show platform hardware qfp active feature firewall datapath scb any any any any any all any --
[s=session  i=imprecise channel  c=control channel  d=data channel]
 14.38.112.250 41392 14.36.1.206 23 proto 6 (0:0)    [sc]

それは 14.38.112.250 から 14.36.1.206 に TCP Telnet接続を表示します。

: デバイスに多くの接続がある場合このコマンドを実行したら、長い 時間かかることに注意して下さい。 Cisco はここに輪郭を描かれるように特定のフィルターによってこのコマンドを実行することを推奨します。

接続テーブルは特定の送信元または宛先アドレスにフィルタリングすることができます。 プラットフォーム サブモードの後でフィルターを使用して下さい。 フィルタリングするオプションは次のとおりです:

radar-ZBFW1#show policy-firewall sessions platform ?
  all                     detailed information
  destination-port        Destination Port Number
  detail                  detail on or off
  icmp                    Protocol Type ICMP
  imprecise               imprecise information
  session                 session information
  source-port             Source Port
  source-vrf              Source Vrf ID
  standby                 standby information
  tcp                     Protocol Type TCP
  udp                     Protocol Type UDP
  v4-destination-address  IPv4 Desination Address
  v4-source-address       IPv4 Source Address
  v6-destination-address  IPv6 Desination Address
  v6-source-address       IPv6 Source Address
  |                       Output modifiers
  <cr>

この接続テーブルはフィルタリングされた 14.38.112.250 からソースをたどられる接続そうだけ表示するです:

ASR#show policy-firewall sessions platform v4-source-address 14.38.112.250
--show platform hardware qfp active feature firewall datapath scb 14.38.112.250
any any any any all any --
[s=session  i=imprecise channel  c=control channel  d=data channel]
 14.38.112.250 41392 14.36.1.206 23 proto 6 (0:0)    [sc]

接続テーブルがフィルタ処理されたなら、詳しい接続 情報は広範囲の anlaysis のために得ることができます。 この出力を表示するために、Detail キーワードを使用して下さい。

ASR#show policy-firewall sessions platform v4-source-address 14.38.112.250 detail
--show platform hardware qfp active feature firewall datapath scb 14.38.112.250
any any any any all any detail--
[s=session  i=imprecise channel  c=control channel  d=data channel]
 14.38.112.250 41426 14.36.1.206 23 proto 6 (0:0)       [sc]
 pscb : 0x8c5d4f20,  bucket : 64672, fw_flags: 0x204 0x20419441,
        scb state: active, scb debug: 0
 nxt_timeout: 360000, refcnt: 1,  ha nak cnt: 0,  rg: 0, sess id: 117753
 hostdb: 0x0, L7: 0x0, stats: 0x8e118e40, child: 0x0
 l4blk0: 78fae7a7 l4blk1: e36df99c l4blk2: 78fae7ea l4blk3: 39080000
 l4blk4: e36df90e l4blk5: 78fae7ea l4blk6: e36df99c l4blk7: fde0000
 l4blk8: 0 l4blk9: 1
 root scb: 0x0 act_blk: 0x8e1115e0
 ingress/egress intf: GigabitEthernet0/0/2 (1021), GigabitEthernet0/0/0 (131065)
 current time 34004163065573 create tstamp: 33985412599209 last access: 33998256774622
 nat_out_local_addr:port: 0.0.0.0:0 nat_in_global_addr:port: 0.0.0.0:0
 syncookie fixup: 0x0
 halfopen linkage: 0x0 0x0
 cxsc_cft_fid: 0x0
 tw timer: 0x0 0x0 0x372ba 0x1e89c181
 Number of simultaneous packet per session allowed: 25
    bucket 125084 flags 1 func 1 idx 8 wheel 0x8ceb1120

ファイアウォール ドロップ カウンタをチェックして下さい

XE 3.9 の間に変更されるドロップ カウンタ出力。 XE 3.9 の前に、ファイアウォール ドロップする原因は非常に一般的でした。 XE 3.9 の後で、ファイアウォール ドロップする原因は粒状になる拡張されました。

ドロップ カウンタを確認するために、2 つのステップを実行して下さい:

  1. Cisco IOS XE のグローバル な ドロップ カウンタを確認して下さい。 これらのカウンターはどんな機能がトラフィックを廃棄したか示します。 機能の例は Quality of Service (QoS)が、ネットワーク アドレス変換(NAT)、ファイアウォール、等含まれています。

  2. サブ フィーチャが識別されたら、サブ フィーチャによって提供される粒状ドロップ カウンタを問い合わせて下さい。 このガイドでは、分析されるサブ フィーチャはファイアウォール特性です。

QFP のグローバル な ドロップ カウンタ

頼る基本的なコマンドは QFP を渡るすべてのドロップを提供します:

Router#show platform hardware qfp active statistics drop

このコマンドは QFP を渡る一般的 なドロップをグローバルに示したものです。 これらのドロップはあらゆる機能である場合もあります。 機能例は次のとおりです:

Ipv4Acl
Ipv4NoRoute
Ipv6Acl
Ipv6NoRoute
NatIn2out
VfrErr
...etc

すべてのドロップを参照するために、ゼロという値があるカウンターを、使用しますコマンドを含んで下さい:

show platform hardware qfp active statistics drop all

カウンターをクリアするために、このコマンドを使用して下さい。 それは画面にそれを示した後出力をクリアします。 このコマンドは読まれるでクリアです、従って画面に表示する出力はゼロにリセットされます。

show platform hardware qfp active statistics drop clear

QFP グローバル な ファイアウォール ドロップ カウンタおよび説明のリストは下記にあります:

ファイアウォール グローバル な ドロップする原因説明
FirewallBackpressureバックプレッシャによるメカニズムの記録によるパケット破棄。
FirewallInvalidZoneインターフェイスのために設定されるセキュリティ ゾーン無し。
FirewallL4InspL4 ポリシー チェック失敗。 粒状ドロップする原因(ファイアウォール特性 ドロップする原因)で下記の表を参照して下さい。
FirewallNoForwardingZoneファイアウォールは初期設定されていなく、トラフィックは渡ることができません。
FirewallNonsessionセッション作成は失敗します。 それは達しましたまたはメモリアロケーション障害最大セッション 限度が原因である可能性があります。
FirewallPolicy設定されたファイアウォール ポリシーはドロップするです。
FirewallL4L4 インスペクション失敗。 粒状ドロップする原因で下記の表を参照して下さい(ファイアウォール特性 ドロップするは推論しました)。
FirewallL7L7 インスペクションによるパケット破棄。 粒状 L7 ドロップする原因のリストについては次を参照して下さい(ファイアウォール特性 ドロップするは推論しました)。
FirewallNotInitiatorTCP、UDP、または ICMP のためのないセッション 発信側。 セッションは作成されません。 たとえば、なぜなら ICMP 受信される最初のパケットはエコーまたはタイムスタンプではないです。 TCP に関しては、それは SYN ではないです。
これは処理するか、または不正確なチャネル処理する正常なパケットで起こる可能性があります。
FirewallNoNewSessionファイアウォール ハイ アベイラビリティは新しいセッションを可能にしません。
FirewallSyncookieMaxDstホスト SYNフラッド保護を提供するため、SYNによるフラッド攻撃制限としてデスティネーションごとの SYN 比率があります。 デスティネーションエントリの数が制限に達するとき、新しい Syn パケットは廃棄されます。
FirewallSyncookieSYNCOOLIE ロジックは引き起こされます。 これは SYN クッキーとの SYN/ACK が送信 され、オリジナル Syn パケットが廃棄されることを示します。
FirewallARStandby 非対称 ルーティングは有効に ならないし、冗長性グループは ACTIVE 状態にありません。

QFP のファイアウォール特性 ドロップ カウンタ

QFP グローバル な ドロップ カウンタとの制限はトラブルシューティングのための少し使用であることドロップする原因に細かさがない、いくつかの FirewallL4 のようなドロップする原因はポイントにそう過剰にされて得ますことであり。 これは Cisco IOS XE 3.9 (15.3(2)S)でその後ファイアウォール特性 ドロップ カウンタが追加されたところで、高められていました。 これは大いに粒状一組のドロップする原因を与えます:

ASR#show platform hardware qfp active feature firewall drop all
-------------------------------------------------------------------------------
Drop Reason Packets
-------------------------------------------------------------------------------
Invalid L4 header 0
Invalid ACK flag 0
Invalid ACK number 0
....

ファイアウォール特性 ドロップする原因および説明のリストは下記にあります:

ファイアウォール特性 ドロップする原因説明
無効 な ヘッダ 長データグラムは層 4TCP,UDP が含まれていることができなかったまたは ICMPヘッダーですほど小さい。 それは下記によって引き起こすことができます:
  1. TCP ヘッダ 長 < 20
  2. UDP/ICMP ヘッダ 長 < 8
無効 な UDP データ 長 UDP データグラム 長さは UDP ヘッダで規定 される 長さを一致する。
無効 ACK 数 このドロップするはこれらの原因の 1 つによって引き起こすことができます:
  1. ACK TCP ピアの next_seq# へのない等号。
  2. ACK は TCP ピアによって送信 される最新 SEQ# より大きいです。
TCP SYNSENT および SYNRCVD 状態では、ACK# が ISN+1 と等しいが、そうではないことを期待されます。

無効 ACK フラグ

 

このドロップするはこれらの原因の 1 つによって引き起こすことができます:

  1. ACK を期待して別の TCP 状態で設定 されなくてフラグを付けて下さい。
  2. ACK フラグ以外、他はフラグまた(RST のように)設定 されます。

無効 な TCP 発信側

 

これは次の場合には起こります:

  1. TCP 発信側からの最初のパケットは SYN ではないです(非初期 TCP セグメントは有効なセッションなしで受け取られます)。
  2. 最初の Syn パケットは ACK フラグが設定を備えています。
 
データの SYN Syn パケットはペイロードが含まれています。 そのような使用方法はサポートされていません。
無効 な TCP フラグ

無効 な TCP フラグは下記によって引き起こされる場合があります:

  1. TCP 頭文字 Syn パケットは SYN 以外フラグを備えています。
  2. TCP LISTEN 状態では、TCP ピアは RST か ACK を受け取ります。
  3. 他のレスポンダーのパケットは SYN/ACK の前に受信されます。
  4. 期待された SYN/ACK は応答側から届きません。

SYNSENT 状態の無効 な セグメント

 

SYNSENT 状態の無効 TCP セグメントは下記によって引き起こされます:

  1. SYN/ACK にペイロードがあります。
  2. SYN/ACK に設定 される他のフラグ(PSH、URG、FIN)があります。
  3. ペイロードとの中継 SYN を受け取って下さい。
  4. 発信側から非 SYN パケットを受信して下さい。

SYNRCVD 状態の無効 な セグメント

SYNRCVD 状態の無効 TCP セグメントは下記によって引き起こすことができます:

  1. 発信側からペイロードが付いている retransit SYN を受け取って下さい。
  2. 無効 な セグメントを受け取って下さい応答側からの SYN/ACK、RST、または FIN ではない。

SEQ 無効

これは SYNRCVD 状態にセグメントが発信側から来るとき発生します。 それは下記によって引き起こされます:

  1. Seq# は ISN より小さいです。
  2. レシーバ rcvd ウィンドウ サイズが 0 およびなら:
    セグメントにペイロードが、またはあります 
    順番が異なる な セグメント(seq# はレシーバ LASTACK より大きいです。
  3. レシーバ rcvd ウィンドウ サイズが 0 およびなら seq# はウィンドウを越えて落ちます。
  4. ISN しかしない Syn パケットへの Seq# 等号。

無効 な ウィンドウスケール オプション

 無効 な TCP ウィンドウ スケール オプションは不正確なウィンドウスケール オプション バイト 長さによって引き起こされます。
ウィンドウからの TCP パケットは余りに古いです-反対側の ACK の後ろの 1 つのウィンドウ。 これは確立された、CLOSEWAIT および LASTACK 状態で起こる可能性があります。

送信 される FIN の後の TCP 余分ペイロード

送信 される FIN の後で受け取ったペイロード。 これは CLOSEWAIT 状態で起こる可能性があります。

TCP ウィンドウ オーバーフロー

これは着信 セグメント サイズがレシーバのウィンドウをオーバーフロー すると発生します。 ただし、vTCP が有効に なれば、この条件は以降を消費するためにファイアウォールが ALG のためのセグメントをバッファリングする必要があるので許可されます。

無効 なフラグとの Retran

 

再送信されたパケットはレシーバによって既に確認されました。

TCP 故障中のセグメント異常パケットはインスペクション用の L7 に渡されることを約あります。 L7 が OOO セグメントを可能にしない場合、このパケットは廃棄されます。 
 SYN フラッドTCP SYN 大量送信攻撃の下。 このホストへの現在の接続が設定されたハーフ オープン値を超過する場合特定の条件下でファイアウォールはこの IP アドレスに新しい接続をしばらく拒否します。 その結果パケットは廃棄されます。

内部誤って下さい- synflood チェック アロケーションは失敗しました

synflood チェックの間に、hostdb のアロケーションは失敗します。 

推奨 処置: チェックは「プラットフォーム ハードウェア qfp にメモリ ステータスをチェックするためにアクティブな機能 ファイアウォール メモリ」を示します。

Synflood ブラックアウト ドロップする

もし設定するならハーフオープン接続は超過し、ブラックアウト時間は、この IP アドレスへのすべての新しい接続廃棄されます設定されます。

ハーフ オープン セッション 限度は超過します

パケットは超過した許可されたハーフ オープン セッションが原因で廃棄しました。

また」ハイ・ロー「max-incomplete の設定をチェックすれば「ハイ・ロー」は一分これらのコンフィギュレーションによってハーフ オープン セッションの#確かめるために絞られていません。

フローごとの余りにも多くの Pkt

フローごとに許可される inspectable パケットの最大数は超過します。 最大数は 25 です。

フローごとの過剰な ICMP エラーパケット

フローごとに許可される ICMP エラーパケットの最大数は超過します。 最大数は 3.です。

Rsp からの Init への Unexpect TCP ペイロード

SYNRCVD 状態では、TCP は応答側から発信側方向にペイロードとのパケットを受信します。

 
Internal エラー-未定義方向

未定義になるパケット方向。

現在のウィンドウの中の SYNSyn パケットは既に確立された TCP 接続のウィンドウの内で見られます。
現在のウィンドウの中の RSTRST パケットは既に確立された TCP 接続のウィンドウの内で監視されます。

外部セグメント

応答側から LISTEN 状態で届く TCP 同期信号 パケットのような TCP 状態 マシンを通して受け取るべきではない TCP セグメントは受け取られます。

ICMP Internal エラー-抜けていた ICMP NAT 情報

ICMPパケットは nat'ed が、内部 NAT ヒントは抜けています。 これは Internal エラーです。

 

SCB 終わり状態の ICMPパケット

SCB 終わり状態の ICMPパケットを受信しました。

ICMPパケットの抜けていた IP ヘッダー

 

ICMPパケットの抜けた IP ヘッダー。

 

ICMP エラー IP か ICMP 無し

ペイロードの IP または ICMP のない ICMP エラーパケット。 不正 な パケットか攻撃によりによっておそらく引き起こされて。 

ICMP は短い Pkt 余りに誤ります

ICMP エラーパケットは余りに短いです。
ICMP は超過しますバースト制限を誤りますICMP エラー pkt は 10.のバースト制限を超過します。

ICMP は到達不能誤ります

到達不能 ICMP エラー pkt は制限を超過します。 第 1 到達不能 パケットだけパススルーに許可されます。

ICMP は無効 な Seq# 誤ります

組み込みパケットの Seq# は ICMP エラーを起こすパケットの seq# を一致する。

ICMP は無効 な Ack 誤ります

ICMP エラーの無効 ACK はパケットを組み込みました。

ICMP 操作ドロップする

設定された ICMP 操作はドロップするです。

policy-map のないゾーン ペア

ゾーン ペアのポリシー。 適用業務 データ チャネルのためのピンホールを開くことを設定しない ALG (アプリケーション層ゲートウェイ)が原因である可能性がありますまたは ALG はピンホールを正しく開きませんでした、またはピンホールはスケーラビリティの問題が開かれた原因ではないです。

抜けている現在のセッションおよびポリシー

セッション ルックアップは失敗し、このパケットを検査するためにポリシーは現在ではないです。

現在の ICMP エラーおよびポリシー

ゾーン ペアで設定されるポリシー無しの ICMP エラー。

分類は失敗しました

ファイアウォールがプロトコルは inspectable だったかどうか確認することを試みる場合のある特定のゾーン ペアの分類失敗。

分類 処理 ドロップする

分類操作はドロップするです。

セキュリティポリシー Misconfig

セキュリティポリシー ミスコンフィギュレーションによる壊れる分類。 これはまた L7 Dチャネルのための pinpole が原因である可能性がありません。

応答側への送信 RST

ACK# が ISN+1 と等しくないとき SYNSENT 状態の応答側に RST を送信 して下さい。

ファイアウォール ポリシー ドロップする

 ポリシー アクションは廃棄することです。
フラグメント ドロップする 最初のフラグメントが廃棄されるとき残りのフラグメントを廃棄して下さい。
ICMP Firwall ポリシー ドロップするICMP によって組み込まれるパケットのポリシー アクションはドロップするです。

L7 インスペクション戻りドロップする

L7 (ALG)はパケットを廃棄することにします。 原因は異なる ALG 統計情報から見つけることができます。
L7 セグメント Pkt ない割り当てALG がそれに名誉を与えない場合の受信されたセグメント化されたパケット。
L7 フラグメント Pkt ない割り当てALG がそれに名誉を与えない場合の受信されたフラグメント化された(または VFR)パケット。

未知 L7 原始型

認識されない プロトコル タイプ。

ファイアウォール ドロップのトラブルシューティングを実行して下さい

ドロップする原因が上記のグローバル なまたはファイアウォール特性 ドロップ カウンタから特定されれば、さらに詳細な トラブルシューティング ステップはこれらのドロップが予想外である場合必要であるかもしれません。 設定 検証から離れて設定を確認することは有効に なる ファイアウォール機能性のために正しいですたいていの場合必要としますパケットが不正であるかどうかまたは見るために疑わしいトラフィックフローのためのパケットキャプチャを奪取 することをプロトコルまたはアプリケーション インプリメンテーション問題があれば。

ロギング

ASR ロギング機能性は破棄された パケットを記録するために syslog を生成します。 これらの syslog はパケットがなぜで廃棄されたかより多くの詳細を提供します。 sysloggings には 2 つの型があります:

  1. ローカルによってバッファリングされる syslogging

  2. リモート高速ロギング

ローカルは Syslogging をバッファリングしました

ドロップの原因を特定するために、ログ ドロップを有効に することのような一般的 な ZBFW トラブルシューティングを、使用できます。 パケット破棄ロギングを設定する 2 つの方法があります。

方法 1: 破棄された パケットを記録 するために Inspect グローバル なパラメータ MAP を使用して下さい。

parameter-map type inspect-global     log dropped-packets

方法 2: 特定のクラスだけのための破棄された パケットを記録 するためにカスタム Inspect パラメータ MAP を使用して下さい。

parameter-map type inspect LOG_PARAM
log dropped-packets
!
policy-map type inspect ZBFW_PMAP
class type inspect ZBFW_CMAP
inspect LOG_PARAM

これらのメッセージはログに ASR が記録のためにどのようにによって設定されるか送られるか、またはコンソール接続を行います。 ドロップする ログメッセージの例はここにあります。

*Apr  8 13:20:39.075: %IOSXE-6-PLATFORM: F0: cpp_cp: QFP:0.0 Thread:103
TS:00000605668054540031 %FW-6-DROP_PKT: Dropping tcp pkt from GigabitEthernet0/0/2
14.38.112.250:41433 => 14.36.1.206:23(target:class)-(INSIDE_OUTSIDE_ZP:class-default)
due to Policy drop:classify result with ip ident 11579 tcp flag 0x2, seq 2014580963,
ack 0

ローカルの制限は Syslogging をバッファリングしました

  1. これらのログは Cisco バグ ID CSCud09943 によって制限される比率です。

  2. これらのログは特定の設定が適用しなければ印刷しないかもしれません。 たとえば、class-default パケットによって廃棄されたパケットは log キーワードが規定 されなければ 記録 されません:
policy-map type inspect ZBFW_PMAP
class class-default
drop log

リモート高速ロギング

高速ロギング(HSL)は QFP からの syslog を直接生成し、設定された netflow HSL 収集装置にそれを送信 します。 これは ASR の ZBFW のための推奨されるロギング ソリューションです。

HSL に関しては、この設定を使用して下さい:

parameter-map type inspect inspect-global
   log template timeout-rate 1
   log flow-export v9 udp destination 1.1.1.1 5555

この設定を使用するために、Netflow バージョン 9 が可能な NetFlow コレクタが必要となります。 これは詳述されます 

コンフィギュレーション ガイド: ゾーン ベースのポリシー ファイアウォール、Cisco IOS XE リリース 3S (1000) ASR ファイアウォール高速ロギング

条件付き一致を使用するパケットトレース

パケットトレースを有効に し、次にこれらの機能のためのパケットトレースを有効に するために条件付きデバッグをつけて下さい:

ip access-list extended CONDITIONAL_ACL
  permit ip host 10.1.1.1 host 192.168.1.1
  permit ip host 192.168.1.1 host 10.1.1.1
!
debug platform condition feature fw dataplane submode all level info
debug platform condition ipv4 access-list CONDITIONAL_ACL both

一致状態は ACL が必要ではないので IP アドレスを直接使用できます。 双方向トレースを可能にするこれはソースか宛先として一致する。 この方式は設定を変えればことができない場合使用することができます。 次に、例を示します。 デバッグ プラットフォーム状態 ipv4 アドレス 192.168.1.1/32。

パケットトレース 機能をつけて下さい:

debug platform packet-trace copy packet both
debug platform packet-trace packet 16
debug platform packet-trace drop
debug platform packet-trace enable

この機能を使用する 2 つの方法があります:

  1. 破棄された パケットだけトレースするためにデバッグ プラットフォーム パケットトレース drop コマンドを入力して下さい。

  2. デバイスを点検されたり/渡される物を含む、条件と一致するコマンド デバッグ プラットフォーム パケットトレース ドロップするの除外はパケットをトレースします。

条件付きデバッグをつけて下さい:

debug platform condition start

テストを実行し、そしてデバッグを消して下さい:

debug platform condition stop

この場合情報は画面に表示することができます。 この例では、ICMPパケットはファイアウォール ポリシーが廃棄された原因でした:

Router#show platform packet-trace statistics
Packets Summary
  Matched  2
  Traced   2
Packets Received
  Ingress  2
  Inject   0
Packets Processed
  Forward  0
  Punt     0
  Drop     2
    Count       Code  Cause
    2           183   FirewallPolicy
  Consume  0

Router#show platform packet-trace summary
Pkt   Input            Output           State  Reason
0     Gi0/0/2          Gi0/0/0          DROP   183 (FirewallPolicy)
1     Gi0/0/2          Gi0/0/0          DROP   183 (FirewallPolicy)

Router#show platform packet-trace packet 0
Packet: 0           CBUG ID: 2980
Summary
  Input     : GigabitEthernet0/0/2
  Output    : GigabitEthernet0/0/0
  State     : DROP 183 (FirewallPolicy)
  Timestamp
    Start   : 1207843476722162 ns (04/15/2014 12:37:01.103864 UTC)
    Stop    : 1207843477247782 ns (04/15/2014 12:37:01.104390 UTC)
Path Trace
  Feature: IPV4
    Source      : 10.1.1.1
    Destination : 192.168.1.1
    Protocol    : 1 (ICMP)
  Feature: ZBFW
    Action  : Drop
    Reason  : ICMP policy drop:classify result
    Zone-pair name  : INSIDE_OUTSIDE_ZP
    Class-map name  : class-default
Packet Copy In
  c89c1d51 5702000c 29f9d528 08004500 00540000 40004001 ac640e26 70fa0e24
  01010800 172a2741 00016459 4d5310e4 0c000809 0a0b0c0d 0e0f1011 12131415
Packet Copy Out
  c89c1d51 5702000c 29f9d528 08004500 00540000 40003f01 ad640e26 70fa0e24
  01010800 172a2741 00016459 4d5310e4 0c000809 0a0b0c0d 0e0f1011 12131415

提示プラットフォーム パケットトレース パケット <num> デコード コマンドはパケットヘッダー 情報およびコンテンツをデコードします。 この機能は XE3.11 で導入されました:

Router#show platform packet-trace packet all decode
Packet: 0           CBUG ID: 2980
Summary
  Input     : GigabitEthernet0/0/2
  Output    : GigabitEthernet0/0/0
  State     : DROP 183 (FirewallPolicy)
  Timestamp
    Start   : 1207843476722162 ns (04/15/2014 12:37:01.103864 UTC)
    Stop    : 1207843477247782 ns (04/15/2014 12:37:01.104390 UTC)
Path Trace
  Feature: IPV4
    Source      : 10.1.1.1
    Destination : 192.168.1.1
    Protocol    : 1 (ICMP)
  Feature: ZBFW
    Action  : Drop
    Reason  : ICMP policy drop:classify result
    Zone-pair name  : INSIDE_OUTSIDE_ZP
    Class-map name  : class-default
Packet Copy In
  c89c1d51 5702000c 29f9d528 08004500 00540000 40004001 ac640e26 70fa0e24
  01010800 172a2741 00016459 4d5310e4 0c000809 0a0b0c0d 0e0f1011 12131415
  ARPA
    Destination MAC     : c89c.1d51.5702
    Source MAC          : 000c.29f9.d528
    Type                : 0x0800 (IPV4)
  IPv4
    Version             : 4
    Header Length       : 5
    ToS                 : 0x00
    Total Length        : 84
    Identifier          : 0x0000
    IP Flags            : 0x2 (Don't fragment)
    Frag Offset         : 0
    TTL                 : 64
    Protocol            : 1 (ICMP)
    Header Checksum     : 0xac64
    Source Address      : 10.1.1.1
    Destination Address : 192.168.1.1
  ICMP
    Type                : 8 (Echo)
    Code                : 0 (No Code)
    Checksum            : 0x172a
    Identifier          : 0x2741
    Sequence            : 0x0001
Packet Copy Out
  c89c1d51 5702000c 29f9d528 08004500 00540000 40003f01 ad640e26 70fa0e24
  01010800 172a2741 00016459 4d5310e4 0c000809 0a0b0c0d 0e0f1011 12131415
  ARPA
    Destination MAC     : c89c.1d51.5702
    Source MAC          : 000c.29f9.d528
    Type                : 0x0800 (IPV4)
  IPv4
    Version             : 4
    Header Length       : 5
    ToS                 : 0x00
    Total Length        : 84
    Identifier          : 0x0000
    IP Flags            : 0x2 (Don't fragment)
    Frag Offset         : 0
    TTL                 : 63
    Protocol            : 1 (ICMP)
    Header Checksum     : 0xad64
    Source Address      : 10.1.1.1
    Destination Address : 192.168.1.1
  ICMP
    Type                : 8 (Echo)
    Code                : 0 (No Code)
    Checksum            : 0x172a
    Identifier          : 0x2741
    Sequence            : 0x0001

Embedded Packet Capture

組み込みパケットキャプチャ サポートは Cisco IOS XE 3.7 (15.2(4)S)に追加されました。 詳細については、参照して下さい 

Cisco IOS および IOS-XE 設定例のための組み込みパケットキャプチャ

デバッグ

条件付きデバッグ

XE3.10 では、条件付きデバッグは導入されます。 条件付きステートメントは ZBFW 機能状態に関連しているログ デバッグ メッセージだけ確認するために使用することができます。 条件付きデバッグ使用 ACL ACL 要素を一致するログを制限するため。 また、XE3.10 前に、デバッグ メッセージはより読みにくかったです。 デバッグ 出力は XE3.10 でそれらを理解することもっと簡単にするために改良されました。

これらのデバッグを有効に するために、このコマンドを発行して下さい:

debug platform condition feature fw dataplane submode [detail | policy | layer4 | drop]
debug platform condition ipv4 access-list <ACL_name> both
debug platform condition start

condition コマンドが ACL および directionality によって設定 する必要があることに注意して下さい。 条件付きデバッグはコマンド デバッグ プラットフォーム状態開始するとまで設定されていません開始します。 消えるために条件付きデバッグはコマンド デバッグ プラットフォーム状態停止を使用します。

debug platform condition stop

条件付きデバッグを消すために、コマンド undebug all を使用しないで下さい。 すべての条件付きデバッグを消すために、コマンドを使用して下さい:

ASR#clear platform condition all

XE3.14 前に、ha およびイベント デバッグは条件付きではないです。 その結果、コマンド デバッグ プラットフォーム状態機能 fw dataplane サブモードすべての原因作成されるべきすべてのログ下記に選択される状態の依存しない。 デバッグを困難にするこれは追加ノイズを作成する可能性があります。

デフォルトで、条件付き ログ レベルはヒントです。 増加するために/ロギングのレベルを、使用しますコマンドを減少させて下さい:

debug platform condition feature fw dataplane submode all [verbose | warning]

デバッグを収集し、表示して下さい

デバッグ ファイルはコンソールに印刷しませんし、監察しません。 すべてのデバッグは ASR のハードディスクに書かれています。 デバッグは名前 cpp_cp_F0-0.log.<date> のフォルダ tracelogs の下のハードディスクに書かれています。 デバッグが書かれているファイルを表示するために、出力を使用します:

ASR# cd harddisk:
ASR# cd tracelogs
ASR# dir cpp_cp_F0*Directory of harddisk:/tracelogs/cpp_cp_F0*

Directory of harddisk:/tracelogs/

3751962 -rwx 1048795 Jun 15 2010 06:31:51 +00:00
cpp_cp_F0-0.log.5375.20100615063151
3751967 -rwx 1048887 Jun 15 2010 02:18:07 +00:00
cpp_cp_F0-0.log.5375.20100615021807
39313059840 bytes total (30680653824 bytes free)

各デバッグ ファイルは cpp_cp_F0-0.log.<date> ファイルとして保存されます。 これらは TFTP が付いている ASR を離れてコピーすることができる規則的なテキストファイルです。 ASR のログファイル 最大は 1Mb です。 1Mb の後で、デバッグは新しいログファイルに書かれています。 そういうわけで各ログファイルはタイムスタンプ付きファイルの開始するを示すためです。

ログファイルはこれらの場所にあるかもしれません:

harddisk:/tracelogs/
bootflash:/tracelogs/

回った後だけログファイルが表示するので、ログファイルはこのコマンドで手動で回すことができます:

ASR# test platform software trace slot f0 cpp-control-process rotate

これはすぐに「cpp_cp」ログファイルを作成し、QFP の新しいものを開始します。 次に、例を示します。

ASR#test platform software trace slot f0 cpp-control-process rotate
  Rotated file from: /tmp/fp/trace/stage/cpp_cp_F0-0.log.7311.20140408134406,
Bytes: 82407, Messages: 431

ASR#more tracelogs/cpp_cp_F0-0.log.7311.20140408134406
04/02 10:22:54.462 : btrace continued for process ID 7311 with 159 modules
04/07 16:52:41.164 [cpp-dp-fw]: (info): QFP:0.0 Thread:110 TS:00000531990811543397
:FW_DEBUG_FLG_HA:[]: HA[1]: Changing HA state to 9
04/07 16:55:23.503 [cpp-dp-fw]: (info): QFP:0.0 Thread:120 TS:00000532153153672298
:FW_DEBUG_FLG_HA:[]: HA[1]: Changing HA state to 10
04/07 16:55:23.617 [buginf]: (debug): [system] Svr HA bulk sync CPP(0) complex(0)
epoch(0) trans_id(26214421) rg_num(1)

このコマンドはデバッグ ファイルがより容易な処理のための単一 ファイルにマージされるようにします。 それはディレクトリですべてのファイルをマージし、時間通りに基づいていました織り交ぜます。 これはログが非常に冗長な、複数のファイルを渡って作成されるとき助けることができます:

ASR#request platform software trace slot rp active merge target bootflash:MERGED_OUTPUT.log
Creating the merged trace file: [bootflash:MERGED_OUTPUT.log]
 including all messages

Done with creation of the merged trace file: [bootflash:MERGED_OUTPUT.log]

関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


Document ID: 117721