ほとんどのインターネットインフラは、想像通りの仕組みで作られている。企業がデータセンター内にスペースを借り、サーバーを設置し、そこからサービスを運用する。ピアツーピア型のレジデンシャルプロキシネットワークはそのようには作られておらず、この違いを理解することで、こうした製品の挙動のほぼすべて、一見奇妙に思える部分も含めて説明がつく。
基本的な考え方
ピアツーピアネットワークには、プロキシサーバーが並ぶデータセンターは存在しない。ネットワークは、ごく普通の人々が所有する普通のデバイス、つまりスマートフォン、ノートパソコン、家庭用パソコンなどで構成されており、それらは通常の家庭用インターネット回線に接続されている。参加している各デバイスはノードとして機能し得る。つまり、ネットワークに代わってリクエストを転送し、レスポンスを返すことができる。
そのため、この種のプロキシを通じてリクエストを送ると、そのリクエストはプロバイダーのゲートウェイへ向かい、そこから参加者の一人の家庭用回線を経由して、あなたが本来アクセスしようとしていたウェブサイトへと届く。ウェブサイト側からは、その家庭のアドレスが見える。ウェブサイトの視点から見れば、そこがリクエストの発信元だからだ。
なぜこのような形でネットワークを構築するのか
サーバーを借りるよりも複雑な仕組みであるため、そこには理由があるはずであり、実際、理由はただ一つ、アドレスの問題である。
ウェブサイトは、トラフィックの発信元によって扱いを変える。データセンターのアドレスは、ホスティングインフラに属するものだと即座に識別できる。なぜなら、そうしたアドレス範囲は公開登録されているからだ。多くのサイトはそれをブロックやチャレンジ、あるいは異なるコンテンツを提供する根拠として扱う。一方、家庭用回線は人間のように見える。なぜなら、実際に人間だからだ。
この品質は購入することができない。コンシューマー向けISPは、自動化トラフィックを流したい企業ではなく、家庭にアドレスを割り当てる。実際の家庭用回線からリクエストを送る唯一の方法は、実際の家庭にそれを運んでもらうことであり、それこそがピアツーピアネットワークが実現していることだ。アドレスの違いの仕組みについては、レジデンシャルIPの構造で詳しく解説している。
なぜ人々は参加するのか
当然の疑問がある。なぜ他人のトラフィックが自分のインターネット回線を使うことを許すのか。
それは、見返りがあるからだ。よくある仕組みは、アプリケーション側が選択肢を提示するというものだ。未使用の帯域幅のごく一部を共有すれば、有料版が無料で使える、あるいは広告なしの体験、または少額の支払いが得られる。利用者は欲しかったアプリを手に入れ、使っていなかった帯域幅を差し出す。
その仕組みが正当かどうかは、それが明確に開示され、真に任意であるかどうかにすべてかかっており、これはこの市場のプロバイダーについて確認すべき最も重要な点であり、プロバイダーが倫理的にIPを調達する方法で詳しく取り上げている。真の同意なしに構築されたネットワークも存在し、それらは倫理的な問題であると同時に、実用面でも劣った製品となる。
得られるもの
アクセス。 データセンタートラフィックをブロックするサイトも、レジデンシャルIPのアドレスであれば概して受け入れる。それがまさにこの仕組みの目的である。
本物の地理的位置。 参加者は実在の場所にいる実在の家庭であるため、特定の国や都市の出口をリクエストし、本当にその地域からの視点を得ることができる。これにより、現地の価格、現地の検索結果、地域限定の在庫状況などを見ることが可能になる。
多様性によるスケール。 参加者の多いネットワークには、非常に多くの異なるアドレスが存在するため、大規模な収集作業を一箇所から集中的に行うのではなく、それらに分散させることができる。
犠牲になるもの
ここでは、熱意よりも正直さが重要になる。なぜなら、こうしたトレードオフは実際に存在し、アーキテクチャから直接生じるものだからだ。
速度と安定性。 データセンターのサーバーは、高速な専用回線上に置かれている。一方、参加者のデバイスは、他の誰かも使っている可能性のある家庭用回線上にある。もしかしたら動画をストリーミングしているかもしれない。レジデンシャルのリクエストは平均して遅く、さらに重要なことに、はるかに変動が大きい。したがって、平均値ではなくパーセンタイルで考えるべきだ。
変動する可用性。 人々がアプリを閉じたり外出したりすると、デバイスはオフラインになるため、プールはその国の夜間には厚くなり、午前4時には薄くなる。小規模な国ではこの影響がより顕著になる。だからこそ、国別の可用性は、グローバルな数値ではなく、自分が対象とする市場と時間帯に固有の問題なのである。
早期に終了しうるセッション。 複数ステップのタスクのために一つのアドレスを保持している最中に、そのデバイスがオフラインになると、タスクの途中でアドレスが変わってしまう。優れたツールはこれに対処できるが、コード側もそれを想定しておく必要がある。詳しくはスティッキーとローテーティングの比較を参照。
コスト。 参加者には報酬を支払う必要があるため、レジデンシャルの帯域幅はデータセンタートラフィックよりも大幅に高価になる。だからこそ、不自然に安いレジデンシャルの提供には疑いを持つべきだ。連鎖のどこかで誰かに報酬が支払われていないことになるからだ。
使い方への影響
初心者にとって実務上重要な点が二つある。
礼儀を持ち、それを本気で実践すること。あなたのリクエストは誰かの家庭用回線を経由するため、過度に負荷をかけるジョブは、対象サイトを苛立たせるだけでなく、実在の人物のインターネット回線の質も低下させる。ペース配分は、ブロックを避けるためだけのものではない。
コストに見合う場面で使うこと。対象がアドレスの種類を気にしないのであれば、より安価なインフラで十分だろう。その比較はレジデンシャルとデータセンターの比較にある。レジデンシャルにお金を払う価値があるのは、一般の訪問者のように見せかける必要がある場合、あるいは特定の場所から見た景色を確認する必要がある場合だ。
あなたの側からはどう見えるか
安心するほど地味だ。個々の参加者に接続したり、デバイスのリストを管理したりする必要はない。単一のゲートウェイに接続すれば、それが適切なノードへリクエストを振り分ける。これがバックコネクト方式である。セットアップに必要なのはホスト、ポート、ユーザー名、パスワードだけで、詳細は接続方法を参照。
結論
ピアツーピア型のレジデンシャルプロキシネットワークは、サーバーではなく普通の人々のデバイスから構築されている。なぜなら、実際の家庭用回線からリクエストを送る唯一の方法は、実際の家庭にそれを運んでもらうことだからだ。これにより、ウェブサイトが一般の訪問者として扱うアドレス、本物の地理的視点、そして幅広い出口の分散が得られる。その代償として、速度、安定性、時間帯によって変動する可用性、早期に終了しうるセッション、そしてより高い価格が伴う。これらはすべて欠陥ではなく、同じアーキテクチャから生じる帰結である。参加者が真に同意しているかを確認し、実在の人物の回線があなたのトラフィックを運んでいることを踏まえて礼儀を持ち、実際にコストに見合う場面で使うべきだ。
これがレジデンシャルプロキシの仕組みであり、国や都市単位のターゲティングが可能な単一のゲートウェイを通じて利用でき、GBあたりで課金される。まだ理解を深めている段階であれば、初心者向けレジデンシャルプロキシから始めるとよい。