Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

データ・パスのデバッグおよびトレース・オプションの構成

SRXシリーズデバイスのデータパスデバッグについて

データ・パス・デバッグ (エンドツーエンド・デバッグ) サポートは、パケット・プロセス・パスに沿った複数の処理装置でトレースとデバッグを提供します。パケットフィルタは、本番システムへの影響を最小限に抑えて実行できます。

パケット キャプチャの収集を目的としている場合は、Junos OS リリース 19.3R1 で導入された動作モード パケット キャプチャを活用することを強くお勧めします。運用モードからのパケットキャプチャを参照してください。

SRXシリーズファイアウォールでは、パケットは、ingressからegress処理までのさまざまなコンポーネントが関係する一連のイベントを通過します。

データ・パス・デバッグ機能を使用すると、処理パスに沿ったさまざまなデータ・ポイントでトレースおよびデバッグ(パケットのキャプチャー)を行うことができます。パケット処理パスで使用可能なイベントは次のとおりです。NP ingress、LBT(負荷分散スレッド)、jexec、POT(パケット順序付けスレッド)、NP egress。特定のモジュールのセキュリティ フロー トレース フラグが設定されている場合は、フロー モジュール トレースを有効にすることもできます。

各イベントでは、4 つのアクション (カウント、パケット ダンプ、パケット サマリー、トレース) のいずれかを指定できます。データ・パス・デバッグには、キャプチャーするパケットを定義するフィルターが用意されており、一致したパケットのみがトレースされます。パケット フィルターは、論理インターフェイス、プロトコル、送信元 IP アドレス プレフィックス、送信元ポート、宛先 IP アドレス プレフィックス、宛先ポートに基づいてパケットを除外できます。

データ・パスのデバッグは、SRX4600、SRX5400、SRX5600、および SRX5800 で サポートされています。

エンド ツー エンドのデバッグを有効にするには、次の手順を実行する必要があります。

  1. キャプチャ・ファイルを定義し、最大キャプチャ・サイズを指定します。

  2. 要件に基づいて、特定のタイプのトラフィックのみをトレースするようにパケット・フィルタを定義します。

  3. パケット(LBTやNPイングレスなど)をキャプチャする処理パス上の場所を指定するアクションプロファイルを定義します。

  4. データ・パスのデバッグを有効にします。

  5. トラフィックをキャプチャします。

  6. データ・パスのデバッグを無効にします。

  7. レポートを表示または分析します。

ポートおよびインターフェイスオプションのパケットフィルタリング動作は次のとおりです。

  • パケット・フィルターは、 のみ が指定されている場合、IPv4 と IPv6 の両方のトラフィックをトレースします。port

  • パケット フィルターは、IPv4、IPV6、および のみが指定されている場合 、非 IP トラフィックをトレースします。interface

運用モードからのパケットキャプチャ

データ・パス・デバッグまたはエンドツーエンド・デバッグは、パケット・プロセス・パスに沿って複数の処理装置でトレースとデバッグを提供します。パケット キャプチャは、データ パス デバッグ機能の 1 つです。設定をコミットすることなく、本番システムへの影響を最小限に抑えながら、運用モードからパケットキャプチャを実行できます。

フィルターを使用してパケットをキャプチャし、キャプチャするパケットを定義できます。パケット フィルターは、論理インターフェイス、プロトコル、送信元 IP アドレス プレフィックス、送信元ポート、宛先 IP アドレス プレフィックス、宛先ポートに基づいてパケットを除外できます。パケット キャプチャ出力のファイル名、ファイル タイプ、ファイル サイズ、キャプチャ サイズを変更できます。フィルターを 2 つのフィルターに拡張し、フィルターの値を入れ替えることもできます。

運用モードからのパケット キャプチャは、SRX4600、SRX5400、SRX5600、および SRX5800 でサポートされています。

動作モードからパケットをキャプチャするには、次の手順を実行する必要があります。

  1. 動作モードからパケットフィルタを定義し、CLI コマンドを使用して要件に基づいて トラフィックのタイプをトレースします。request packet-capture start 使用可能なパケット キャプチャ フィルター オプションについては、を参照してください 。request packet-capture start
  2. 必要なパケットをキャプチャします。
  3. CLI コマンドを使用してパケット キャプチャを停止するか、要求された数のパケットを収集した後、パケット キャプチャを自動的に停止することができます 。request packet-capture stop
  4. キャプチャされたパケットデータレポートを表示または分析します。

