Buronto @ProxyPacServer
本ソフトは、ブラウザーの .pac ファイルのURL要求のみに応答する簡易サーバーです。
(*Proxy機能はありません。)
1.インストール方法
2.FireFoxのプロクシ設定
3.IE7のプロクシ設定
4.スタートアップの登録方法
5.使い方
6.Port番号を変えたい場合
7.Myproxy.pacの設定
2009/04/16
#インストール方法
適当なフォルダーに解凍してください。
*注意。Buronto.exeは、pacフォルダと同じフォルダにおく必要があります。
Buronto.exe
pac\ buronto.ini
pac\ myproxy.pac
次に、ブラウザー(FireFox、IE等)のプロクシ設定して下さい。
丸印のマークが出ればOKです。
アンインストールする際は、ダウンロードしたフォルダ毎削除して下さい。
#FireFoxのプロクシ設定
firefox3の場合。
メニュウ[ツール]→[オプション]→[詳細]→[ネットワーク]→[接続設定]
自動プロキシ設定スクリプトURLをチェックし
http://127.0.0.1:1122/myproxy.pac
と入力します。
以上です。
#IE7のプロクシ設定
メニュウ[ツール]→[インターネットオプション]→[接続]→[LANの設定]
自動構成スクリプトを使用するにチェックし
http://127.0.0.1:1122/myproxy.pac
と入力します。
以上です。
#スタートアップの登録方法
「スタートアップ」にアプリケーションを登録しておくと、Windowsを起動したときに そのアプリケーションも起動することができます。
面倒ですが、手動でお願いします・・。。
[WindowsXPの登録方法]
C:\Documents and Settings\「ユーザ名」\スタート メニュー\プログラム\スタートアップ
のフォルダに、ショートカットを作成して下さい。
[Windows Vistaの登録方法]
スタート→プログラムの中のスタートアップを右クリック→開くを選択して、
起動させたいプログラムのショートカットを入れて下さい。
#使い方
通知アイコン上で右クリックするとメニュウが表示されます。
ヘルプ・・説明アプリが起動。
PACサーバ停止・・ブラウザーからmyproxy.pacの要求があっても応答しません。
終了・・Buronto.exeを終了します。
#Port番号を変えたい場合
デフォルトでは、1122としていますが。port番号を変更したい場合は
"pac/buronto.ini"のport番号の値を変更してください。
仮にport=2009と変更したい場合。
#-------------------------------------
# ローカルでburonto.exeサーバが
# 使用するport番号を記入して下さい。
#-------------------------------------
port=2009
とします。
port番号を変更した場合は、Burontoを再起動し、
http://127.0.0.1:2009/myproxy
と入力し、"myproxy.pac"の中身がみえるか確認してください。
表示されればOKです。
#myproxy.pacの設定
myproxy.pacの、詳細設定を知りたい方は以下のページを見て下さい。
http://www.microsoft.com/windows/windows2000/ja/server/help/corpexjs.htm
例 1 - ローカル ホストは直接接続し、それ以外はプロキシ サーバーを経由して接続する
次の関数は、ホスト名がローカル ホストかどうかをまず調べます。ローカル ホストの場合は、次に直接接続であるかどうかをチェックします。ホスト名がローカル ホストでない場合は、
プロキシ サーバー (proxy) を経由して接続します。
function FindProxyForURL(url, host)
{
if (isPlainHostName(host))
return "DIRECT";
else
return "PROXY proxy:80";
}
例 2 - ファイヤウォールの内側にあるホストは直接接続し、外側にあるローカル サーバーはプロキシを経由して接続する
次の関数は、ホストが "plain" (ホスト名にドメイン名が含まれていない) かどうか、 またホスト名が "www" および "home" 以外で特定のドメイン (.company.com) の一部になっているかどうかを調べます。
function FindProxyForURL(url, host)
{
if ((isPlainHostName(host) ||
dnsDomainIs(host, ".company.com")) &&
!localHostOrDomainIs(host, "www.company.com") &&
!localHostOrDoaminIs(host, "home.company.com"))
return "DIRECT";
else
return "PROXY proxy:80";
}
例 3 - ホスト名の名前解決が可能な場合は直接接続し、不可能な場合はプロキシ サーバーを経由して接続する
次の関数は、DNS サーバーにホスト名を渡し、名前の解決を要求します。名前を解決できる場合は、直接接続を確立します。解決できない場合は、プロキシサーバーを経由して接続します。 この方法は、内部の DNS サーバーを使用して内部のすべてのホスト名を解決する場合に便利です。
function FindProxyForURL(url, host)
{
if (isResolvable(host))
return "DIRECT";
else
return "PROXY proxy:80";
}
例 4 - 指定したサブネットの中にホストがある場合は直接接続し、それ以外の場合はプロキシ サーバーを経由して接続する
次の関数は、指定された IP アドレスを、パターンおよびマスクを使用して、
ホスト名と比較します。この方法を使用すると、サブネット内の特定のホストは
直接接続し、それ以外の場合はプロキシ サーバーを経由して接続することができます。
function FindProxyForURL(url, host)
{
if (isInNet(host, "999.99.9.9", "255.0.255.0"))
return "DIRECT";
else
return "PROXY proxy:80";
}
例 5 - ホストのドメインに基づいて接続のタイプを決定する
次の関数は、ホストがローカルな場合、直接接続します。
それ以外の場合は、ホストのドメインに応じて使用する
プロキシ サーバーを選択します。この方法は、
ホストのドメイン名によってプロキシ サーバーを選択する場合に便利です。
function FindProxyForURL(url, host)
{
if (isPlainHostName(host))
return "DIRECT";
else if (shExpMatch(host, "*.com"))
return "PROXY comproxy:80";
else if (shExpMatch(host, "*.edu"))
return "PROXY eduproxy:80";
else
return "PROXY proxy";
}
例 6 - 使用するプロトコルに基づいて接続のタイプを選択する
次の関数は、使用しているプロトコルのタイプを取得し、それに従って
プロキシ サーバーを選択します。
一致するプロトコルがない場合は、直接接続します。この方法は、使用しているプロトコルに応じてプロキシ サーバーを選択する場合に便利です。
function FindProxyForURL(url, host)
{
if (url.substring(0, 5) == "http:") {
return "PROXY proxy:80";
}
else if (url.substring(0, 4) == "ftp:") {
return "PROXY fproxy:80";
}
else if (url.substring(0, 7) == "gopher:") {
return "PROXY gproxy";
}
else if (url.substring(0, 6) == "https:") {
return "PROXY secproxy:8080";
}
else {
return "DIRECT";
}
}
例 7 - ホスト名が IP アドレスと一致するかどうかを調べ、プロキシの設定値を決定する
次の関数は、ホスト名を IP アドレスに変換した後、指定された文字列と比較し、
プロキシ サーバーを選択します。
function FindProxyForURL(url, host)
{
if (dnsResolve(host) == "999.99.99.999") { // = http://secproxy
return "PROXY secproxy:8080";
}
else {
return "PROXY proxy:80";
}
}
例 8 - 指定した IP アドレスとホストの IP アドレスが一致する場合はプロキシ サーバーを経由して接続し、一致しない場合は直接接続する
次の関数でも、IP アドレスに応じてプロキシ サーバーを選択します。ただし、例 7 とは異なり、 関数呼び出しにより IP アドレスを数値として明示的に取得します。例 7 では、dnsResolve() 関数を
使用して、ホスト名を IP アドレス (数値) に変換しています。
function FindProxyForURL(url, host)
{
if (myIpAddress() == "999.99.999.99") {
return "PROXY proxy:80";
}
else {
return "DIRECT";
}
}