世界を動かす技術を、日本語で。

死んだトレントトラッカーを復活させ、300万のピアを見つける

概要

  • BitTorrentのトラッカーが死んでいる場合の影響と再取得の実験
  • トラッカーの役割とDHTの限界
  • 実際に死んだトラッカードメインを取得し、サーバを構築した手順
  • 数百万のトレント・ピアからのトラフィックの観測
  • 法的リスクと最終的な撤退判断

BitTorrentトラッカーの現状と再取得実験

  • BitTorrent プロトコルの中核要素である トラッカー の存在
  • 多くのトラッカーが 死んでいる (ホストダウン、ドメイン未使用)現状
  • 死んだトラッカーの ドメイン再取得 という発想
    • どれほどのクライアントが接続を試みるかへの興味
  • トラッカーの本来の役割
    • ピア発見のための 集中型サービス であり、これが無いと共有不能
    • トラッカーの消失= BitTorrentの中央集権的弱点
  • Mainline DHT による分散型ピア発見も存在
    • DHTは ブートストラップノード 依存や Sybil攻撃 の脆弱性あり
    • 実際、DHTでもピアが見つからないケースあり

実際のトラッカー再取得とサーバ構築

  • udp://open.demonii.si:1337/announce のドメインが未取得状態

  • Dynadot で.siドメインを購入、匿名VPSを用意

  • ドメインをVPSに割り当て、 opentracker をセットアップ

    • Ubuntu 24.04での必要パッケージインストール
    • libowfatopentracker のビルド手順
    • systemdによるデーモン化設定例
    [Unit]
    Description=opentracker
    After=network-online.target
    Wants=network-online.target
    
    [Service]
    Type=simple
    User=opentracker
    Group=opentracker
    WorkingDirectory=/var/lib/opentracker
    ExecStart=/home/opentracker/opentracker/opentracker -p 1337 -P 1337 -d /var/lib/opentracker -u opentracker
    Restart=on-failure
    LimitNOFILE=65536
    
    [Install]
    WantedBy=multi-user.target
    

サーバ稼働後の観測結果

  • 起動前から UDP 1337番ポート への大量トラフィック
  • 稼働1時間で 約170万トレント、310万ピア からの接続
  • /stats?mode=everything でのレスポンス例
    • トレント数、ピア数、シード数、完了数などが高水準
    • TCP/UDPでの接続回数やアナウンス回数も膨大
  • 死んだトラッカーでも、 世界中のクライアントがリクエスト を継続

法的リスクと撤退判断

  • トラッカー運営の 合法性 はグレーゾーン
    • The Pirate Bay等の摘発は主に「誘導」や広告・.torrent配布が根拠
    • 非公開のインフラ運営だけで誘導と見なされるかは難解
  • 多種多様なトレント(フリー・著作権物)が利用
    • 意図の証明が困難 であるものの、リスクは残存
  • ドメイン購入時に クレジットカード を使ったことを後悔
  • 動作確認後、 即座にVPS停止とドメイン削除 を実施

トラッカードメイン取得の提案

  • open.demonii.si などの未取得ドメインは容易に発見可能
  • 公共サービス的な運用 を目指す場合、再取得も選択肢
  • ただし、 法的・倫理的リスク を十分考慮する必要

まとめ

  • BitTorrentのトラッカーは依然として多くのクライアントから利用されている現実
  • 死んだトラッカーのドメイン再取得は技術的には容易だが、 法的リスク を常に意識する必要
  • 分散型DHTにも限界があり、 トラッカーの重要性 は依然高い
  • 公共性とリスクのバランスをどう取るかが今後の課題

Hackerたちの意見

これは合法なの?なんで合法じゃないの?この場合、トラッカーをホスティングしてるわけじゃなくて、ただ接続を見てるだけだからね。もしトラッカーを運営してたとしても、そのトラッカー自体が違法だって主張するのは難しいよ。オープントラッカーをホスティングするのは、検索エンジンをホスティングするのと同じで、法的な削除要求にどう対応するかが重要なんだ。トラッカーの周りにどんなインフラがあるかで、警察や裁判所が意図を見たり推測したりするからね。でも、トラッカーは単純なコーディネーションサーバーのソフトウェアだから、もし違法になったらマジでおかしいよ。

「これは合法なの?」って質問はあんまり役に立たないよ。もっといい質問は「訴えられる可能性はどれくらい?」だね。民事訴訟の場合、合法かどうかは関係なく、目をつけられたら弁護士に訴えられたり嫌がらせされたりすることもあるから。

警察はこのニュアンスを理解してると思う?特に、そこを通るトラフィックの大半が著作権侵害だろうし。彼らはただトラッカーを見て、違法だと思うだろうね。

