Localhostで実行するCで簡単なサーバーアプリを作成しました。 Wiresharkを使用してlocalhostトラフィックをキャプチャする方法は?
Windowsを使用している場合 不可能です -以下をお読みください。代わりにマシンのローカルアドレスを使用すると、データをキャプチャできます。 CaptureSetup/Loopbackを参照してください。
要約:Linux、Mac OS Xを含むさまざまなBSD、およびDigital/Tru64 UNIXのループバックインターフェイスでキャプチャでき、IrixおよびAIXでも実行できる場合がありますが、間違いなくSolaris、HP-UXではできません...。
ページでは、これはWiresharkのみを使用するWindowsでは不可能であると記載されていますが、実際には 異なる回答 で説明されている回避策を使用して記録できます。
編集:約3年後、この答えは完全に正しくなくなりました。リンクされたページには、ループバックインターフェイスでキャプチャするための指示が含まれています。
何らかの理由で、以前の回答はどれも私のケースでは機能しませんでしたので、トリックを行ったものを投稿します。 RawCap と呼ばれる小さな宝石があり、Windowsでローカルホストトラフィックをキャプチャできます。利点:
トラフィックがキャプチャされたら、それを開いてWiresharkで通常どおり検査できます。私が見つけた唯一の欠点は、フィルターを設定できないことです。つまり、重い可能性があるすべてのローカルホストトラフィックをキャプチャする必要があります。また、Windows XP SPに関する1つの bug があります。3。
その他のアドバイス:
Windowsプラットフォームでは、Wiresharkを使用してlocalhostトラフィックをキャプチャすることもできます。あなたがする必要があるのは、 Microsoft loopback adapter をインストールし、それを嗅ぎ付けることです。
私は実際にこれを試したことはありませんが、ウェブからのこの答えは有望に聞こえます:
Wiresharkは、ウィンドウXPスタックの性質により、ウィンドウTCPでローカルパケットを実際にキャプチャできません。パケットが同じマシン上で送受信される場合、wiresharkが監視するネットワーク境界を越えるようには見えません。
ただし、これを回避する方法があります。WindowsXPマシンに(一時的な)静的ルートを設定することにより、ネットワークゲートウェイ(ルーター)を介してローカルトラフィックをルーティングできます。
XP IPアドレスが192.168.0.2で、ゲートウェイ(ルーター)アドレスが192.168.0.1である場合、Windows XPコマンドラインから次のコマンドを実行して、すべてのローカルトラフィックを強制的に送信し、ネットワークの境界を越えて戻るため、wiresharkはデータを追跡できます(wiresharkは、このシナリオでは、PCを離れるときと戻るときにパケットを2回報告することに注意してください)。
route add 192.168.0.2 mask 255.255.255.255 192.168.0.1 metric 1
Npcapを試してください: https://github.com/nmap/npcap 、WinPcapに基づいており、Windowsでのループバックトラフィックキャプチャをサポートしています。 NpcapはNmap( http://nmap.org/ )のサブプロジェクトですので、Nmapの開発リスト( http:// seclists。 org/nmap-dev / )。
Wiresharkでループバックトラフィックをライブで表示するには、 RawCap の出力を即座に読み取らせます。 cmaynard はこの独創的なことを説明しています Wiresharkフォーラムでのアプローチ 。ここで引用します。
[...] Wiresharkでライブトラフィックを表示する場合は、1つのコマンドラインからRawCapを実行し、別のコマンドラインからWiresharkを実行することで、引き続き実行できます。 cygwinのテールが利用できると仮定すると、これは次のようなものを使用して実現できます。
cmd1: RawCap.exe -f 127.0.0.1 dumpfile.pcap
cmd2: tail -c +0 -f dumpfile.pcap | Wireshark.exe -k -i -
Cygwinのしっぽが必要で、Windowsのすぐに使えるツールでこれを行う方法を見つけることができませんでした。彼のアプローチは私にとって非常にうまく機能し、キャプチャされたループバックトラフィックでWiresharkのすべてのフィルター機能をライブで使用できます。
Windowsの場合、
Local LoopbackのWiresharkのパケットをキャプチャすることはできませんが、使用できますRawCapと呼ばれる非常に小さいが便利なプログラム;
RawCapをcommand Promptで実行し、ループバック擬似インターフェース(127.0.0.1)その後、パケットキャプチャファイルの名前を書き込むだけです(。pcap)
簡単なデモは次のとおりです。
C:\Users\Levent\Desktop\rawcap>rawcap
Interfaces:
0. 169.254.125.51 Local Area Connection* 12 Wireless80211
1. 192.168.2.254 Wi-Fi Wireless80211
2. 169.254.214.165 Ethernet Ethernet
3. 192.168.56.1 VirtualBox Host-Only Network Ethernet
4. 127.0.0.1 Loopback Pseudo-Interface 1 Loopback
Select interface to sniff [default '0']: 4
Output path or filename [default 'dumpfile.pcap']: test.pcap
Sniffing IP : 127.0.0.1
File : test.pcap
Packets : 48^C
はい、Npcap Loopback Adapterを使用してlocalhostトラフィックを監視できます