動作モードからパケットをキャプチャする場合の制限は、以下のとおりです。

  1. 設定モードのパケット キャプチャと運用モードのパケット キャプチャは共存できません。

  2. 動作モードのパケット キャプチャは 1 回限りの操作であり、システムはこのコマンドの履歴を保存しません。

  3. 動作モードのパケットキャプチャは、トラフィックフローのレートが低い場合に使用してください。

トレース オプションを使用したセキュリティ デバッグについて

Junos OS トレース機能を使用すると、アプリケーションはセキュリティ デバッグ情報をファイルに書き込むことができます。このファイルに表示される情報は、設定した条件に基づいています。この情報を使用して、セキュリティ製品の問題を分析できます。

trace 関数は分散方式で動作し、各スレッドは独自のトレース バッファーに書き込みます。これらのトレース・バッファーは、ある時点で収集され、ソートされて、トレース・ファイルに書き込まれます。トレース メッセージは、プロセス間通信 (IPC) プロトコルを使用して配信されます。トレース メッセージは、BGP、OSPF、IKE などの制御プロトコル パケットの優先度よりも優先度が低いため、配信の信頼性は低いと見なされます。

トレースオプションを使用したフローデバッグの理解

フロー トレース オプションでは、 、 、 の組み合わせを使用してパケット フィルターを定義できます。destination-portdestination-prefixinterfaceprotocolsource-portsource-prefix 特定のモジュールにセキュリティ フロー トレース フラグが設定されている場合、特定のパケット フィルタに一致するパケットがフロー トレースをトリガーし、デバッグ情報をトレース ファイルに書き込みます。

データパスのデバッグ(CLI手順)

データ・パスのデバッグは、SRX5400、SRX5600、および SRX5800 で サポートされています。

データをデバッグ用にデバイスを構成するには:

  1. 以下の要求コマンドを指定して、パケット処理パスに沿った複数の処理装置のデータ・パス・デバッグを設定します。
  2. 以下のコマンドを使用して、データ・パス・デバッグのトレース・オプションを指定します。
  3. request security パケット・フィルター・コマンドを使用すると、データ・パス・デバッグ・アクションを実行する関連パケットを指定するようにパケット・フィルターを設定できます。最大 4 つのフィルターを同時にサポートできます。たとえば、次のコマンドは最初のパケット フィルターを設定します。
  4. request security action-profile コマンドを使用すると、指定したフィルターのパケット一致に対するアクションを設定できます。ネットワーク・プロセッサー ezchip ingress、ezchip egress、spu.lbt、および spu.pot のトレース・オプションであるデフォルトのアクション・プロファイルのみがサポートされています。

フローデバッグトレースオプションの設定(CLI手順)

次の例は、を使用して設定 できるオプションを示しています。security flow traceoptions

  • filter1 パケット・フィルタの imap 宛先ポートに一致させるには、以下のステートメントを使用します。

  • filter1 パケット・フィルタに宛先 IPv4 プレフィックス・アドレス 1.2.3.4 を設定するには、以下のステートメントを使用します。

  • filter1 パケット フィルタに fxp0 論理インターフェイスを設定するには、次のステートメントを使用します。

  • filter1 パケット・フィルタの TCP IP プロトコルに一致させるには、以下のステートメントを使用します。

  • filter1 パケット・フィルターの HTTP ソース・ポートと一致させるには、以下のステートメントを使用します。

  • filter1 パケット・フィルタに 5.6.7.8 IPv4 プレフィックス・アドレスを設定するには、以下のステートメントを使用します。

セキュリティー・トレース・オプションの設定(CLI 手順)

CLI 設定エディターでセキュリティー・トレース・オプションを構成するには、以下の構成ステートメントを使用します。

  • リモート・トレーシングを無効にするには、次のステートメントを入力します。

  • トレースメッセージをローカルファイルに書き込むには、次のステートメントを入力します。トレースファイルが ディレクトリに保存されます。 /var/log/

  • トレース・ファイルの名前を指定するには、次のステートメントを入力します。有効な値の範囲は1から1024文字です。名前にスペース、/、または % 文字を含めることはできません。デフォルトのファイル名はセキュリティです。

  • 蓄積できるトレース ファイルの最大数を指定するには、次のステートメントを入力します。有効な値の範囲は2から1000です。デフォルト値は 3 です。

  • 情報をファイルに記録するときにシステムが使用する一致条件を指定するには、次のステートメントを入力します。正規表現を入力します。ワイルドカード (*) 文字を使用できます。

  • すべてのユーザーがトレース ファイルを読み取れるようにするには、 ステートメントを入力します 。 world-readable それ以外の場合は、 ステートメントを入力します 。no-world-readable

  • トレース・ファイルが拡張できる最大サイズを指定するには、次のステートメントを入力します。ファイルが指定されたサイズに達すると、圧縮されて名前が 0.gz に変更 され、次のファイルの名前 は 1.gz というようになります。filenamefilename 有効な値の範囲は 10240 から 1,073,741,824 です。

  • トレース・オプションをオンにし、複数のトレース操作を実行するには、次のフラグを設定します。

  • これらのトレース・オプション設定を適用するグループまたは適用しないグループを指定するには、以下のステートメントを入力します。

