全4936文字
PR

ネット君 ありゃ、Webサイトにアクセスしたら、Webブラウザーに「Webページを表示できません」って表示されましたよ。

インター博士 あー、それはWebフィルタリングだな。どんなWebサイトを見ようとしていたんだね。

ネット君 そ、それはともかく、Webフィルタリングって何ですか?

 Webフィルタリングとは、特定のWebサイトへのアクセスを遮断する機能や製品、サービスのこと。Webフィルターとも呼ばれる。

 Webフィルタリングを理解するために、まずはプロキシーサーバーについて解説しよう。Webフィルタリングはプロキシーサーバーの一機能といえるからだ。

 プロキシーサーバーの「プロキシー(proxy)」とは「代理」のこと。プロキシーサーバーは文字通り、主にWebアクセスを代行するサーバーである。

 WebブラウザーなどのクライアントからHTTP要求(HTTPリクエスト)を受け取り、指定されたURLのWebサーバーにクライアントの代理としてアクセスする(図1)。そしてWebサーバーからHTTP応答(HTTPレスポンス)としてWebページなどのリソースを取得し、クライアントに送る。

図1●クライアントの代わりにWebサーバーにアクセス
図1●クライアントの代わりにWebサーバーにアクセス
プロキシーサーバーはクライアント(Webブラウザー)からHTTP要求を受け取ると、代理として指定のWebサーバーにアクセス。Webサーバーから受け取ったHTTP応答をクライアントに返す。
[画像のクリックで拡大表示]

 つまりプロキシーサーバーはクライアントからの通信を一度終端し、改めてWebサーバーにアクセスする。まさに「代理」である。クライアントはプロキシーサーバー、プロキシーサーバーはサーバーとそれぞれTCPコネクションを確立して通信する(図2)。クライアントとプロキシーサーバー間と、プロキシーサーバーとWebサーバー間は全く異なる通信になる。

図2●異なるTCPコネクションを張る
図2●異なるTCPコネクションを張る
クライアントとプロキシーサーバー、プロキシーサーバーとWebサーバーはそれぞれ異なるTCPコネクションを張る。つまり、それぞれ全く異なる通信として扱う。HTTP要求のリクエスト行などはプロキシーサーバーが適宜書き換える。
[画像のクリックで拡大表示]

 クライアントからプロキシーサーバーに送るIPパケットの宛先IPアドレスはプロキシーサーバー、送信元IPアドレスはクライアントのIPアドレスになる。一方、プロキシーサーバーからWebサーバーに送るIPパケットの宛先IPアドレスはWebサーバー、送信元IPアドレスはプロキシーサーバーのIPアドレスになる。