「VPNオン+プロキシオン」と「VPNオフ+プロキシオフ」をコマンドラインで操作&キーボードショートカットで切り替える方法

2020年8月11日テレワークお役立ち,Windows関連Windows 10,VPN,Windows,テレワーク

 

最近はテレワークが活発である。大企業にはSSL-VPN(Pulse Secureなど)が導入されている場合もあるが、多くのケースでは、Windowsの通常メニューよりVPNの接続をするような形になっていると思う。
そしてVPN接続を行う場合には、大半の企業はプロキシを経由させている。一部の企業にいたっては、pacファイルやwpad.datを用いて、接続先によってプロキシ接続のオンオフを切り替えている場合もあるであろう。

今回、それぞれに関してコマンドプロンプトで操作をする方法をご紹介するとともに、最後にBATファイルを作成し、さらにそれにキーボードショートカットをアサインすることで、自在に「VPNで接続した場合には、プロキシをオンにする」「VPNをオフにした場合には、プロキシをオフにする」ようにしたい。

VPNへの接続をコマンドラインで行う

VPNへの接続

## VPN接続

上記写真のような、Windows標準の機能を用いてVPN接続をしている場合、以下のコマンドによって接続をすることが可能である。

C:\Windows\System32\rasphone.exe-d[接続先VPNの名称]

これをコマンドラインから実施すると、次のようなダイアログが表示され、パスワードを入力すれば接続することが可能だ。

接続の解除

接続の解除は、次のようなコマンドとなる。

C:\Windows\System32\rasphone.exe-h[接続先VPNの名称]

プロキシ操作をコマンドラインで行う

レジストリ格納先

プロキシの設定は、実はレジストリにすべて書き込まれている。従って、今回の場合は必要となるレジストリを操作する形となる。
レジストリは、次のような形で格納されている。

番号内容レジストリの場所値の名前入力方法
LANにプロキシサーバーを使用するHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet SettingsProxyEnableREG_DWORD0:無効 1:有効
アドレスとポートの指定HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet SettingsProxyServerREG_SZ「[アドレス]:[ポート]の形で入力
自動構成スクリプトを使用するHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet SettingsAutoConfigURLREG_SZ自動スクリプトのURLを指定

レジストリの操作方法

コマンドラインからレジストリを操作する場合、以下の形での操作が可能だ。
追加する場合には次のコマンドを利用する。

reg add "レジストリの場所" /v "値" /t 型 /d 入力内容 /f

逆に、設定した値を削除する場合は、次の通りとなる。

reg delete"レジストリの場所" /v "値" /f

従って、例えば「LANにプロキシサーバーを使用する」をオンにする場合には、次の通りとなる。

reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v "ProxyEnable" /t REG_DWORD /d "1" /f

さらに、アドレスとポートを入力する場合は次の通りだ。

reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v "ProxyServer" /t REG_SZ /d "address:port" /f

逆に、オフとする際は、次の通りだ。

reg delete"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v "ProxyEnable" /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v "ProxyServer" /f

プロキシセット+VPN接続を自動実行するスクリプトを用意する

以下のような内容を、BATファイルとして保存をする。
今回の場合、「自動構成スクリプト」をオン・オフする形とした。

VPN接続&自動構成スクリプト投入

@echo off
rem VPN接続
C:\Windows\System32\rasphone.exe -d [VPN名称]

rem 自動構成スクリプト登録
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v "AutoConfigURL" /t REG_SZ /d "自動構成スクリプトのURL" /f

exit

VPN接続解除&自動構成スクリプト解除

@echo off
rem VPN解除
C:\Windows\System32\rasphone.exe -h [VPN名称]

rem 自動構成スクリプトオフ
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v "AutoConfigURL" /f

exit

これらのファイルをBATファイルとして保存をすると、ダブルクリックでプロキシとVPNを一気に制御することが可能だ。

キーボードショートカットを作る

最後に、これらをキーボードショートカットに追加する方法を記載したい。
まず、制作したBATファイルのショートカットを作成しておこう。ショートカットを右クリックし「プロパティ」をクリックすると、「ショートカットキー」なる項目があるはずである。

この部分にお好みのショートカットキーを割り当てると、キーボードのみで制御をすることが可能だ。

VPN接続とプロキシに悩んでいる方には是非とも推奨したい。