IEを始め、多くのブラウザはプロキシを自動設定するスクリプトに対応してます。
(ActiveDirectoryのグループポリシーを使えば、IEのプロキシは一元設定できますが、ADがない環境やIE以外のブラウザでプロキシを一元設定したいときにはこのスクリプトが有効かと思われます)
このスクリプトはJavaScriptとなっているようで、FindProxyForURL 関数を実装することで動きを指定できるようです。
今回は特定のドメインアクセス時のみプロキシを使わない設定にするというものだったので、以下のように書きました。
function FindProxyForURL(url, host){
//条件にある文字列を含むURLアクセス時はプロキシ使わずダイレクトにアクセスする
if ( url.indexOf("hogedomain.com") >= 0 ||
url.indexOf("piyodomain.org") >= 0 ||
url.indexOf("192.168.") >= 0
)
{
return "DIRECT";
}
else {
//プロキシサーバのアドレスを指定
return "PROXY 192.168.0.2:8080";
}
}
このファイルを社内のWEBサーバや共有フォルダに配置します。(ローカル上でもOKです)
次に、IEの[インターネットオプション]→[接続]タブ→[LANの設定]で、[自動構成スクリプトを使用する]にチェックを入れ、アドレス欄に上記のファイルを保存したアドレスを入力します。
WEBサーバ上に配置した場合は、http://hoge/proxy.pac というようにURLで指定します。
Windows共有フォルダ上やローカルに置いた場合は file://c:\proxy.pac というように file プロトコルで記述します。
ただ、return "DIRECT" で指定したところにアクセスするとIEのダメな仕様ですべてイントラネットゾーンになってしまいます。
これを防ぐには、インターネットオプションの[セキュリティ]タブ→[ローカルイントラネット]→[サイト]で、[プロキシサーバを使用しないサイトをすべて含める]のチェックをオフにします。
このあたりの話は、@IT:検証 IEの自動Proxy設定とセキュリティ・ゾーンで解説されています。
参考:
@IT:WebブラウザのProxy設定を行うための4つの方法 - WPADのススメ -