自動プロキシ設定スクリプト

Internet ExplorerFirefoxのプロキシ設定には「自動プロキシ設定スクリプト」を指定する欄がある。どんなスクリプトなんだろうなー、とは思っていながらも調べた事はなかったのだけど、調べてみるとこれって実はちょっと便利かもしれない。

詳しい書式は

Ash multimedia lab. - プロキシの自動設定方法
http://ash.jp/freebsd/proxy_auto.htm

に詳しい。要はただのJavaScriptで、ウェブサイトにアクセスをするたびに設定スクリプト内で定義した関数が呼び出され、渡されたURLや相手ホスト名などの情報からどのプロキシを使用すべきか指示をすることができるということみたい。


以下ECCSにアカウントを持つ人向けのローカルネタ。


次のような構成スクリプトを書いてみた。リストされているサイトに繋ぐときは、SSHのポートフォワーディングで 127.0.0.1:3128 -> wp101.ecc.u-tokyo.ac.jp:3128 というトンネルを作っておく。

いやぁ、PKUってなぜかwp101から繋ぐとめがっさ速いんだよね。かの国の万里の長城IPアドレスごとにフィルタリングの強さを変えてるのかな。

function FindProxyForURL(url, host) {
    var proxyDomains = ["acm.pku.edu.cn",
                        "www.ets.t-adm.t.u-tokyo.ac.jp",
                        ];
    for(var i in proxyDomains) {
        if (dnsDomainIs(host, proxyDomains[i]))
            return "PROXY 127.0.0.1:3128";
    }
    return "DIRECT";
}