概要#
プライベートトラッカーは、追跡されているトレントへのアクセス権を制限する仕組みです。その目的はリソース共有を促進し、登録ユーザーの統計情報を記録し、アップロードが不十分なユーザーに対して一部またはすべてのトレントへのアクセス権を制限することです。
メタ情報ファイルを生成する際、ユーザーはトレントのメタ情報ファイル(BitTorrent プロトコル仕様に従う)の「info」辞書に「private=1」というキーバリューペアを含めることで、そのトレントがプライベートトラッカートレントであることを示すことができます。
BitTorrent クライアントが「private=1」というキーバリューペアを含むメタ情報ファイルを取得した場合、それはプライベートトラッカーにのみ報告し、プライベートトラッカーから返されたノードにのみ接続する必要があります。
PT トレントのメタ情報ファイルには、「announce-list」に複数のトラッカーが含まれている場合があります(マルチトラッカーメタデータ拡張を参照)。ノードは同時に 1 つのトラッカーのみを使用し、現在のトラッカーが失敗した場合にのみ他のトラッカーに切り替える必要があります。トラッカーを切り替える際、ノードは現在のすべてのノードとの接続を切断し、新しいトラッカーが提供するノードにのみ接続する必要があります。
原理#
プライベートトラッカーはノードの情報を公開しないため、侵入者は直接他のノードと連絡を取ることはできません。ただし、侵入者がノードの IP アドレスとポートを入手した場合、ノードに直接接続してファイル共有を行うことができます。トレントスワーム内では、侵入者は通常のノードと見なされ、他のノードと同じ権利と待遇を持ちます。
現在、BitTorrent にはトレントスワーム内の他のノードを知るための 4 つの方法があります:
- トラッカー [1]
- 分散ハッシュテーブル(DHT)[2]
- ピアエクスチェンジ(PEX)[3]
- ローカルサービスディスカバリ(LSD)[5]
プライベートトラッカー以外の方法でノード情報を公開または交換することは、トラッカーのアクセス制御を破壊します。これは、PT トレントで侵入者が PT トレントに既に存在するノードの IP とポートを入手または推測した場合、侵入者に完全なノードリストが提供されることを意味します。
ノードが異なるトラッカー間を切り替える場合、ノードは古いトラッカーとの接続を切断し、プライベートトラッカーとパブリックトラッカーの間のノードとしての役割を果たすことを防ぐためです。これにより、攻撃者がメタ情報ファイルの announce-list を変更し、パブリックトラッカーウェブサイトでメタ情報ファイルを再配布する影響がある程度軽減されます。