スポンサー広告---------
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
net-2013-09-11
ローカルIPアドレスでProxyサーバー




require 'webrick'
require 'webrick/httpproxy'
require 'uri'

handler = Proc.new() {|req,res|
if req.host == 'slashdot.jp' and res['content-type'] =~ /text\/html/
res.body.gsub!(/.*?/m, '')
end
}

# プロキシサーバオブジェクトを作る
s = WEBrick::HTTPProxyServer.new(
# バインドアドレス(デフォルト:nil)
# :BindAddress => '127.0.0.1',
:BindAddress => '192.168.2.101',
# ポート番号(デフォルト:80)
:Port => 80,
# ログ(デフォルト:nil)
:Logger => WEBrick::Log::new($stderr, WEBrick::Log::DEBUG),
# proxy が通ってきたことを header で報せるか(デフォルト:true)
:ProxyVia => false,
# 親プロキシ(デフォルト:nil)
# :BindAddress => '192.168.2.101',
# :ProxyURI => URI.parse('http://localhost:3128/'),
# ハンドラ
:ProxyContentHandler => handler
)

# 後処理の為に SIGINT を捕捉する。
Signal.trap('INT') do
# 捕捉した場合、シャットダウンする。
s.shutdown
end

# サーバを起動する。
s.start





るびまのサンプル適当に手直しで繋がった

これで・・・
ブロードバンドルータ → ノートPC → ルータ → MyPC

っていうリレー式のネット接続が完了したったw
VNCよりもこっちの方が格段に軽い
メッセンジャーもプロキシー経由でつながった

無線用のデバイスあれば、ノートじゃなくて使ってないデスクトップPCをプロキシーにした方が良いんだけどな
買ったのどっかいったわ^^^^^
ヤバい超楽しいこれ

セキュリティ的にも高いんじゃね
インターネットとの窓口がプロキシー経由するしかないから
よくわからないソフトのアップデートやデータ通信なども無効化されてる
凄く良い感じに思えてきた
ネットは繋がってもpingは通らないので><。。

C:\Users\西行寺幽々子様>ping google.co.jp
ping 要求ではホスト google.co.jp が見つかりませんでした。ホスト名を確認してもう一度実行し
てください。







---------------


ていうかさっき、Webサーバーとプロキシーサーバー同時に立ててたら
http://google.co.jp/ へのアクセスで自分の http://127.0.0.1:80/ がブラウザに映ってるみたいな状況になった 
torのhidden serviceのリダイレクトの仕組みがわかったかもしれない


これって複数ブロードバンドの使い分けも出来るよね
PC1  192.168.2.103:80  → YahooBBグローバルIP
PC2  192.168.2.104:80  → OCNグローバルIP

PC3  192.168.2.2  MyPC  ↑のPC1 PC2 のプロキシーを使い分ける
これやったら、回線ごとに別々のことを単一PCでやれる
まぁLANデバイスを追加して、PC1,PC2なくても出来る方法もあるのかもしれないけど
とりあえず単一PCで複数回線のやり方の一つを知る事が出来たかも

他の使い方だと、ルータ以下に100ホストくらいある場合、
PC1,2 みたいに出口を複数用意して、分散しておくと
回線やたら重くならない・・・とか、
デフォルトゲートウェイを擬似的に二つとか三つとかできるじゃん、多分できるよ
楽しいなにこれ
そろっと 絵描こうよ
   0..
Name
comment

hibana
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。