かきかたえんぴつ

いつかどこかで何かの役にたつかもしれないメモ

職場にいるときだけプロキシを有効にする

プロキシ設定スクリプトを設定して、職場にいるときだけプロキシを有効にする。Windows 10 バージョン。

職場では 123.456.* から始まる IP が割り当てられるものとし、職場のドメインhogehoge.com、プロキシサーバは proxy.hogehoge.com:8080 とする。

(1) ウェブサーバの設定

コントロールパネル → プログラムと機能 → Windows の機能の有効化または無効化 → インターネット インフォメーション サービス

から「Web 管理ツール」と「World Wide Web サービス」を有効に

<再起動>

(2) MIME の種類の追加

スタートボタン → すべてのプログラム → Windows 管理ツール → インターネット インフォメーション サービス(IIS)マネージャー → MIME の種類 → 追加

から以下のように項目を追加。

拡張子:.pac

MIME の種類: application/x-ns-proxy-autoconfig

<サーバーを再起動>

(3) プロキシ設定スクリプトの作成

以下の内容をテキストエディタに貼り付けてファイル名 proxy.pac に保存。

proxy.pacC:\inetpub\wwwroot にコピーする(要管理者権限)。

補足: PC に IP アドレス 123.456.* が割り当てられているときにプロキシを有効にする(PROXY)。それ以外はプロキシを使わずにアクセス(DIRECT)。

function FindProxyForURL(url, host) {

    function isLocal(host){
        return host == "127.0.0.1"
            || host == "localhost"
            || shExpMatch(host, "localhost.*");
    }
    function isShonai(host){
        return shExpMatch(host, "*.hogehoge.com")
            || shExpMatch(host, "123.456.*");
    }

    myip = myIpAddress();
    host = host.toLowerCase();

    if (isLocal(host)){
        return "DIRECT";
    }
    if (shExpMatch(myip, "123.456.*")) {
        if (isShonai(host)){
            return "DIRECT";
        }
        else {
            return "PROXY proxy.hogehoge.com:8080";
        }
    }

    return "DIRECT";
}
(4) アクセスできるかチェック

ブラウザから http://localhost/proxy.pac にアクセスできるか確認。

(5) プロキシの設定

設定 → ネットワークとインターネット → プロキシ から「スクリプトのアドレス」に http://localhost/proxy.pac を入力して保存。

おしまい。