0

私の知る限り、トレントをシードまたはリーチングするとき、IPはトラッカー上にあり、数時間または数日間そこに留まります。Libtorrentを使用してトラッカーに手動で通知するにはどうすればよいですか。トラッカーに接続されなくなります。私はnoreleechingをシードしていないので、IPを忘れてください。コードビットやアドバイスをいただければ幸いです。現在、rasterbarが提供するPythonバインディングを使用していますが、C++コードでも問題ありません。

4

2 に答える 2

2

トラッカーは単なるHTTPサービスです(ただし、設計は不十分です)。BitTorrent Tracker Protocol、特にeventクエリパラメータを参照してください。Pythonでは、を使用できますurllib

于 2011-05-21T13:10:44.723 に答える
1

トレントを停止するとき、またはセッションを停止するときに、libtorrentはこれを自動的に行います。失敗したように見える場合は、シャットダウン時にトラッカーのタイムアウトを増やすことをお勧めします。これにより、シャットダウンの遅延が増加しますが、過負荷のトラッカーにさらに時間がかかります。を参照してくださいsession_settings::stop_tracker_timeout。デフォルトではこれは5秒ですが、トラッカーが応答するのにそれよりもはるかに長く、最大30秒かかる場合があります。

トラッカーは通常、約1時間でピアをタイムアウトします。生き続けるには、30分ごとに再アナウンスする必要があります。

別のビットトレントクライアントを使用して、停止したイベントをトラッカーに送信しようとしている場合(この場合、使用しているクライアントが停止したイベントをトラッカーに送信できないと仮定すると)、信頼性が少し低下する可能性があります。

トラッカーリクエストには、 info-hash(つまり、トレントの一意の識別子)、クライアントが起動時に生成するキー、peer-id(これもクライアントによって生成される)、および転送統計を含める必要があります。

統計を省略しても問題は解決しますが、情報ハッシュまたはクライアントキー、場合によってはピアIDがわからない場合、トラッカーはリクエストが実際に参照していることを認識できません。クライアントのトラッカーリクエスト。IPは削除されません。

実際には、ほとんどの場合、情報ハッシュとトラッカーのURLを知っているだけで、それを機能させることができるかもしれません。.torrentファイルをロードし、そこからinfo-hashとtrackerのURLを取得することで、info-hashを取得できます。

于 2011-05-23T06:07:08.690 に答える