1

Web サイト (トレント) から複数の小さなファイルをダウンロードする ac# アプリケーションがあります。一部のサイトでは、1 日あたりの IP ごとのダウンロード数が制限されています。

HttpWebRequest を実行し、ストリームが有効な torrent である場合は、ディスクに保存します。

ダウンロードが失敗しないように、C# アプリケーションが HttpWebRequest を実行するときに IP をスプーフィングする方法はありますか?

ダウンロード時間を 10 分に 1 回に設定しましたが、うまくいきませんでした。それでも結局ブロックされます。

「TOR」は異なる IP を使用できると聞きましたが、デスクトップ アプリを使用しているユーザーが TOR ブラウザを個別にインストールする必要はありません。

           HttpWebResponse resp = null;

        try
        {
            var req = (HttpWebRequest)WebRequest.Create("http://www.exampe.com/test.torrent);
            req.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip,deflate");
            req.AutomaticDecompression = DecompressionMethods.Deflate | DecompressionMethods.GZip;
            req.Timeout = 30000;
            req.KeepAlive = true;
            resp = (HttpWebResponse)(req.GetResponse());

        }

解決策はありますか?

4

1 に答える 1

1

そのためには、tcp/ip パケットを操作する必要があります。これは、HttpWebRequest によって作成された送信パケットをキャプチャし、その送信元 IP をスプーフィングされた IP に変更する必要があることを意味します。

あなたがやりたいことに関係しているように見えるこのフォーラム投稿を見つけました。チェックしてください:http://pcapdotnet.codeplex.com/discussions/349978

私の知る限り、PCap.netまたはSharpPcapライブラリを介して実行できます。

于 2016-06-16T23:22:08.817 に答える