
企業などでは、通信の高速化やセキュリティ強化を目的として、社内ネットワークとインターネットなどの外部ネットワークとの境界にプロキシサーバー(代理サーバー)を設置して、社内のデバイスが直接インターネットなどへ接続するのを制限することがあります。
Windowsでのプロキシ設定は、ドメイン環境を構築している企業ではグループポリシーで設定することが多いですが、ドメイン環境がない場合は、手動で設定しなければならないこともあります。
そこでここでは、Windows 11で手動(設定画面からやコマンド操作)でプロキシサーバーを設定する方法を解説します。
目次
Windowsの設定からプロキシ設定
ユーザーごとの設定
一昔前のWindowsまでは「インターネットのプロパティ(inetcpl.cpl)」からプロキシ設定するのが一般的でしたが、現在のWindows 11(バージョン25H2)では、Windowsの「設定」>「ネットワークとインターネット」>「プロキシ」からも設定できます。
Windowsの「設定」から設定したプロキシ設定は、現在サインインしているユーザーに対してのみ適用されます。


セットアップスクリプトの設定画面

プロキシサーバーの手動設定画面
設定項目は次のとおりです。
- 設定を自動的に検出する - 企業などで、プロキシ設定をWPADプロトコルを使って自動化している場合は「設定を自動的に検出する」を有効化します。(通常は、デフォルトで有効化されています。)
セットアップスクリプトを使う - プロキシ設定を自動構成スクリプトを使って設定する場合は、自動構成スクリプトの場所を指定します。プロキシサーバーを使用する企業ではこの方法を採用しているケースも多いです。
プロキシサーバーを使う - プロキシサーバーを手動で設定するときは、上の「設定を自動的に検出する」と「セットアップスクリプトを使う」をオフにしてから、プロキシサーバーアドレスやポート、例外を設定します。
コンピューター全体の設定
1台のコンピューターに複数のユーザーアカウントが登録されているようなケースでは、ユーザーごとにプロキシ設定するよりもコンピューター全体に対して設定するのが効率的な場合があります。
コンピューター全体に対してプロキシを設定するときの手順は、次のとおりです。(なお、この方法は、Windows 11 Pro以上dのみ可能で、Windows 11 Homeでは後述のレジストリでの設定が必要です。)
まず、スタートボンタン右の検索ボックスなどに「gpedit.msc」と入力し、ローカルグループポリシーエディタを起動し「コンピュータの構成」>「管理用テンプレート」>「Windowsコンポーネント」>「Internet Explorer」>「コンピュータ別にプロキシを設定する(ユーザ別ではなく)」を有効にします。

つぎに、スタートボンタン右の検索ボックスなどに「inetcpl.cpl」と入力し、インターネットのプロパティを管理者として起動して「接続」タブの「LANの設定」からプロキシを設定します。

コマンド操作でプロキシ設定
コマンド操作でプロキシ設定を行うときは、ターミナル(PowerShellまたはコマンドプロンプト)を起動して、設定項目ごとに対応したレジストリを設定します。
ユーザーごとの設定
設定を自動的に検出する
設定を自動的に検出するを有効化するときは、以下のようにコマンドを実行します。
> reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v AutoDetect /d 1 /t REG_DWORD /f設定を自動的に検出するを無効化するときは、以下のようにコマンドを実行します。
> reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v AutoDetect /fセットアップスクリプト(自動構成スクリプト)を使う
セットアップスクリプト(自動構成スクリプト)を使うときは、以下のようにコマンドを実行して、自動構成スクリプトの場所を指定します。
> reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v AutoConfigURL /t REG_SZ /d "http://example.local/proxy.pac" /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 "192.168.1.1:8080" /f例外の指定:
> reg add "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyOverride /t REG_SZ /d "192.168.*;*.test.local;<local>" /f例外の設定で複数のアドレスを入力するときは「;(セミコロン)」で区切って入力し、ワイルドカードも使用できます。また<local>を指定すれば、設定画面で「ローカルアドレスにはプロキシサーバーを使用しない」にチェックを入れるとの同じ効果があります。
コンピューター全体の設定
コマンド操作でプロキシ設定をコンピューター全体に適用するときは、まず管理者としてターミナル(PowerShellまたはコマンドプロンプト)を起動して、以下のコマンドを実行します。
> reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxySettingsPerUser /t REG_DWORD /d 0 /f上のコマンドを実行することで、プロキシ設定がユーザーごとの設定からコンピューター全体への設定に変更されます。
あとは、以下のコマンドでプロキシを設定します。
> reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f> reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /t REG_SZ /d "192.168.1.1:8080" /f> reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyOverride /t REG_SZ /d "192.168.*;*.test.local;<local>" /fWinHTTPのプロキシ設定
WinHTTP(Windows HTTP Services)は、プログラムからHTTP通信を行うための機能で、Windows UpdateなどのサービスはWinHTTPを経由して通信を行っており、プロキシサーバー経由でWindows Updateを実行したいときには、WinHTTPに対してプロキシ設定が必要になります。
WinHTTPに対してプロキシを設定する際は、管理者としてコマンドプロンプトを起動してnetshコマンド使って設定します。
netshコマンドによるWinHTTPプロキシ設定は、コンピューター全体に適用されます。
> netsh winhttp set proxy proxy-server="http://example.local:8080" bypass-list="192.168.*;*.test.local;<local>"Windowsの設定画面から設定したプロキシ設定をWinHTTPのプロキシ設定にインポートする場合は、以下のようにコマンドを実行します。
> netsh winhttp import proxy source=ie設定したWinHTTPのプロキシ設定を確認するときは、以下のコマンドを実行します。
> netsh winhttp show proxy設定したWinHTTPのプロキシ設定を初期化(リセット)するときは、以下のコマンドを実行します。
> netsh winhttp reset proxyあとがき
ある程度の規模の組織では、組織内のWindowsパソコンをインターネットに接続させる際にプロキシサーバーを経由させることがよくあり、そのようなときは上に紹介したコマンド操作での設定方法が役立つときもあるでしょう。