Proxyサーバーの設定周りの色々
PACスクリプトで設定された色々
実際に使っているproxyサーバーを確認したい
Proxy設定用にPACスクリプトを指定している場合、接続先に応じてどのproxyを使っているかわからない。
特定のアクセス先(googleを例にする)に使っているproxyサーバーを調べるにはpowershellで以下のコマンドを実行する
$proxy = [System.Net.WebRequest]::GetSystemWebProxy()
$uri = [Uri]"https://www.google.com/"
$use = $proxy.GetProxy($uri)
if ($proxy.IsBypassed($uri)) {
Write-Output "DIRECT (プロキシ未使用)"
} else {
Write-Output "PROXY: $($use.AbsoluteUri)"
}
返り値で、PROXY: http://proxy.example.jp:8080
のように使われたproxyサーバーがわかる。
proxyサーバーの設定をしたい
WinINET、WinHTTPに依存したアプリケーション以外はPCAスクリプトの内容は一般に効かないので、powershellでproxy設定をして、コマンドラインでアプリケーションを起動することで、proxyサーバーを反映させることができる。
proxyサーバー設定用のコマンドは以下の通り。
$Env:HTTPS_PROXY = "http://proxy.example.jp:8080"
設定が反映されたかどうか知りたい場合は
echo $Env:HTTPS_PROXY
このproxy設定を活かしてアプリケーションを立ち上げたい場合は
Start-Process "C:\Path\To\App.exe"
で立ち上げられる。