このWindows VPN入門ガイドは、初めてクライアントを設定する方を対象としています。必要なのは「ダウンロードして接続をクリック」するだけではありません。クライアントがサブスクリプションのプロトコルに対応していること、サブスクリプションURLを正しく追加すること、システムプロキシまたはTUNモードを用途に合わせることが重要です。接続後は、出口IPアドレス、DNS解決、分割ルーティングの結果も確認しましょう。以下では実際の操作順に沿って各手順と、よくあるトラブルの切り分け方法を説明します。
まず理解したい、Windows上の「VPNクライアント」の役割
Windowsでは、あらゆるネットワークプロキシソフトをVPNと呼ぶことがありますが、システム上の動作は同じではありません。従来型のシステムVPNは通常、仮想ネットワークインターフェースを作成し、OSがルーティングを担います。一方、Shadowsocks、VMess、Trojan、VLESSなどのサブスクリプションクライアントは、システムプロキシだけを設定する場合もあれば、TUN仮想インターフェースでより多くの通信を処理する場合もあります。どちらも一部アプリの通信経路を変更できますが、対象範囲、DNSの扱い、必要な権限が異なります。
システムプロキシモードは、Windowsのプロキシ設定に従うアプリに主に影響します。多くのブラウザや一部のデスクトップソフトが該当します。ゲーム、コマンドラインプログラム、ストアアプリ、独自にネットワーク接続を確立するソフトはシステムプロキシを無視し、ローカルネットワークを使い続けることがあります。設定が簡単で、問題が起きても停止しやすいため、初回接続の確認に適しています。
TUNモードは仮想ネットワークインターフェースを通じて、より多くの種類の接続を処理します。システムプロキシ設定を読み取らないプログラムも対象にできることがあります。利用時には管理者権限が必要な場合があり、セキュリティソフト、企業向け接続プログラム、既存の仮想ネットワークアダプターと競合しやすくなります。初心者は最初からTUNを有効にする必要はありません。通常のプロキシが使えることを確認してから、対象アプリが処理対象になるかを見て切り替えましょう。
分割ルーティングモードでは、どのリクエストを国際回線に送り、どれをローカルへ直接接続するかを決めます。ルールはドメイン、アドレス範囲、アプリのプロセス、ルールセットなどで判定されます。適切に分割すれば、ローカルサイトの不要な迂回を避け、サブスクリプション回線の無駄な使用も減らせます。グローバルモードはルール漏れの確認には便利ですが、本来国際回線を必要としないリクエストまで転送するため、回線品質を判断する唯一の方法には向きません。
クライアントを入手する前に、対応プロトコルを確認
サブスクリプションURLは単独で動作するプログラムではありません。ノード名、サーバーパラメータ、ポート、伝送方式、認証情報をクライアントへ提供する設定情報です。クライアントがサブスクリプション形式を認識し、対応するネットワークコアでプロトコルを実装している必要があります。追加後に一覧が空になる、ノードが未対応と表示されるといった場合、回線自体ではなく、クライアントのバージョン、サブスクリプション形式、プロトコル対応範囲が合っていない可能性があります。
| プロトコル | 主な特徴 | Windowsで確認するポイント |
|---|---|---|
| Shadowsocks | プロキシモデルを採用し、設定構成は比較的シンプル | 暗号化方式がクライアントのコアに対応しているか確認 |
| VMess | ユーザー識別子と伝送パラメータを含む | システム時刻のずれが認証に影響する場合があり、伝送層のパラメータをすべて設定する必要がある |
| VLESS | 認証層は比較的軽く、TLSなどの伝送設定と組み合わせることが多い | セキュリティ層、サーバー名、伝送方式を一致させる必要がある |
| Trojan | 通常はTLS接続上に構築される | 証明書の検証、サーバー名、本体の時刻が接続に影響する |
| Hysteria2 | UDPとQUICを基盤とし、変動やパケットロスのある環境向けに伝送を最適化 | 利用中のネットワークがUDPを制限していると、ハンドシェイクできない、または不安定になる場合がある |
| TUIC | 同じくQUICベースの伝送方式を利用 | 新しい互換コアが必要になることがあり、ローカルネットワークでUDPが許可されているか確認する |
クライアントを入手する際は、サービスパネルのダウンロード入口またはプロジェクト公式の配布元を優先してください。検索結果から、名前が似ているインストーラーを無作為にダウンロードするのは避けましょう。インストール前に、ファイルの配布元、署名情報、更新内容を確認できます。ポータブル版は通常、解凍して実行します。インストール版はプログラムフォルダーやショートカットを作成しますが、プロトコル対応の違いはインストールの有無ではなく、内蔵コアによって決まります。
クライアントごとに画面は異なりますが、主要モジュールは概ね共通しています。サブスクリプション管理、ノード一覧、プロキシモード、システムプロキシの切り替え、ログ画面、接続テストなどです。パネルに複数のWindowsクライアントがある場合は、画面の見た目ではなく、サブスクリプションに含まれるプロトコルに対応したものを選びましょう。企業PCでドライバーのインストールが制限されている場合は、まずTUNを使わないシステムプロキシ方式を試し、許可される設定範囲を端末管理者に確認してください。
サブスクリプションURLを追加して初回接続を完了する
サブスクリプションURLは回線設定へアクセスするための認証情報に相当するため、パスワードと同じように管理してください。完全なURLを公開フォーラム、速度測定のスクリーンショット、トラブル報告へ貼り付けたり、出所不明のオンライン変換サイトへ渡したりしないでください。問い合わせる際は、クライアント名、プロトコル、エラーが発生した段階、機密情報を伏せたログを伝え、誰でもアクセスできるサブスクリプションURLをそのまま送らないようにしましょう。
- ユーザーパネルからクライアントを入手します。Windows向けのクライアントをダウンロードし、インストールまたは解凍後に起動します。システムにネットワークアクセスの確認が表示された場合は、利用目的に必要な通信を許可してください。仮想ネットワークアダプターを有効にする場合は、クライアントの指示に従って管理者権限を付与します。
- サブスクリプションURLをコピーします。パネルでサブスクリプションまたは設定の入口を開き、URL全体をコピーします。URLの前後に空白を含めないようにし、ウェブページのURLをサブスクリプションURLと取り違えないでください。
- クライアントでサブスクリプションを新規追加します。サブスクリプション管理を開き、クリップボードからのインポートまたはリモートサブスクリプションの追加を選択します。名前には識別しやすい文字列を設定し、アドレス欄にサブスクリプションURLを貼り付けて更新を実行します。
- ノード一覧を確認します。正常に更新されると、地域名または回線名が表示されます。一覧が空の場合は、更新ログで形式、ネットワーク、認証に関するエラーを確認し、クライアントを何度も再インストールするのは避けてください。
- ルールモードと回線を選択します。初回テストでは、ルールベースの分割ルーティングと、目的地に適した地域の回線をおすすめします。システムプロキシを変更するクライアントを複数起動しないでください。接続状態と実際の出口が一致しなくなる可能性があります。
- システムプロキシを有効にしてテストします。クライアントが接続済みになったら、まずブラウザで目的のウェブサイトを開き、出口IPが想定どおり変化しているか確認します。ブラウザは正常でも他のプログラムが使えない場合、そのプログラムはシステムプロキシに従っていない可能性があります。
サブスクリプションの更新に成功
→ ノード一覧を表示
→ 回線を選択
→ システムプロキシを有効化
→ 出口IPを確認
→ DNSと分割ルーティングの結果を確認
クライアントによっては、「コアを起動」「システムプロキシに設定」「ノードを選択」が別々のスイッチになっています。コアだけを起動してシステムプロキシを有効にしなければ、ブラウザはローカルネットワークを使い続けることがあります。システムプロキシだけを開いてコアが動作していない場合、アプリにプロキシサーバーへ接続できないと表示されることがあります。トラブル時は、トレイアイコンの色だけで判断せず、これらの状態を個別に確認してください。
サブスクリプションの更新とノードへの接続は別の処理です。更新に失敗する場合は、クライアントが設定を取得できていません。ノード接続に失敗する場合は、設定は存在するもののサーバーとのハンドシェイクが完了していません。前者ではサブスクリプションURL、クライアントの形式、ローカルからの直接接続を確認し、後者ではプロトコル対応、システム時刻、UDP制限、回線への到達性を確認します。
直接接続・中継・IEPL専用線の選び方
回線名には、直接接続、中継、IEPLなどの説明が含まれることがあります。これらは異なるネットワークトポロジーを示すもので、固定された速度ランクを意味しません。実際の体感は、利用地域、接続事業者、夜間の混雑、対象サイトの場所、アプリの伝送方式にも左右されます。回線を選ぶときは、まず経路を理解し、自分の利用目的に合わせてテストしましょう。
直接接続回線
直接接続は、端末から海外側の入口へ直接接続し、サービス提供者が国内に設置した中継ノードを経由しない方式です。経路構成はシンプルですが、利用中の通信事業者から対象地域までの国際接続品質に大きく左右されます。国際回線が特定の時間帯に混雑すると、遅延やパケットロスが大きく変動することがあります。直接接続だから必ず遅い、または速いとは限らず、重要なのはローカルネットワークとサーバー間の実際の経路です。
中継回線
中継回線は、まず近隣のアクセスポイントへ接続し、その後、中継ネットワークを通じて出口へトラフィックを送ります。不安定な公衆回線の経路を一部避けられますが、中継ノード自体も容量と経路に依存します。中継が適しているかは、クライアントに表示される測定値だけでなく、対象ページの読み込み、長時間接続の安定性、実際のダウンロード状況も見て判断してください。
IEPL専用線
IEPLは通常、企業データ転送向けの国際イーサネット専用線に類する接続を指します。サブスクリプションサービスでは、国際区間の一部に専用線または専用の伝送網を使っていることを回線名で示す場合があります。ただし、端末から入口まで、また出口から対象サイトまでが別のネットワークを経由する可能性もあります。主な価値は、特定の国際区間で経路を管理しやすくする点にあり、すべての対象サイトで同じ性能になるとは限りません。
| 回線タイプ | 経路の特徴 | 優先して確認する項目 |
|---|---|---|
| 直接接続 | 端末から海外側の入口へ直接接続 | ローカル事業者の国際ルーティング、夜間の変動 |
| 中継 | アクセスポイントへ接続してから出口へ転送 | アクセスポイントへの到達性、長時間接続の安定性 |
| IEPL専用線 | 国際経路の一部に専用線系の伝送を使用 | 対象地域との適合、出口から対象サイトまでの経路 |
実際の選択では、「目的地に近い場所、トポロジーを優先、アプリで検証」の順に確認するとよいでしょう。日本にあるサービスへアクセスする場合は、まず日本の出口を比較します。分散型クラウドサービスでは、実際のAPIリージョンとアカウントのポリシーを基準にしてください。クライアントの遅延テストは通常、特定の測定先への接続結果にすぎず、動画のスループット、ウェブページの初回応答、継続的なアップロード性能を完全に示すものではありません。
出口IP・DNS・分割ルーティングを正しく確認する
ボタンに「接続済み」と表示されても、クライアントのコアが動作状態に入ったことしか証明できず、すべてのリクエストが想定どおり転送されているとは限りません。初回接続後は、出口IP、DNS解決、対象アプリ、ローカルへ直接接続するサイトをそれぞれ確認してください。検証時は、複数の設定が同時に有効にならないよう、他のプロキシ拡張機能やネットワークツールを停止します。
- グローバル出口を確認します。接続前後に出口IPをそれぞれ調べ、対象アプリが選択した地域の出口を使用していることを確認します。
- 対象サイトを確認します。実際に利用したいサービスへ直接アクセスし、ログイン、画像表示、ダウンロード、長時間接続が正常か確認します。
- ローカルサイトの分割ルーティングを確認します。ルールモードでは、ローカルサービスがルールどおり直接接続され、不要な迂回が発生していないことを確認します。
- DNSの解決経路を確認します。ドメインの名前解決結果がプロキシモードと一致しているか確認し、通信はプロキシ経由なのにDNSだけが不適切なローカルリゾルバーへ送られるのを防ぎます。
- クライアントのログを確認します。タイムアウト、証明書検証、名前解決、UDP到達不可、ルールマッチングに関する情報を確認します。
DNSリークとは通常、通信自体はプロキシやトンネルを経由しているのに、ドメイン検索だけがローカルネットワークのDNSサーバーで処理され、検索先が露出したり、地域と一致しない解決結果になったりする状態を指します。システムプロキシモードでの挙動は、クライアントがDNSをプロキシするか、アプリがどのように名前解決するか、ブラウザ内蔵の暗号化DNSが有効かによって変わります。WindowsのDNSアドレスを変更するだけで、DNSリクエストが自動的にプロキシ回線へ入るわけではありません。
クライアントがリモートDNS、プロキシDNS、仮想DNSに対応している場合は、ドキュメントを確認して有効にし、分割ルーティングのルールが対象ドメインを正しく復元できることを確認します。TUNモードはDNSをまとめて処理しやすい一方、ブラウザ内蔵の暗号化DNSがクライアント設定を迂回することがあります。「出口地域は正しいのにサイトの地域判定が異常」な場合は、ブラウザの位置情報権限、アカウント地域、キャッシュ、Cookie、DNSを同時に確認し、回線だけを切り替えないでください。
分割ルーティングの誤りは、ページ本体は開くのに、ログイン、画像、認証コード、APIリクエストが失敗する形で現れることがあります。現在のウェブサイトは複数のドメインを呼び出すため、メインドメインがプロキシルールに一致しても、関連するすべてのリクエストが同じ経路を通るとは限りません。クライアントログで失敗したドメインのルール判定を確認し、必要なドメインのルールを調整します。問題を隠すために、すべてのリクエストを恒久的にグローバルモードへ変更するのは避けてください。
Windowsでよくある接続トラブルの対処法
サブスクリプションを更新できない
まずローカルネットワークからサブスクリプションサービスの入口へアクセスできることを確認し、完全なURLをコピーし直します。ログに形式を認識できないと表示される場合は、クライアントがサービス提供のサブスクリプション形式に対応しているか確認します。認証失敗の場合は、URLがリセットされた、コピーが不完全、アカウント状態が変わったなどの可能性があります。システム時刻の異常でHTTPS証明書の検証に失敗することもあるため、まずWindowsの時刻自動同期を有効にしてください。
すべてのノードがタイムアウトする
すべての回線が同時にタイムアウトする場合、各回線が同時に故障したというより、ローカル環境の問題である可能性が高いです。他のプロキシクライアントを終了し、Windowsのシステムプロキシが残っていないか確認します。ネットワーク接続を遮断するテストツールを一時終了してから、現在のクライアントを再起動してください。Hysteria2やTUICが使えず、TCPまたはTLSベースの回線は接続できる場合は、現在のネットワークがUDPを制限していないか確認します。
ブラウザは使えるが、デスクトップアプリは使えない
これは通常、ブラウザがシステムプロキシに従う一方、対象アプリが直接接続していることを示します。まずアプリに個別のプロキシ設定があるか確認し、なければTUNモードを検討します。TUNを有効にしても使えない場合は、プロセス単位の分割ルーティング、仮想ネットワークアダプターの優先順位、ファイアウォール権限を確認してください。一部の企業向けアプリは仮想ネットワーク環境を意図的に拒否するため、ノードを切り替えるだけでは解決できません。
接続後にローカルサイトが遅くなる
まずグローバルモードを誤って使っていないか確認します。ルールベースの分割ルーティングへ戻し、ローカルドメインが直接接続のルールに一致しているか確認してください。ルールが正しければ、DNSがローカルドメインを不適切なアドレスへ解決していないか確認します。ブラウザのプロキシ拡張機能を一時的に無効にし、拡張機能のルールがクライアントのシステム設定を上書きしないようにする方法もあります。
クライアント終了後にネットワークへ接続できない
クライアントが異常終了すると、Windowsのシステムプロキシが停止済みのローカルポートを指したままになることがあります。クライアントを再び開いてシステムプロキシを正常に無効にするか、Windowsのネットワークプロキシ設定で手動プロキシを解除してください。TUNを有効にしていた場合は、仮想ネットワークアダプターとデフォルトルートが復元されていることも確認します。残ったシステム設定はプログラムファイルと一緒に削除されない可能性があるため、クライアントの再インストールは最初に行う手順ではありません。
自動起動と日常のメンテナンス
初回接続が安定してから、自動起動を設定しましょう。クライアントでは通常、「Windows起動時にプログラムを起動」と「起動後に自動接続」が別の項目になっています。前者だけを有効にするとプログラムは開いてもプロキシが開始されないことがあり、前回終了時の状態だけに頼ると異常終了後に復元できない場合があります。設定後は一度手動で再起動し、クライアントの起動、サブスクリプションの読み込み、回線選択、システムプロキシの状態が想定どおりか確認してください。
TUNモードを使う場合、自動起動には管理者権限や仮想ネットワークアダプターの初期化が関わることがあります。システム起動直後はネットワークの準備が整っておらず、初回接続に失敗する場合があるため、複数の重複した起動項目を作るのではなく、クライアントが提供する適切な再試行機能を有効にしてください。企業端末では組織の権限ポリシーを回避せず、ネットワークドライバーの自動読み込みを許可するか管理者に判断してもらいましょう。
回線の調整によりサブスクリプション内容は変わるため、クライアントの「サブスクリプションを更新」機能を定期的に使い、追加時に保存された古い一覧へ長期間依存しないでください。更新前後に設定全体を削除する必要はありません。直接更新すれば、ローカルルールや画面設定の大部分を保持できます。サービス側がプロトコルを変更して古いクライアントで認識できなくなった場合は、事前にカスタムルールをエクスポートしてからクライアントのコアを更新します。
日常利用では、システムプロキシがブラウザ拡張機能、デバッグツール、他のネットワークソフトによって書き換えられていないかにも注意してください。問題が起きたら、「ローカルネットワーク、サブスクリプション更新、プロトコルのハンドシェイク、プロキシの適用、DNS、分割ルーティング、対象サービス」の順に確認すると、回線を何度も切り替えるより早く原因を特定できます。回線の遅延が時々変化しても、必ずしも異常とは限りません。最終的には対象アプリの実際の接続結果で判断してください。