中間を介すもの
インターネットのさまざまなネットワークを介してナビゲートするときに使用される中間プログラムまたはコンピューター
です。それらは World Wide Web 上のコンテンツへのアクセスを容易にします。プロキシーはリクエストに介入し、レスポンスを返します
。(例えば、キャッシュの場合)リクエストを転送することができ、それを変更することができます(例えば、2 つのネットワーク間の境界でヘッダーを変更する)。
プロキシはどこでも置ける
プロキシーは、ユーザーのローカルコンピューター上、またはユーザーのコンピューターとインターネット上の宛先サーバーの間のどこにでも置くことができます。 一般に、プロキシーサーバーには 2 つの主要な種類があります。
プロキシサーバの種類
転送プロキシーは、インターネット上の任意の場所間のリクエスト
を処理します。
リバースプロキシーは、インターネットからの要求を内部ネットワークのサーバーに転送
します。
viaヘッダー
一般ヘッダーの Via は、フォワードプロキシーとリバースプロキシーの両方のプロキシーによって追加
され、リクエストヘッダーとレスポンスヘッダーに表示されます。 メッセージ転送の追跡、要求ループの回避、および要求/応答チェーンに沿った送信者のプロトコル機能の識別に使用
されます。
見てみた
curl -I https://developer.mozilla.org/ja/docs/Web/HTTP/Reference/Headers/Via
...
via: 1.1 google
...
いろんな目的
高速なアクセス
同一プロバイダの管轄内のような独立のネットワークの内部から、外部のウェブサーバにアクセスしデータを受け取る場合、一度目のアクセスでウェブサーバの返してきたデータをネットワークの出入り口に設置したプロキシに一時的に保存
しておき(このプロキシ内のデータはキャッシュと呼ばれる)、次回からのアクセスはウェブサーバではなく、このプロキシサーバからキャッシュされたデータを受け取るようにすれば、データの取得を高速化できる。
...
2000年頃からの、ウェブページ(ウェブサイト)数の爆発的な増加や、いわゆるブロードバンドインターネット接続の普及などによって、プロキシは長所よりも短所の方が目立つようになり、単なるウェブサイトへのアクセスの高速化を目的としたプロキシサーバは廃止したプロバイダが多い。ただし、後述のリバースプロキシの場合、負荷の大きいサーバに対してはむしろ増えている
。
リバースプロキシ
→詳細は「リバースプロキシ」を参照
外部ネットワークからの接続要求を中継して内部に接続
するものをリバースプロキシと呼び、主に負荷分散等の目的
で用いられる。
DNSラウンドロビンにも使用される
1台の本サーバに対して複数のリバースプロキシ(ミラーサーバ)と、それに「1つのホスト名に複数のIPアドレスを割り振る」との役割を持つDNSラウンドロビンによって成り立つ
形式が多い。その場合は、リバースプロキシを備えたホストに、クライアントからリクエスト(アクセス)が有るとDNSラウンドロビンにより、ランダムで各リバースプロキシの一つに辿り着き、リバースプロキシ自身に格納されたキャッシュ情報をクライアントへと返信する。リバースプロキシは、一定時間ごとに本サーバを参照して、キャッシュを更新する。
複数のリバースプロキシで多くのリクエストに対応できる
すなわち、大量のアクセスが本サーバの代わりに複数あるリバースプロキシのどれかに届くことで処理が分散され、1台のサーバだとダウンするような大量のアクセスにも耐えられる。
DNSラウンドロビンにも欠点はある
しかし、そのDNSラウンドロビンによる方法にも欠点が幾つかあり(「機体の物理的な性能上限により、Soft面での限界も有る」など)、それを補うためにクラスター方式(PCを連結する方式)を採用する観点も有る。
安全な通信
中間で通信内容を監視できる
外部ネットワーク(主にインターネット)からのアクセスは、全てプロキシを経由して各使用者のパソコンなどのクライアントに届くようにする
。プロキシが通信内容をチェック
することで、クライアントが外部ネットワークに直接晒されなくなり
、不正アクセスや侵入行為が困難になる。 プロキシサーバにアンチウイルスソフトウェアをインストールすることで、通信内容にウイルスが含まれていないかチェックすることもできる[1]。 ウイルスが内部に侵入して通信量が平時より増大していないか、使用しないサービスのポートを使用していないか、ログを定期的に監視することで安全性を高めることもできる。
TLS/SSLによる通信も、プロキシサーバを介して行う際は、暗号化した内容を一度復号して内容をチェックすることもできる。チェックしない場合はプロキシサーバをトンネリングする。
有害なサイトの遮断
いわゆるフィルタリング(コンテンツフィルタリング)
のためのプロキシ。
特定のサイトへのアクセスを遮断できる
プロキシを挟んで、クライアントと外部とのやりとりを全てチェックする。その際、例えばアダルトサイトやフィッシングサイト、出会い系サイト、暴力的や違法な内容のサイトなどの有害なサイトへのアクセスを遮断するように、プロキシのプログラムに設定しておけば、クライアントが有害なサイトを見ることができなくなる。
個人で遮断するサイトを登録しなければならない
ただしこれは、管理側の人間が逐一サイトを拒否リストに登録する必要があるため、登録されていないサイトはたとえ有害であっても閲覧出来てしまう。逆に違法でないサイトであったとしても、何らかの理由から登録されていると見られなくなる弊害もある。現在のところ、アダルトサイトや違法サイトは日々新しいものが生まれているため、全てを遮断するのは非常に難しい。
携帯電話がインターネットに接続する際は必ず携帯電話会社の持つプロキシサーバをデータが通るため、携帯電話会社では、親が未成年者に携帯電話を持たせる場合、なるべくフィルタリング機能を使うよう呼びかけている。
翻訳・変換
サイト丸ごと翻訳をする
Yahoo翻訳やGoogle翻訳など、「サイトごと翻訳する」という翻訳サイトもプロキシの1つである。これらのサーバの中には日英翻訳や日韓翻訳などのプログラムが組まれており、自動的に翻訳して結果をウェブブラウザ上に表示させる。
また漢字にふりがなをつけて表示させたり、標準語を関西弁などの方言に変換、あるいは独特な言葉に変換するなどの特徴的なプロキシサーバも存在する(方言変換Proxyサーバなど)。
インターネットが普及し始めた1990年代には、各種文字コードを特定のコードに変換する公開プロキシもあった。これらは1990年代後半には、クライアント側の多言語対応が進んで役目を終えた。
経路障害の回避
プロキシが接続元・接続先とは違う場所にあれば、そのプロキシを使うことによって経路が変わるので、場合によっては経路障害を回避
できることもある。
検閲回避
中国など当局によるネット検閲が行われている場合に、それを回避するため利用されることがある。