プロが教える店舗&オフィスのセキュリティ対策術

ローカルプロキシの作り方を教えてください。
いろいろ参考になりそうなサイトを探してもなかなか見つからないので
もしだいたいのやりかたでもいいので分かる方は教えてください。
また、参考になりそうなサイトがありましたら教えてください。

ちなみに
http://www.shoeisha.com/mag/windev/library/87060 …
にあるサンプルは試してみましたがうまく使えませんでした。

A 回答 (2件)

質問者さんの知識レベルがわかりませんので失礼な記述もあるかもしれません。



作成したいのは、httpアプリケーションプロキシということでしょうか。
当然ですが、httpプロトコルには精通している必要があります。
また、Windowsのネットワークプログラミングもある程度わかる必要があるでしょう。

概念だけの説明になります。
ざっくりいうと、ブラウザで同じURLにアクセスしたときのプロキシを使用しない場合と、プロキシを使用した場合の違いを比較します。
そして、プロキシサーバは、このプロキシを使用する場合の通信をブラウザから受けて、プロキシを使用しない場合の通信と同じになるように変換することだと思います。
参考とされたURLにも文章で説明した例がありますね。

極簡単な例としては
ブラウザ上で http://www.example.tld/index.htmlとアクセスした場合、
ブラウザでプロキシを使用しない場合は、

GET /index.html HTTP/1.1

というhttpリクエストのプロトコルデータをwww.example.tldに送るように通信します。(もちろん、ヘッダなども後続しますが)

それでプロキシサーバは
ブラウザでプロキシを使用する場合は、上記の通信が以下のように変わりますので、

GET http://www.example.tld/index.html HTTP/1.1

のプロトコルデータを受け取ったら
www.example.tldをDNSで名前解決し、そのWebサーバに向けて
http://www.example.tld を取った形に変換したデータを送信し、返ってきたレスポンスデータをブラウザ側に返すようにすればいいわけです。

細かな変換ルールが記載されたものがあればいいのですが、これはそのままプログラムになってしまうので無理かもしれません。

こんな単純な話を聞いているのではない、ということならばご容赦ください。
    • good
    • 0
この回答へのお礼

返信ありがとうございます

>当然ですが、httpプロトコルには精通している必要があります。
>また、Windowsのネットワークプログラミングもある程度わかる必要があるでしょう。

精通とまでは言えませんが、基本的なことはわかっているつもりです。

とりあえずプロキシを使った場合と使わなかった場合をパケットキャプチャなどで変換ルールを調べてみます。

お礼日時:2010/09/17 17:20

こんばんは、おこまりですね。



さてご質問の件ですが、普通に squidではだめなの?
    • good
    • 0
この回答へのお礼

返信ありがとうございます。

今作ろうとしているものはヘッダーを置き換えたり、アクセスするたびにランダムなリモートプロキシを使ったりというものでして、
そこらへんのツールでは難しいんじゃないかと思います。
なので作り方を知っていましたら教えてください。

お礼日時:2010/09/17 09:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!