知ってて人を犯罪に手を貸すのは、自分がその犯罪を犯すのと同じ扱いになるからね。つまり、アメリカの連邦法では18 USC 2aに該当する。あなたが運営しているソフトウェアが「シンプル」だからって、違法なことをするための弁護にはならないよ。他人を犯罪に手を貸すのは、やっぱり犯罪だと思った方がいい。アメリカにはインターネットや著作権のセーフハーバー条項がいくつかあって、もしかしたら(多分無理だけど)犯罪にならないかもしれないけど、私は弁護士じゃないからわからない。でも、「他人を犯罪に手を貸す」って聞いたら、「それ自体が犯罪かも」って思うべきだよ。

OPは実際にトラッカーをホスティングしてたよ。「それからトラッカーを立ち上げた。約1時間後には、310万のピアの中で約170万の異なるトレントがピークに達した!」

音楽や映画の業界が一般的にP2Pを嫌ってるからじゃない?それが2000年代にP2Pをほぼ死なせたんだよね、次世代の分散型ウェブになりかけてたのに。そろそろ再検討する時期かも?結局、DRMをどうやって強制するかの問題だし、今の時代はライセンスを整理する方法がたくさんあるから、あまり気にしなくてもいいはず。

(法律の専門家ではないけど)合法的な場合もあれば、違法な場合もあるよ。削除要請に応じないと、たぶん違法に近いかな。削除要請に応じてハッシュをブラックリストに入れれば、たぶん大丈夫だと思う。*もちろん、管轄やハッシュをIP:PORTにマッチさせることが配布や助長と見なされるかどうかによるけど(TPBのケースを例にするといいよ)。知り合いに、結構大きなトラッカーを何年も運営してた人がいて、削除要請が来たときはハッシュをブラックリストに入れたら、今のところ問題ないみたい。

これは、CloudflareがIPアドレス1.1.1.1を拾った時みたいだね。ホットになった瞬間にたくさんのトラフィックがあったのは、いろんな人がそのアドレスを指すスクリプトを持ってたからだよ。

私は法律の専門家じゃないけど、コンテンツに中立なトラッカーを運営するのはアメリカでは合法だと思ってる。他の法域では確実に違法だし、VPSが別の法域にあるかもしれないし、.siのTLDは確実にそうだね。

VPSはここからだよね、https://cockbox.org/(記事にも書いてあったけど)、モルドバに拠点を置いてるって?

ググったら、少なくともアメリカの法執行機関によって閉鎖されたトラッカーが一つあった、EliteTorrents [2005]。たぶんもっとあったと思う。MPAAとかが損害賠償で訴えた民事訴訟も確実にあるし。アメリカでのケースを作るのはちょっと難しいかもしれないけど、大部分が著作権で保護されたコンテンツをリストしているトラッカーは、アメリカで閉鎖される可能性が高いと思う。

どれだけの反トレント団体がこっそりこれをやってるんだろうね。

確かにいくつかあるね。メディア会社はよくISPに侵害通知を送って、ユーザーに転送させるから、これがIPを取得する方法だと思う。

実は、ちょっとだけプライベートなトラッカーを運営してたことがあるんだ。P2Pでのウォッチパーティーを試してみたくてね。でも、ほんとにおもちゃみたいなもので、トラッカーの仕組みを深く理解しようとは思わなかった(RustのAquaticトラッカーを使ってて、リクエストしたらウェブトレントのサポートも追加してくれたんだ! https://github.com/greatest-ape/aquatic)。トラッカーは自分が何を追跡してるか分かってるのかな?ピアのランデブーを無視するような試みはあるの?俺の直感では、みんながピアにリクエストしてるのは、なんかハッシュやマグネットみたいなもので、それ自体が十分で、特定の情報を含める必要はないと思う(ただ、多くのマグネットリンクには人間が読める説明が含まれてるけどね)。トラッカーはおそらくピアからこのハッシュをダウンロードしてトレント情報を得ようとするだろうけど、実際にダウンロードしないとトレントが何か、何が入ってるかは分からないよね。これって合ってる?マグネットリンクのどの部分がランデブーに重要なの?トラッカーは人間に優しいフィールドを無視したり、侵入時にブロックして目を守ることができるのかな?

ちょっと気になるんだけど、いろんなビットトレントクライアントがあって、その中には安全でない言語で書かれてるものも多いから、悪意のあるトラッカーを通じて悪用される可能性はあるのかな?トラッカーから不正なデータを与えられたら、いくつかのクライアントが不具合を起こすのも驚きじゃないよ。

ここに毎日更新されるトラッカーマスタリストがあるから、他の死んでるトラッカーを見つけるのに役立つかもね。 https://github.com/ngosang/trackerslist

最初に思ったのは、どれだけのビットトレントクライアントが脆弱なパースコードを持ってるのかってこと。悪意のある人がドメインを登録して、クライアントを感染させることはできるのかな?

utorrent v2.1はまだ多くの人に使われていて、確かに悪用されやすいよね。

つまり、ドメインを登録して特定のDNSレコードを公開するコストだけで、どんなIPにでもDDoS攻撃できるってことだね。

いろんなトレントクライアントのトラッカー応答の処理に既知の脆弱性があるか気になるな。例えば、バッファオーバーフローとか。結構大きなボットネットを集めることができるかもしれない。