Michael_P 提供の写真
この記事は Balakrishnan M によって書かれました
Editcap ユーティリティは、ダンプ ファイルから特定のパケットを選択または削除し、それらを特定の形式に変換するために使用されます。 Editcap は、ethereal のようなパケット キャプチャを実行しません。代わりに、キャプチャされたパケットで動作し、必要なパケットの一部を別のファイルに書き込みます。さまざまなオプションを editcap に渡して、優先パケットを取得できます。
この記事では、editcap を使用してパケット ダンプを効果的に処理する方法に関する 11 の実際的な例を確認します。
editcap の主な目的
以下は、editcap コマンドを使用する主な理由です。
- ダンプ ファイルを複数のファイルに分割します。
- 必要なパケットのみを選択してください。
- キャプチャ ファイルをある形式から別の形式に変換する
- 圧縮されたダンプ ファイルから読み取る能力
- ダンプ全体を読み込むのではなく、選択したパケットのみを読み込むことで、ネットワーク アナライザ ツールの作業を容易にします。
- すべての機能により、パケットの処理または分析にかかる時間が短縮されます
巨大なダンプ ファイル内の特定のパケット タイプのみを分析する必要があるシナリオを想定してみましょう。この状況では、ネットワーク パケット アナライザー (wireshark または ethereal) を使用して巨大なダンプ ファイルを一度にロードすることはできません。これは、CPU を集中的に使用するプロセスになり、システムがハングする可能性があるためです。 Editicap ユーティリティは、関連するパケットのみを提供することで作業を容易にするため、ネットワーク アナライザ ツールですばやくロードできます。
editcap は、wireshark パッケージで利用できます。 editcap を使用するには、wireshark/ethereal パッケージがインストールされていることを確認してください。
edicap の 11 の実用的な使用例
例 1:input_dump ファイルの先頭から一連のパケットを破棄
output_dump ファイルには、最初の 10 パケットを除くすべてのパケットが含まれます。
# editcap -v input_dump output_dump 1-10
例 2:input_dump ファイルの途中から一連のパケットを破棄する
output_dump ファイルには、200 から 210 までのパケットを除くすべてのパケットが含まれます。
# editcap -v input_dump output_dump 200-210
例 3:複数の範囲のパケットを選択する (先頭と中間から)
output_dump ファイルには、最初の 10 パケットと、100 から 200 のパケットが含まれます。
# editcap -r -v input_dump output_dump 1-10 100-200
例 4:オプション -T を使用してキャプチャ ファイルのカプセル化タイプを変更する
デフォルトでは、ダンプ ファイルのカプセル化タイプは ether です。以下の例では、キャプチャ ファイルを ieee-802-11-bsd 形式に変換しています
# editcap -v -T ieee-802-11-radiotap input_dump output_dump
例 5:圧縮された input_dump ファイルを処理する
editcap は、圧縮キャプチャ ファイル形式を自動的に検出します。現在、gzip 形式をサポートしています。以下の例では、圧縮された入力ファイルからパケットを取得し、最初の 10 パケットと 100 から 200 の間のパケットを output_dump ファイルに書き込みます。
# editcap -r -v input_dump.gz output_dump 1-10 100-200
例 6:オプション -A と -B を使用して、特定の期間の間のパケットを抽出する
この例では、オプション A に記載されている時間とオプション B に記載されている時間の間にキャプチャされたパケットを含む output_dump を作成します。
# editcap -v -A "2009-02-11 11:26:30" -B "2009-02-11 11:27:00" input_dump output_dump
例 7:オプション -t を使用してパケットのタイムスタンプを変更 (短縮または前進) する
パケットのタイムスタンプを 1 時間に進めます。
# editcap -t 3600 input_dump output_dump
パケットのタイムスタンプを 30 分に短縮するには、
# editcap -t -1800 input_dump output_dump
例 8:オプション -d を使用して、output_dump ファイルから重複パケットを削除する
以下の例では、前のフレームをさかのぼって重複を見つけています。最後に、重複を含まないダンプを提供します。
# editcap -v -d input_dump output_dump
例 9:オプション -s を使用してパケットを特定の長さに切り詰める
パケット長が 100 に制限された ouptut_dump ファイルを生成します。これは、多くの状況で非常に役立ちます。たとえば、すべてのパケットの IP 層のみを取得し、他の層を必要としない場合は、この方法を使用できます。
# editcap -s 100 -v -A "2009-02-11 11:26:30" -B "2009-02-11 11:27:00" input_dump.gz output_dump
例 10:オプション -c を使用して input_dump ファイルを複数のファイルに分割
単一のダンプを複数のファイルに分割し、それぞれに指定された数のパケットが含まれます。
# editcap -v -c 1000 input_dump output
input_dump に 5000 パケットが含まれている場合、editcap は次の 5 つの異なる出力ファイルを生成します。
output-00000 output-00001 output-00002 output-00003 output-00004
例 11:オプション -C を使用して、すべてのパケットの下部から特定のバイトを削除します
この例では、すべてのパケットから 10 バイトを削除し、出力ファイルに書き込みます。 Wireshark で出力ファイルを表示することにより、これを確認できます。各パケットのフレーム レイヤーには、「ワイヤ上で 50 バイト、キャプチャされた 40 バイト」と表示されます (ここでは、パケットの実際のサイズは 50 バイトです)。
# editcap -C 10 input_dump output
この記事は バラクリシュナン マリヤパン によって書かれました。 彼は bk Systems (p) Ltd で働いており、オープン ソースへの貢献に関心があります。 The Geek Stuff は、あなたのヒントやゲスト記事を歓迎します。