0

実行中のアプリケーションの一部がパケットの送受信に同じポート番号を使用するアプリケーションごとにネットワーク トラフィックをキャプチャする Windows ベースのアプリケーションを作成する必要があります。私はwinpcapを使用し、ポートごとと宛先ごとにそれらを正常にキャプチャしてフィルタリングしましたが、アプリケーションごとにキャプチャする方法、つまりIPパケットからアプリケーション情報を知る方法がわかりません。問題を解決できるのはwinpcapだけですか、それとも他のAPIまたはライブラリを使用する必要があります。パケットのヘッダからパケットが生成されたアプリケーション情報を取得できますか?

 **

アプリケーションごとのネットワーク トラフィックをキャプチャするために、vc++ で iphlpapi と winpcap を使用する例を教えてください。

**

4

2 に答える 2

1

これは winpcap では不可能だと思います。

Windows Filtering Platformをご覧ください。まったく高度ではありません。サンプルを調べると、まさにあなたが望むものを見つけることができます。

于 2011-02-16T10:18:11.017 に答える
0

winpcapには、どのプロセスがどのデータを送信しているかを知る良い方法がありません。しかし、Windowsはそうします。使ってみてください

netstat -a -o

netstatは、端末で使用されているポートを通知するプログラムです。-スイッチは「すべてのポートを表示してください」と言います-oスイッチは「このポートを使用しているプロセスのpidを表示してください」と言います

プロセスが送信しているポートは確認できませんが、udpパケットに対して受信しているポートは確認できます。

TCPパケットの場合、リモート接続のIPアドレスなど、必要なすべての情報が表示されます。

于 2011-07-30T01:43:31.923 に答える