一般的に、パケットキャプチャツールはWinPcapライブラリを使ってパケットをキャプチャします:
Winpcap(Windows Packet Capture)は、Windowsプラットフォーム向けの次の無料公開ネットワークアクセスシステムです。 Winpcapの開発目的は、Win32アプリケーションに基盤となるネットワークへのアクセスを提供することです。 Windowsシステム下での直接ネットワークプログラミングに使用されます。
Winpcapは、オペレーティングシステム間で容易に移植可能で、プログラマーが簡単に開発できる強力なプログラミングインターフェースを提供します。 Winpcapを使うにはどんなプログラムが必要ですか? Winpcapはネットワーク解析、トラブルシューティング、ネットワークセキュリティ監視などに使用されます。 Winpcapは特に以下のクラシックな分野に適しています: 1. ネットワークおよびプロトコル解析 2. ネットワーク監視 3. 通信ログ記録 4、トラフィックジェネレーター 5. 利用者レベルの橋とルート 6. ネットワーク侵入検知システム(NIDS) 7. ネットワークスキャン 8. 安全工具 Winpcapにはできない側面もあります。 パケットの送受信にホストのTCP/IPプロトコルに依存しません。 つまり、同じホスト内のプログラム間の通信データをブロックしたり処理したりすることはできません。 物理回線上のパケットのみを「スニッフ」できます。 したがって、トラフィックシェーパー、QoSスケジューリング、個人用ファイアウォールとは連携しません。 Winpcap内部 Winpcapはパケットキャプチャと解析のためのWin32プラットフォームです。 カーネルレベルのパケットフィルター、基盤となるDLL(packet.dll)、そして高度なシステム非依存DLL(Wpcap.dll)を含みます しかし、C#ではWinPcapをうまく呼び出せず、パケットキャプチャツールを書きたいので、SharpPcapでしか書けません。
SharpPcapは 。 よく知られたpcap/WinPcapライブラリを基に開発されたNET環境。 C#およびVB NET開発言語の両方に対して、キャプチャ、インジェクト、分析、ビルド機能を提供します。 実装された関数は以下の通りです:
TCPやUDPパケットだけでなく、他のマシン、すなわちARPからのパケットも取得できます
その後、フィルター条件を設定できます
デモとソースコードのダウンロード:
観光客の皆さん、この投稿の隠された内容を見たい方は、どうぞ 答える
|