の 情報交換 インターネットでは、 “クライアント – サーバ” モデル。クライアントはリクエスト (必要なファイル) を送信し、サーバーは応答 (必要なファイル) を送信します。クライアントとサーバー間の緊密な連携 (完全な理解) のために、クライアントはそれ自体に関する追加情報、つまりオペレーティング システムのバージョンと名前、ブラウザーの設定 (名前とバージョンを含む) などを送信します。この情報は、どの Web ページをクライアントに提供する (開く) かをサーバーが知るために必要になる場合があります。ブラウザーの構成に応じて、Web ページにはさまざまなバリエーションがあります。ただし、Web ページが通常ブラウザに依存しない限り、この情報を Web サーバーから隠すことは理にかなっています。
ブラウザが Web サーバーに送信するもの:
– オペレーティング システムの名前とバージョン
– ブラウザの名前とバージョン
– configuration of a browser (display resolution, color depth, java / javascript support, …))
– クライアントのIPアドレス
– その他の情報
このような情報の最も重要な部分 (Web サーバーにとってはまったく不要) は、IP アドレスに関する情報です。 IP を使用すると、あなたについて次のことを知ることができます。
– あなたが生まれた国
– 都市
– プロバイダー名と電子メール
– あなたの住所
クライアントからサーバーに送信される情報は、サーバーから環境変数として利用可能 (アクセス可能) です。すべての情報単位は、何らかの変数の値です。情報単位が送信されない場合、対応する変数は空になります (値は不定になります)。
以下にいくつかの環境変数を示します。
REMOTE_ADDR クライアントの IP アドレス
HTTP_VIA が空でない場合は、プロキシが使用されます。値はプロキシ サーバーのアドレス (または複数のアドレス) です。プロキシ サーバーを使用している場合、この変数はプロキシ サーバー自体によって追加されます。
HTTP_X_FORWARDED_FOR が空でない場合は、プロキシが使用されます。値はクライアントの実際の IP アドレス (ユーザーの IP) です。プロキシ サーバーを使用している場合は、この変数もプロキシ サーバーによって追加されます。
HTTP_ACCEPT_LANGUAGE ブラウザで使用されている言語 (ページを表示する言語)
HTTP_USER_AGENT ?いわゆる “ユーザーエージェント”。すべてのブラウザにとって、これは Mozilla です。さらに、ブラウザの名前とバージョン (MSIE 5.5 など) およびオペレーティング システム (Windows 98 など) もここに記載されています。
HTTP_HOST は Web サーバー名です
This is a small part of environment variables. In fact there are much more of them (DOCUMENT_ROOT, HTTP_ACCEPT_ENCODING, HTTP_CACHE_CONTROL, HTTP_CONNECTION, SERVER_ADDR, SERVER_SOFTWARE, SERVER_PROTOCOL, …)。その量はサーバーとクライアントの両方の設定に依存します。
これらは変数値の例です。
REMOTE_ADDR = 194.85.1.1
HTTP_ACCEPT_LANGUAGE = ru
HTTP_USER_AGENT = Mozilla/4.0 (compatible; MSIE 5.0; Windows 98)
HTTP_HOST = www.webserver.ru
HTTP_VIA = 194.85.1.1 (Squid/2.4.STABLE7)
HTTP_X_FORWARDED_FOR = 194.115.5.5
匿名 インターネットでの動作はどの環境変数によって決まりますか “隠れる” からの ウェブサーバー。
プロキシ サーバーが使用されていない場合、環境変数は次のようになります。
REMOTE_ADDR = your IP
HTTP_VIA = not determined
HTTP_X_FORWARDED_FOR = not determined
環境変数の仕組みに応じて “隠した” プロキシサーバーごとに、いくつかの種類のプロキシがあります
透過的プロキシ
IP アドレスに関する情報は隠蔽されません。
REMOTE_ADDR = proxy IP
HTTP_VIA = proxy IP
HTTP_X_FORWARDED_FOR = your IP
このようなプロキシ サーバーの機能は、インターネットにおける匿名性を向上させるものではありません。その目的は、情報のキャッシュ、複数のコンピュータによるインターネットへの共同アクセスの組織化などです。
匿名プロキシ
何らかの方法でクライアントの IP アドレスを隠すすべてのプロキシ サーバーは、匿名プロキシと呼ばれます。
単純な匿名プロキシ
これらのプロキシ サーバーは、プロキシが使用されているという事実を隠しませんが、IP を独自の IP に置き換えます。
REMOTE_ADDR = proxy IP
HTTP_VIA = proxy IP
HTTP_X_FORWARDED_FOR = proxy IP
これらのプロキシは、他の匿名プロキシ サーバーの中で最も普及しています。
プロキシの歪み
単純な匿名プロキシ サーバーと同様に、これらのプロキシもプロキシ サーバーが使用されているという事実を隠しません。ただし、クライアントの IP アドレス (あなたの IP アドレス) は別の (任意のランダムな) IP に置き換えられます。
REMOTE_ADDR = proxy IP
HTTP_VIA = proxy IP
HTTP_X_FORWARDED_FOR = random IP address
High Anonymity Proxies
これら プロキシサーバー とも呼ばれます “匿名性の高いプロキシ“。他のタイプの匿名プロキシ サーバーとは対照的に、プロキシを使用しているという事実を隠します。
REMOTE_ADDR = proxy IP
HTTP_VIA = not determined
HTTP_X_FORWARDED_FOR = not determined
これは、変数の値は、1 つの非常に重要な点を除いて、プロキシが使用されない場合と同じであることを意味します。 IP アドレスの代わりにプロキシ IP が使用されます。
まとめ
目的に応じて、透明なプロキシと匿名性のプロキシがあります。ただし、プロキシ サーバーを使用すると、Web サーバーから IP のみが隠蔽され、他の情報 (ブラウザの設定に関する) にはアクセスできることに注意してください。