ログ ファイルとトレース ファイルの表示

コマンドを入力して 、システムログとトレースファイルへのリアルタイムの追加を表示します。monitor start

デバイスが で指定されたファイルに レコードを追加すると、そのレコードが画面に表示されます。filename 例えば、[] 階層に ステートメントを含めることで、 という名前のシステムログファイルを設定した場合、 コマンドを入力して、システムログに追加されたレコードを表示することができます。system-logsyslogedit systemmonitor start system-log

モニター中のファイルのリストを表示するには、 コマンドを入力します 。monitor list 指定したファイルのレコードの表示を停止するには、 コマンドを入力します 。monitor stop filename

セキュリティ トレース オプションの出力の表示

目的

セキュリティー・トレース・オプションの出力を表示します。

アクション

コマンドを使用して、トレース ファイルの出力を表示します。show security traceoptions たとえば、以下のように表示されます。

この例の出力は次のとおりです。

マルチキャスト トレース操作の表示

マルチキャスト トレース操作を監視および表示するには、 コマンドを入力します 。mtrace monitor

この例では、クエリのみ を表示します。mtrace ただし、デバイスが応答を取り 込むと、表示は似ていますが、完全な 応答も表示されます(コマンド出力に表示される のとまったく同じです)。mtracemtracemtrace from-source

表 1 は、ディスプレイの出力フィールドを要約します。

表 1: CLI mtrace monitor コマンド出力の要約

フィールド

説明

Mtrace operation-type at time-of-day

  • operation-type- マルチキャスト トレース操作のタイプ: または .queryresponse

  • time-of-day- マルチキャスト トレースのクエリーまたは応答がキャプチャされた日時。

by

クエリを発行したホストの IP アドレス。

resp to address

address- 応答の宛先アドレス。

qid qid

qid- クエリ ID 番号。

packet from source to destination

  • source- クエリまたは応答の送信元の IP アドレス。

  • destination- クエリまたは応答の送信先の IP アドレス。

from source to destination

  • source- マルチキャスト送信元の IP アドレス。

  • destination- マルチキャスト宛先の IP アドレス。

via group address

address- トレースされているグループ アドレス。

mxhop=number

number- 最大ホップ設定。

デバイスのリストを表示する

デバイスと指定した宛先ホスト間のデバイスのリストを表示するには、以下の構文で コマンドを入力します 。traceroute

表 2 で、traceroute コマンドのオプションについて説明します。

表 2: CLI traceroute コマンド オプション

オプション

説明

host

指定したホスト名または IP アドレスにトレースルート パケットを送信します。

interface interface-name

(オプション)指定したインターフェイスでトレースルートパケットを送信します。このオプションが含まれていない場合、トレースルート パケットはすべてのインターフェイスで送信されます。

as-number-lookup

(オプション)デバイスと宛先ホスト間の各中間ホップの自律システム(AS)番号を表示します。

bypass-routing

(オプション)ルーティング テーブルをバイパスし、直接接続されたインターフェイスのホストにのみトレースルート パケットを送信します。ホストが直接接続されたインターフェイスではない場合、エラー メッセージが返されます。

このオプションを使用して、経路のないインターフェースを介してローカル・システムへの経路を表示します。

gateway address

(オプション)指定したゲートウェイを使用してルーティングします。

inet

(オプション)トレースルート パケットを強制的に IPv4 宛先にします。

inet6

(オプション)トレースルート パケットを強制的に IPv6 宛先にします。

no-resolve

(オプション)パス上のホップのホスト名の表示を抑止します。

routing-instance routing-instance-name

(オプション)traceroute に指定したルーティングインスタンスを使用します。

source address

(オプション)traceroute パケットで指定した送信元アドレスを使用します。

tos number

(オプション)トレースルート パケットの IP ヘッダーの type-of-service(TOS)値を設定します。0255 の値を指定します。

ttl number

(オプション)トレースルート パケットのTTL(Time-to-live)値を設定します。から までのホップ数を指定します。0128

wait seconds

(オプション)応答を待機する最大時間を設定します。

コマンドを終了する には、Ctrl-C を押します。traceroute

