IP情報改変型プロキシ
IP情報改変型プロキシは、HTTPリクエストヘッダーに偽のクライアントIPアドレスを入れます。そのフィールドでは本当のアドレスを隠しますが、リクエストにはプロキシ利用の痕跡が残ることがあります。1つのフィールドを置き換えただけでは、リクエストの他の部分にも本当のアドレスがないとは証明できません。「Distorting」は、このクライアント情報の差し替えを指します。
この用語は、従来のプロキシの匿名性レベルの分類に由来します。現在の商用プロキシには、Elite / High Anonymityに相当する高匿名型の動作が期待されます。クライアントの元のIPを転送せず、プロキシ利用を示すヘッダーも追加しない動作です。IP情報改変型という分類は、主に古い説明や公開プロキシ一覧のラベルを理解する際に役立ちます。
リクエストの何が変わるか
あなたのパブリックIPが198.51.100.24で、プロキシが203.0.113.80からサイトに接続するとします。暗号化されていないHTTPリクエストでは、ヘッダーに3つ目のアドレスを入れます。X-Forwarded-For: 192.0.2.55です。
この3つ目のアドレスは、プロキシが挿入した偽の値です。本当のIPでも、サイトへの接続に使うアドレスでもありません。
他のヘッダーから、リクエストに中継者が関わったと分かる場合もあります。例えばViaヘッダーは、プロキシの関与を記録します。クライアントIPを置き換えても、この情報は消えません。
サイトに実際に見えるもの
接続元は引き続き203.0.113.80です。ヘッダーに別のアドレスを入れても、プロキシが別の国に移ったり、そのIPのネットワークや評判が変わったりはしません。リクエスト間で偽の値を変えることは、実際のIPローテーションではありません。接続元アドレスは同じままです。
IP確認ツールは、接続元アドレスを表示する場合も、ヘッダーから取得した値を表示する場合もあります。そのため、同じプロキシで異なる結果が出ることがあります。テストページに偽のアドレスが表示されても、すべてのサイトがそれをあなたのIPと見なすわけではありません。
どのヘッダーを使い、誰の値を信頼するかは、各サイトが決めます。サーバーは、自身のリバースプロキシからのクライアントIP情報だけを受け付けることもあります。そのサイトの閲覧に使うプロキシが、自動的に信頼される情報源になるわけではありません。
HTTPSにも当てはまるか
この例には、プロキシがHTTPリクエストを読み取り、変更できることが必要です。CONNECTで確立する通常のHTTPSトンネルでは、リクエストとヘッダーはエンドツーエンドのTLS接続内を通ります。暗号化通信を中継するだけのプロキシは、ヘッダーに偽のIPを挿入できません。そのため、平文HTTPでIP情報改変型と判定されても、同じプロキシのHTTPSでの動作を自動的に説明するものではありません。
