Wireshark を使用してネットワークのパケットを分析する方法に関する 10 のヒント

パケット交換ネットワークでは、パケットはコンピュータ間で伝送されるデータの単位を表します。

これを行うには、ネットワーク パケット アナライザーと呼ばれるソフトウェア プログラムを使用します。 その上、Wireshark では、トラフィックをリアルタイムで監視するだけでなく、ファイルに保存して後で検査することもできます。

関連記事: ネットワーク使用量を分析する最高の Linux 帯域幅監視ツール

この記事では、Wireshark を使用してネットワーク内のパケットを分析する方法に関する 10 のヒントを紹介し、概要セクションに到達したら、これをブックマークに追加する気になることを願っております。

LinuxでのWiresharkのインストール

Wiresharkをインストールするには、https://www.wireshark.org/download.htmlからあなたのオペレーティングシステム/アーキテクチャに適したインストーラーを選択します。

特に、Linuxを使っているなら、あなたの都合で簡単にインストールできるよう、Wiresharkはディストリビューションのリポジトリから直接利用できなければなりません。

------------ On Debian/Ubuntu based Distros ------------ $ sudo apt-get install wireshark------------ On CentOS/RHEL based Distros ------------$ sudo yum install wireshark------------ On Fedora 22+ Releases ------------$ sudo dnf install wireshark

Debianとその派生版には、sudoを使用してWiresharkを起動しない限り、ネットワークインターフェイスをリストアップできない既知のバグが存在します。 これを修正するには、この投稿で受け入れられている回答に従ってください。

一旦Wiresharkが起動すると、Capture:

Wireshark Network Analyzer

では、eth0を使っていますが、希望により他のものを選択することが可能です。

キャプチャオプションの設定

これから考える最も有用なキャプチャオプションは次のとおりです:

  1. ネットワークインターフェース – 前に説明したように、eth0を通して来るパケットだけを、受信または送信を分析することになります。
  2. Capture filter – このオプションでは、ポート、プロトコル、またはタイプによって、どのようなトラフィックを監視したいかを指定できます。

    当面は、ドロップダウンリストから eth0 を選択し、ボタンで [開始] をクリックするだけです。 そのインターフェイスを通過するすべてのトラフィックを見始めるでしょう。 検査されるパケットの量が多いため、監視目的にはあまり役立ちませんが、これは手始めです。

    Monitor Network Interface Traffic

    上の画像では、利用できるインターフェイスをリストするアイコン、現在のキャプチャを停止して、再開するアイコン(左側の赤いボックス)、フィルターの設定と編集(右側の赤いボックス)も見ることができます。

    まず、キャプチャのオプションを説明し、#7 から#10 のヒントでは、キャプチャを使って実際に役に立つことを行う方法について説明します。

    TIP #1 – Inspect HTTP Traffic

    フィルターボックスに http を入力し、適用をクリックします。

    Inspect HTTP Network Traffic

    TIP #2 – Inspect HTTP Traffic from a Given IP Address

    In this particular tip, we will prepend ip==192.168.0.10&& to the filter stanza to monitor HTTP traffic between the local computer and 192.168.0.10:

    Inspect HTTP Traffic on IP Address

    TIP #3 – Inspect HTTP Traffic to a Given IP Address

    #2 と密接な関係があり、この場合、次のように ip.dst をキャプチャ フィルターの一部として使用します。

    ip.dst==192.168.0.10&&http
    Monitor HTTP Network Traffic to IP Address

    Tips #2と#3を組み合わせるには、ip.srcまたはip.dstの代わりにip.addrをフィルタールールに使用することができます。

    TIP #4 – Monitor Apache and MySQL Network Traffic

    時には、どちらか (または両方) の条件に一致するトラフィックを検査することに興味を持つことがあります。 たとえば、TCP ポート 80 (Web サーバ) と 3306 (MySQL / MariaDB データベースサーバ) のトラフィックを監視するには、キャプチャフィルタで OR 条件を使用できます:

    tcp.port==80||tcp.port==3306
    Monitor Apache and MySQL Traffic

    Tips #2 と #3 で || と単語 or は同じ結果を生成しています。 && と単語 and も同様です。

    TIP #5 – Reject Packets to Given IP Address

    フィルタ規則に一致しないパケットを除外するには、! を使い、括弧で規則を囲んでください。 例えば、指定された IP アドレスから発信された、または指定された IP アドレスに向けられたパッケージを除外するには、次のようにします:

    !(ip.addr == 192.168.0.10)

    TIP #6 – ローカル ネットワーク トラフィックの監視 (192.168.0.0).0/24)

    次のフィルタルールは、ローカルトラフィックのみを表示し、インターネットに向かうパケットとインターネットから来るパケットを除外します:

    ip.src==192.168.0.0/24 and ip.dst==192.168.0.0/24
    Monitor Local Network Traffic

    TIP #7 – モニター TCP Conversation

    TCP 会話(データ交換)の内容を検査するには、特定のパケット上で右クリックして [Follow TCP stream] を選択してください。

    Web トラフィックを検査している場合、これには HTTP ヘッダーと、もしあればプロセス中に送信されたプレーンテキスト認証情報が含まれます。

    Monitor TCP Conversation

    TIP #8 – Edit Coloring Rules

    さて、もうお気付きだと思いますが、キャプチャウィンドウ内の各行には色が付けられています。 デフォルトでは、HTTP トラフィックは緑の背景に黒のテキストで表示され、チェックサムエラーは黒の背景に赤のテキストで表示されます。

    これらの設定を変更したい場合は、色付けの規則の編集アイコンをクリックし、所定のフィルタを選択し、[編集] をクリックします。

    Customize Wireshark Output in Colors

    TIP #9 – Save the Capture to a File

    Save the contents of capture will be able to inspect it with greater detail. これを行うには、File → Export と進み、リストからエクスポート形式を選びます:

    Save Wireshark Capture to File

    TIP #10 – Capture Samples

    自分のネットワークは「退屈」だと思っているなら、Wiresharkが練習と学習に使える一連のサンプルキャプチャファイルを提供しています。 これらのサンプルキャプチャをダウンロードし、ファイル → インポートメニューからインポートできます。

    概要

    公式サイトの FAQ のセクションにあるように、Wireshark はフリーでオープンソースのソフトウェアです。 キャプチャ フィルターは、検査を開始する前でも後でも設定できます。

    一応、フィルターにはオートコンプリート機能があり、よく使うオプションを簡単に検索して、後でカスタマイズすることが可能です。 これさえあれば、空は無限に広がる!

コメントを残す

メールアドレスが公開されることはありません。