以下に、 コマンドの出力例を示します。traceroute

表示されるフィールドは、J-Web トレースルート診断ツールで表示されるフィールドと同じです。

例:SRXシリーズデバイスでのエンドツーエンドデバッギングの設定

この例では、SRX5K-MPCを使用してSRXシリーズファイアウォールでエンドツーエンドのデバッグを設定し、有効にする方法を示しています。

要件

この例では、以下のハードウェアとソフトウェアのコンポーネントを使用しています。

  • 100ギガビットイーサネットCFPトランシーバーがインストールされたSRX5K-MPCを搭載したSRX5600デバイス

  • SRXシリーズファイアウォールのJunos OSリリース12.1X47-D15以降

開始する前に、以下を実行します。

この機能を設定する前に、デバイス初期化以外の特別な設定を行う必要はありません。

概要

データ・パス・デバッグは、パケット・プロセス・パスに沿った複数の処理装置でトレースとデバッグを提供することにより、トラブルシューティング機能を強化します。データ・パス・デバッグ機能を使用すると、処理パスに沿ったさまざまなデータ・ポイントでトレースおよびデバッグ(パケットのキャプチャー)を行うことができます。各イベントで、アクション(カウント、パケット ダンプ、パケット サマリー、トレース)を指定し、キャプチャするパケットを定義するフィルターを設定できます。

この例では、トラフィックフィルターを定義し、アクションプロファイルを適用します。アクション・プロファイルは、プロセス・ユニットに対するさまざまなアクションを指定します。イングレスとエグレスは、着信トラフィックと発信トラフィックのデータをキャプチャするための処理パス上の場所として指定されます。

次に、操作モードでデータ・パスのデバッグを有効にし、最後にデータ・キャプチャー・レポートを表示します。

注:

データ・パスのデバッグは、SRX1400、SRX3400、SRX3600、SRX5400、SRX5600、およびSRX5800でサポートされています。

設定

手順

CLIクイック構成

この例を迅速に設定するには、以下のコマンドをコピーして、テキストファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit] 階層レベルでCLIにコピーアンドペーストして、設定モードから commit を入力します。

ステップバイステップでの手順

次の例では、設定階層のいくつかのレベルに移動する必要があります。その方法の説明については、Junos OS CLIユーザーガイド設定モードでCLIエディターを使用するを参照してください。

データ・パスのデバッグを構成するには:

  1. パケット・プロセス・パスにある複数のプロセス・ユニットのセキュリティー・データパス・デバッグ・オプションを編集します。

  2. キャプチャ・ファイル、ファイル形式、ファイルサイズ、およびファイル数を有効にします。

  3. アクションプロファイル、イベントタイプ、およびアクションプロファイルのアクションを設定します。

結果

設定モードから、show security datapath-debugコマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。

デバイスの設定が完了したら、設定モードから commit を入力します。

データ・パス・デバッグの使用可能化

手順

ステップバイステップでの手順

データ パスのデバッグを設定した後、動作モードからデバイス上のプロセスを開始する必要があります。

  1. データ・パスのデバッグを有効にします。

  2. 構成を検証してレポートを表示する前に、データ・パスのデバッグを無効にする必要があります。

    注:

    データのキャプチャが完了したら、デバッグ プロセスを停止する必要があります。デバッグプロセスを停止せずにキャプチャしたファイルを開こうとすると、取得したファイルをサードパーティ製ソフトウェア(tcpdumpやwiresharkなど)で開くことはできません。

検証

設定が正常に機能していることを確認します。

データ・パス・デバッグ・パケット・キャプチャの詳細の検証

目的

データ・パスのデバッグ・コンフィギュレーションを有効にして、キャプチャーしたデータを検証します。

アクション

動作モードからshow security datapath-debug captureコマンドを入力します。

簡潔にするために、 コマンド出力は切り捨てられ、少数のサンプルのみが表示されます。show 追加のサンプルは省略記号 (...) に置き換えられています。

結果を表示するには、CLI操作モードからローカルのUNIXシェルにアクセスし、ディレクトリ に移動します。/var/log/<file-name> 結果は、ユーティリティを使用して 読み取ることができます。tcpdump

注:

データ・パス・デバッグのトラブルシューティングが終了したら、手動で開始/停止する必要があるパケット・キャプチャー(パケット・ダンプ)のデータ・パス・デバッグ構成を含む、すべて (フロー・トレース・オプションに限定されない)と完全なデータ・パス・デバッグ構成を削除します。traceoptions デバッグ構成のいずれかの部分がアクティブなままである場合、デバイスのリソース (CPU/メモリ) が引き続き使用されます。