私が取り組んでいるアプリケーションは、別のアプリケーションの接続を追跡する必要があります。つまり、他のアプリケーションがIPトラフィックを生成および受信していることを確認する必要があります。
他のアプリケーションへのAPIがないため、WinSockを介してIPトラフィックを追跡しています。これを行うには、RAW IPソケットを定義し、IOコントロールを-と同等のもので設定します。
int opt = RCVALL_ON;
WSAIoctl((socket) s, SIO_RCV_ALL, &opt, sizeof(opt), NULL, ...); //The rest is "empty"
次に、ソケットから非同期でデータを読み取り、IPヘッダーを調べて、トラフィックが追跡対象のアプリケーションに属していることを確認します。
2つの質問が発生します-
- IPトラフィックを追跡する別のより良い方法はありますか?具体的には、どのホストがマシンにデータを送信し、どのホストにデータがいつ送信されたかを知る必要があります。
- 上記の方法を使用すると、データはターゲットアプリケーションから「盗まれ」ますか?または、ターゲットアプリケーションは中断することなくソケットにそれを取得しますか?
ありがとう、
アサフ