Shadowrocket 使い方完全ガイド
App Storeでの購入から、既存サブスクリプションの追加、ルールによる振り分け、日常メンテナンスまで。現在の段階に合わせて読み進め、まず入力内容と状態を確認してから、該当する設定を変更してください。
- iPhone / iPadを中心に解説
- Global Routing
- Data / Settings
このページでは、各操作の依存関係、設定の適用範囲、問題が起きたときの判断方法を体系的に解説します。初めて使う方や、まず接続まで進めたい方は入門ガイドの手順に沿って操作してください。設定項目の意味を確認したいときは、該当する章に戻って参照できます。どちらのページも同じ流れを扱いますが、入門ガイドは操作手順、本ページは仕組みや確認方法、復旧手順を中心に説明します。
このページは、ご自身がすでにサブスクリプションまたはサーバー情報をお持ちであることを前提としています。Shadowrocketは有料クライアントです。本サイトではサーバーやサブスクリプションの提供、販売、推奨は行っていません。アプリの買い切り購入 ≠ 接続サービスの契約です。アプリの購入、サービスの利用資格、設定の管理は別々に確認してください。
App Storeでの正規購入と確認
まずApp Storeの商品ページを確認し、次にアカウントと互換性を確認します。アプリの購入履歴は、接続設定が済んでいることを意味しません。
3つの情報でアプリを確認
ShadowrocketはAppleプラットフォーム向けにのみ配信されており、入手先はApp Storeのみです。まず本サイトの正規の入手・購入方法を確認してから商品ページを開いてください。自分で検索する場合も、検索結果の名称だけで判断せず、詳細ページの各項目を確認します。デベロッパ名がShadow Launch Technology Limitedであること、商品リンクのアプリIDが932747118であること、アイコンが本サイトのヘッダーに掲載されている公式アイコンと一致することを確認してください。公式アイコンは白地に青紫の輪郭で描かれた図柄です。実際の表示はApp Storeの商品ページで確認してください。名称が似ているだけでは、これら3項目の確認に代わりません。
アプリIDはリンク内の id932747118 に続く数字です。デバイス名、サービスのアドレス、サブスクリプションの識別子とは関係ありません。確認時は商品リンク全体を見て、検索語やページタイトルをアプリの識別情報と取り違えないようにしてください。デベロッパ情報はApp Storeの詳細ページで確認し、紹介文にある似たつづりから推測しないでください。この3項目は利用者が手動で確認するためのもので、本マニュアルの記載や装飾がApp Storeのデータを読み取るものではなく、自動判定の結果を示すものでもありません。
購入前にApp Storeのストア地域とデバイス要件を確認
App Storeに表示される商品、通貨、購入条件は、現在のアカウントが利用しているストアによって異なります。商品ページを開いたら、まずデバイスで使用中の購入アカウントを確認し、価格、互換性、購入に関する案内を読んでください。商品ページが表示されない場合は、ネットワークとアカウントの国または地域を確認します。検索で見つからないだけで、配信が終了したと判断しないでください。アカウント地域の確認手順はApp Storeでの表示に関する説明をご覧ください。アカウント情報の変更は、デバイスのシステム設定とAppleの案内に従ってください。
本マニュアルでは、iPhoneとiPadを主な操作デバイスとして説明します。Mac、Apple TV、Apple Visionとの互換性も同じ商品ページで確認できます。システム要件と一般的な購入条件は、すべてApp Storeの商品ページの記載を基準にしてください。あるデバイスにインストールできるからといって、すべてのデバイスで同じ条件が適用されるとは限りません。ファミリー共有、異なる購入アカウント、複数のデバイスで同じ購入を利用できるかどうかも、デバイスで同じApple Accountにサインインしているかだけで判断せず、App Storeの案内を確認してください。
アプリ料金、サービス利用資格、ローカル設定を区別する
米国ストアでの価格は約2.99米ドルの買い切りです。実際の価格と支払額はApp Storeの商品ページで確認してください。他のストアでは現地通貨で表示されます。支払うのはクライアントアプリの料金であり、ご自身のサーバーアドレス、サブスクリプションURL、サービス認証情報が自動的に用意されるわけではありません。利用中のサービスの有効期限、通信量、利用可能なサーバーは、それぞれのサービス情報で確認してください。アプリの購入履歴だけでは、サービスの利用資格があることを証明できません。初回起動後にリストが空でも、アプリを再購入するのではなく、情報の追加を進めてください。
アプリの買い切り購入 ≠ 接続サービスの契約。まずApp Storeで購入・インストールし、その後、ご自身がすでにお持ちのサブスクリプションまたはサーバー情報を使用します。アプリとサービスの料金、有効期限、トラブル対応はそれぞれ別に確認してください。
購入後は購入履歴を保管し、App Storeのアカウントの購入済み項目にアプリが表示されることを確認してください。システムによって項目名や場所が変わる場合があるため、アカウント画面の表示に沿って探します。再度支払いを求められた場合は、以前購入したアカウントを使っているか、正しい商品ページを開いているか、購入履歴が同期されているかを先に確認してください。すぐに支払いを繰り返さないようにしましょう。アプリのアップデートもApp Storeから行います。更新前に商品ページの更新情報を確認しておくと安心です。
この段階の完了条件は、商品を特定でき、デバイスがストアの要件を満たし、アプリが正常に開き、購入履歴がどのアカウントに紐づいているか把握できていることです。この時点で、理解できないネットワーク項目を入力したり、システムのネットワーク設定を変更したりする必要はありません。「アプリの入手」と「接続の確立」を別々の確認項目として扱うことで、問題が起きた際に、ストア、権限、設定、サービスのどの段階に原因があるか判断しやすくなります。
初回起動、VPN構成、権限の範囲
システムの許可はデバイス上で接続機能を使うためのものであり、サーバー設定の代わりにも、利用中のサービスが使えることの確認にもなりません。
Homeと設定の関係を確認
初回起動後は、Homeで選択するサーバー、Configで使用するルール設定、システム接続を開始するスイッチの3つを区別してください。サーバーはリクエストの転送先を決め、ルール設定はリクエストごとの処理方法を決め、スイッチは今回のネットワーク拡張を実行するかどうかを決めます。3つは関係していますが、互いの代わりにはなりません。リストにサーバーがあっても、ルールが適切とは限りません。ルールファイルがあっても、サーバーの認証情報が正しいとは限りません。スイッチをオンにした後も、実際にアクセスして結果を確認してください。
初回起動時にすべての許可を一度に求めるのではなく、機能を初めて使うときに許可を求める場合があります。表示されたダイアログの用途を読んでから、続行するか決めてください。カメラの許可は通常、QRコードの読み取りに使います。通知の許可はアプリからの通知に関するものです。システムのVPN構成の許可は接続の確立に使います。テキスト形式のリンクを追加するだけなら、カメラの許可を先に有効にする必要はありません。使わない機能の許可は、必要になった時点でシステムの手順に従って設定できます。
システムのVPN構成の許可について
初めて接続をオンにすると、システムからVPN構成の追加を許可するよう求められ、デバイスの認証が必要になる場合があります。これはネットワーク拡張の構成をシステムに登録する手順です。操作中のアプリがShadowrocketであることを確認し、システムの案内に従ってください。許可が完了したことが示すのは、システムがその構成の実行を認めたことだけです。すべてのリクエストが転送されることや、接続先のサーバーからあらゆる宛先へアクセスできることを保証するものではありません。実際の処理はGlobal Routing、ルール、リモートサービスによって異なります。
システムの案内を以前キャンセルした場合は、サーバー情報を確認してから接続を再度オンにし、表示される許可手順に従ってください。構成を作成できない状態が続く場合は、デバイスが組織によって管理されているか、関連機能を制限するポリシーがあるか、ほかのネットワーク構成が有効になっているかを確認します。組織管理のデバイスでは管理上のルールに従い、管理制限を一般的な接続障害として扱わないでください。原因を探るためにシステム構成を次々に削除するのは避けましょう。既存の業務用ネットワークに影響しないよう、まず各構成のアプリと用途を記録してください。
システムの状態とアプリの状態を分けて判断
システムにVPNの状態が表示されていれば、該当するネットワーク拡張が接続中であることを示しますが、目的のWebページが正常に読み込まれたことまでは確認できません。反対に、デバイスによってはステータスバーの表示領域が限られているため、特定のアイコンが常に見えないことだけで接続が切れたとは判断できません。アプリ内のスイッチ、選択中のサーバー、実際のアクセス結果を併せて確認してください。システム設定から切断しても再接続される場合は、On Demandなどのトリガー条件を確認します。スイッチが戻ったことだけで、システムが操作を受け付けなかったと判断しないでください。
サーバー、ルーティングのモード、ルール設定を変更しても、既存の接続が以前の経路を保つ場合があります。初回の確認では、いったん現在のアクセスを停止し、必要に応じて接続を確立し直してから、目的のページを開いてください。古いセッションを維持したまま複数の設定を変更し、ページが再生中かどうかだけで新しい設定の結果を判断しないでください。ログインが必要なアプリでは、アプリ内のキャッシュやセッション復元も影響するため、必要に応じて対象アプリを終了してから再度アクセスします。
権限の確認でわかるのは「システムがその機能の実行を許可しているか」です。接続性の確認では「現在のサーバー、認証情報、ルール、接続先サービスが正常か」も調べます。この2つは分けて記録してください。
初回操作で元に戻せる状態を用意
情報を追加する前に、Wi-Fiとモバイル通信のどちらを使っているか記録し、通常のネットワークが正常に使えることを確認します。Web認証が必要なWi-Fiでは、接続テストの前に認証を完了してください。初回設定中は自動トリガーのルールを有効にせず、接続のたびにどの手動操作がきっかけになったか分かるようにしておきます。ネットワーク経路を変更するほかの機能がデバイスで有効になっている場合も、その状態を記録してください。複数の仕組みが同時に動いた結果を、1つの設定だけが原因だと誤認しないためです。
自分だけが保管する操作記録を用意し、現在のサーバー名、設定名、Global Routingのモード、今回変更した内容を記録しておくことをおすすめします。パスワードやサブスクリプションの認証情報は記録しないでください。初回接続に成功したら、この記録を復旧時の基準として使えます。サービス情報をまだ追加していない場合、この段階で止まっていても問題ありません。次の章に進み、ご自身がすでにお持ちの情報を追加してください。手順を短く確認したい場合は入門ガイドに戻り、権限設定を終えてから本ページの各項目を参照できます。
サーバーとサブスクリプションの追加・確認
個別のサーバー情報とサブスクリプションの一覧を区別し、手元にある情報に合った方法で追加します。
Add ServerとSubscribeの使い分け
個別のサーバー情報には通常、プロトコル、アドレス、ポート、認証情報が含まれます。サブスクリプションは複数のサーバー情報を取得するためのリンクです。個別の共有リンクがある場合は、アプリが対応するリンクの追加方法を使います。QRコードがある場合はScan QR Codeを使用してください。手入力する場合はAdd Serverを開き、該当する種類を選択します。サブスクリプションを追加する場合はSubscribeの該当項目を使用してください。サブスクリプションURLをサーバーアドレスとして入力したり、一般的な案内ページをサブスクリプションの内容と取り違えたりしないようにしましょう。
追加する前に、手元のサービス情報が何を示しているか確認してください。サブスクリプションURLには個人識別情報が含まれる場合があるため、内容を省略せずにコピーし、自分のデバイスでのみ使用してください。コピー時によくある間違いは、先頭や末尾に空白が入る、改行でURLが途切れる、クエリ部分をコピーし忘れる、書式上の句読点まで貼り付けることです。入力後に全体を確認してから取得してください。問題の切り分けのためにURLのパラメーターをむやみに削除しないでください。サービスの利用資格を確認するために必要な情報が含まれている場合があります。
共通の項目を当てはめず、プロトコルごとに確認
Add Serverでは、プロトコルを手元の情報と一致させてください。アドレスには通常、ドメイン名またはIPアドレスを、ポートにはサービス指定のポート番号を入力します。認証項目はプロトコルによって異なります。パスワード、UUID、暗号化方式、通信設定はそれぞれ別の意味を持ち、単なる文字列として相互に置き換えることはできません。サービス情報にTLS、Server Name、Host、Pathが含まれている場合は、対応する項目を1つずつ確認してください。項目名と選択肢は現在のアプリ表示に従い、資料にない詳細項目を経験則で追加しないでください。
| プロトコル | 優先して確認する項目 | 注意点 |
|---|---|---|
| Shadowsocks | アドレス、ポート、パスワード、暗号化方式 | 暗号化方式はサーバー側の設定と一致させてください。 |
| VMess / VLESS | アドレス、ポート、UUID、通信方式、TLS | 認証情報と通信設定を別々に確認してください。 |
| Trojan | アドレス、ポート、パスワード、TLS | ドメイン名と証明書の条件は、手元の情報に沿って設定してください。 |
| Hysteria2 | アドレス、ポート、認証、TLS | 現在のネットワークからUDPに到達できるかも確認してください。 |
| HTTP / SOCKS5 | アドレス、ポート、認証方式 | ユーザー名とパスワードが必要かどうかは、サービスの設定によって異なります。 |
追加に成功したことは、アプリが内容を認識して保存したことを示すだけで、認証が有効であることを直接証明するものではありません。共有情報によっては、特定の通信方式や追加パラメーターが必要です。アドレスとパスワードだけを手入力すると、必要な条件が抜ける場合があります。追加後に接続できないときは、プロトコルを次々に変更するのではなく、まず元の情報と照合してください。Hysteria2の通信上の特徴についてはHysteria2プロトコルの解説を参照できますが、プロトコルの一般知識は、ご自身の実際の設定情報の代わりにはなりません。
サブスクリプションの更新に失敗したら、どの段階で止まったか確認
Subscribeでの取得失敗と、サーバーへの接続失敗は別の問題です。前者は「サーバーリストの取得」段階で起き、URLが完全か、サブスクリプションのアドレスを解決できるか、ネットワークに到達できるか、利用資格が有効か、応答内容がアプリに対応した形式かなどが関係します。応答がログイン画面やエラーメッセージの場合、Webページが開けても有効なサブスクリプションを取得できたことにはなりません。まず、リクエストを送れなかったのか、取得できたものの解析できなかったのかをエラー内容から判断してください。
更新に失敗しても、利用中のリストは残しておき、サブスクリプション全体を削除して追加し直すのは避けてください。元のURL、現在のネットワーク、サービスの状態を確認してから、再度更新します。更新後に利用可能な項目が減った場合は、応答内容とサービス側の変更を確認してください。リストの変化をすべてアプリのデータ消失と決めつけないようにしましょう。サブスクリプションから生成された項目を手動で編集すると、次回の更新で上書きされる場合があります。長期的な変更にはアプリが対応する管理方法を使い、復元できるよう元の情報も保管してください。
追加した情報の出所を明確にする
サブスクリプションと手動で追加した項目には見分けやすい名前を付け、同名サーバーを誤って選ばないようにします。出所が明確な情報を1つ追加してから次に進み、重複する内容をまとめて追加してから問題を探すのは避けてください。リストに表示されたら、テストするサーバーが選択されていることを確認します。リストが変わっても、現在の選択が自動で切り替わるとは限りません。項目を削除する前に、どのサブスクリプションに属するか、まだ使っているかを確認してください。検証済みの接続情報を誤って削除しないためです。
サーバーのパスワード、サブスクリプションURL、QRコード、エクスポートした設定には、接続に必要な情報が含まれている場合があります。問題を他の人に説明する際は、必要なエラー情報だけを共有し、項目を伏せてください。内容全体を公開しないようにしましょう。
この段階の終了時には、現在の項目が手入力、個別の共有情報、サブスクリプションのどれに由来するか説明でき、元の情報を確認できる状態にします。少なくとも1つは確認待ちの項目を残し、プロトコルと所属するサブスクリプションを記録してください。次にGlobal Routingのモードを選んでから接続します。ルーティング方式が未確定のまま、Webページが開くかどうかでサーバー情報の追加が正しかったか評価しないでください。
Global Routingの3つのモードとルールの順序
Config、Proxy、Directは、それぞれ設定による振り分け、プロキシ経由、直接接続を表します。まずモードを選び、次にリクエストの経路を確認してください。
ルーティングのモードとルールの処理を区別
Global Routingはリクエストの処理方法を決めます。Configでは現在の設定に含まれるルールに照合します。Proxyではクライアントの処理対象となるリクエストをプロキシ経由にします。Directでは直接接続します。これらは動作モードであり、異なるサーバーを指すものではありません。モードを切り替えても、誤ったパスワードは直らず、利用中のサービスの有効期限も延長されません。特にProxyを、デバイスのすべての通信が必ずリモート経由になると単純に捉えないでください。システムのネットワーク動作、処理対象の範囲、プロトコルの機能にはそれぞれ制約があります。
| 画面上のモード | 処理方法 | よくある用途 |
|---|---|---|
| Config | 現在の設定に含まれるルールに照合して処理します。 | 日常的なルール振り分けや、特定の宛先に適用されたルールの確認。 |
| Proxy | クライアントの処理対象となる通信をプロキシ経由にします。 | ルールの影響を一時的に減らし、リモート接続を確認。 |
| Direct | 直接接続します。 | 現在のローカルネットワークからの到達性を比較。 |
ルール内の PROXY、DIRECT、REJECTは処理方法を示すキーワードであり、Global Routingの画面表示と混同しないでください。ルールのPROXYは、現在の選択や設定内のポリシー定義と併せて解釈する必要があります。カスタムのポリシーグループを使う設定では、ルールの末尾に固定のPROXYではなくグループ名を指定することがあります。初めて確認する場合は、既存設定の参照関係を把握してください。ルール末尾の文字だけを変更しても、ポリシーの調整が完了したとは限りません。
上から順に照合し、FINALは末尾に置く
Configでは、ルールを上から順に確認し、一致した時点で対応するポリシーを適用します。具体的な例外ルールは、関連する広範なルールより前に置く必要があります。先に別のルールに一致すると、後ろの例外は適用されません。前のルールに一致しなかったリクエストを処理するFINALは末尾に配置してください。順序を調べるときは、追加した行だけでなくルールの先頭から確認します。実際に適用されているのは、より前にある別のルールかもしれません。
以下は .conf 内のルール断片の例です。構造と照合順序を示すもので、完全な設定ではなく、すべてのネットワークに適用できるものでもありません。example.comは説明用のドメインです。使用前に、ご自身の宛先と既存のポリシー定義に合わせて調整してください。編集前に元の設定をバックアップし、変更した設定ファイルが選択されていることを確認してください。
[Rule]
DOMAIN,example.com,PROXY
DOMAIN-SUFFIX,example.org,DIRECT
GEOIP,CN,DIRECT
FINAL,PROXY
DOMAINは完全一致するドメイン名、DOMAIN-SUFFIXは指定したドメインとそのサブドメイン、DOMAIN-KEYWORDはドメイン名に含まれるキーワードで照合します。想定以上に広い範囲に一致する場合があります。IP-CIDRとIP-CIDR6はIPアドレスの範囲に使い、GEOIPはIPアドレスの地域データベースに基づいて判定します。ドメインのリクエストから実際の接続先アドレスに至るまでには名前解決があるため、ドメインルールとアドレスルールでは参照する情報が異なります。最終的に表示されたアドレスだけから、照合全体の過程を推測することはできません。
1つの宛先で変更を確認し、設定全体を一度に変更しない
ルールを変更する前に、どの宛先にどのポリシーを適用したいのか、現在の動作がなぜ要件に合わないのかを明確にします。対象に一致するルールを1つ追加したら、リクエストを再実行し、利用可能な記録に表示されるポリシーを確認してください。動作が変わらない場合は、設定が保存されているか、選択中の設定か、より前のルールが一致していないか、古いセッションが継続していないかを確認します。DNS、サーバー、大量のルールを一度に変更すると、正常に戻っても何が効いたのか分からなくなります。
宛先をDIRECTにしても、その宛先に必ずアクセスできるとは限りません。ローカルネットワークの名前解決と接続性に依存します。PROXYにしても、リモート側からその宛先へ必ずアクセスできるとは限りません。REJECTはリクエストを明示的に拒否し、ページのリソース、ログイン手順、アプリの通知に影響する場合があります。使う前に対象の用途を確認してください。ルールは明確な要件に沿って作成し、項目数の多さで品質を判断しないようにしましょう。順序の詳しい例はカスタムルールの優先順位とFINALの解説をご覧ください。
おすすめの手順は、検証済みのサーバーを維持し、Proxyでプロキシ経路を確認した後、Configに戻ってルール振り分けを検証することです。一時的なモードでの比較が終わったら、普段使う設定に戻してください。
ProxyではアクセスできるのにConfigで失敗する場合は、ルール、ポリシーの参照関係、設定に関連するDNSの動作を優先して確認します。どちらでも失敗する場合は、サーバーの認証、通信方式、ネットワークからの到達性を確認してください。むやみにモードを切り替えるより、このように問題を分類する方が有効です。次章の接続確認を再現できるよう、最終的に使用する設定名とGlobal Routingのモードを記録してください。
接続確認、遅延テスト、問題の切り分け
スイッチ、テスト結果、Webページへのアクセスは、それぞれ異なる情報を示します。どれか1つだけで判断しないでください。
決まった順序で初回接続を確認
まず、選択中のサーバー、Global Routingのモード、設定名を確認してから接続をオンにします。アプリがオンの状態を維持できるか、システムにエラーが表示されないかを確認した後、用途が明確なページにアクセスしてください。初回の確認では、古いページを閉じて同じURLを開き直すなど、簡単で再現しやすい操作を行います。複数のアプリを同時に使わないでください。ログインや本人確認が必要な場合は、サービス側の案内も別途記録し、すべてのログイン失敗を接続問題とみなさないようにしましょう。
確認結果は次の3項目に分けて記録します。クライアントが接続を確立できたか、対象ドメインを名前解決できたか、対象コンテンツを正常に取得できたかです。最初の項目が正常でも、後の2項目が失敗する場合があります。ページが一部だけ読み込まれる場合も、メインページは表示されたが画像が失敗したのか、ログインAPIがエラーになったのかを区別してください。現在のWebページは複数のドメインからリソースを読み込むことが多く、1つのドメインに接続できても関連するすべての経路が同じとは限りません。ルール振り分けの問題を調べる際は、アドレスバーのメインドメインより、実際に失敗したリソースのドメインが役立つことがあります。
Connectivity Testだけでは実際のサービス利用状況を確認できない
Connectivity Testやリストの遅延テストは、特定の条件下での応答を確認するものです。テスト方法によって対象、プロトコル、タイムアウト条件が異なるため、数値だけを直接比較できません。遅延が小さい場合、テスト経路の応答が速いことは示せますが、帯域が十分であることや、すべての宛先にアクセスできることは証明できません。サーバーポートの応答、認証の成功、TLSの確立、Webページからの応答は別々の段階で確認する必要があるため、現在表示されているテストの種類と併せて解釈してください。
テストがタイムアウトしても、サーバーが今後ずっと使えないと判断する根拠にはなりません。Wi-Fiの認証が必要な場合や、モバイル通信が一時的に不安定な場合、テスト対象が一時的に応答しない場合があります。同じ条件で一度再テストし、その後にネットワークを変えて比較してください。1回につき変更する条件は1つにします。2台のデバイスを比較する場合は、同じ項目、同じルーティングモード、同じテスト方法を使っているか確認してください。条件が違うと数値を直接比較できず、次に行う設定変更の判断材料にもなりません。
「ネットワーク、サーバー、ルール、宛先」に分けて確認
すべての項目で失敗する場合は、まずデバイスの基本ネットワーク、Wi-Fi認証、システムのネットワーク構成の状態を確認してください。1つの項目だけ失敗する場合は、そのアドレス、ポート、認証、通信パラメーターを優先して確認し、利用中のサービスが有効かも確かめます。複数の宛先にアクセスできるのに1つのアプリだけ異常な場合は、そのアプリが使用するドメイン、ルール、接続先からの応答を確認してください。1つの宛先だけの問題でサブスクリプション全体を再構築しないでください。変更の範囲が広がるだけで、判断材料は増えません。
| 確認できる状態 | 優先して確認 | 次に行う比較 |
|---|---|---|
| スイッチをオンのままにできない | システムの許可、設定エラー、デバイス管理の制限 | システムまたはアプリに表示された具体的なエラーを記録。 |
| 遅延テストには応答があるが、Webページが開かない | DNS、ルール、TLS、接続先からの応答 | 異なる宛先とルーティングモードを比較。 |
| Proxyでは正常だが、Configでは異常 | ルールの順序、ポリシーの参照、設定の違い | 失敗したリクエストに実際に適用されたルールを確認。 |
| ネットワークを切り替えると結果が変わる | 現在のネットワークからの到達性と通信上の制限 | 設定を変えずに再テスト。 |
DNSはドメイン名を接続可能なアドレスに変換します。サーバーテストに応答があっても、名前解決に失敗すればWebページを開けない場合があります。TLSは接続時の認証と暗号化のネゴシエーションを担います。証明書の名前や有効性、デバイスの時刻に問題があると、接続に失敗することがあります。これらは別の段階なので、エラーメッセージを基に区別してください。日常的な対処として証明書の検証を無効にしないでください。まずドメイン名、時刻、ご自身のサービス情報にあるTLSパラメーターが一致しているか確認します。
再現に必要な条件を最小限記録
トラブルを適切に記録するには、ネットワークの種類、宛先、選択中のサーバー、ルーティングモード、発生時刻、具体的な症状を含めてください。認証情報全体を記録したり、ログをすべてエクスポートしたりする必要はありません。利用可能な記録に明確なエラーがある場合は、関連する数行を残してから設定を1つずつ変更します。DNSの詳しい対処は遅延は正常なのにWebページが開かない場合の対処方法をご覧ください。記載された方法は、今回のリクエストで確認できた情報に基づいて使用してください。
一度に変える条件は1つだけにします。まず状態を確認し、設定を1つ変更してから、同じアクセスを繰り返します。正常に戻ったら有効だった変更を記録し、確認済みの箇所をさらに変更しないでください。
初回接続に成功しても、すぐに複雑な設定を目指す必要はありません。まず普段使うアクセスを数回行い、Wi-Fiとモバイル通信でそれぞれ条件をそろえて比較します。既存のセッションに依存するアプリでは、ネットワークの切り替え後にリクエストを再実行してください。最後に普段使うConfigに戻し、ルールとサーバーが正常に動作することを確認します。これで初回確認が完了します。テストに一度応答があっただけでは不十分です。
Dataの通信量統計とリクエスト記録の見方
数値を解釈する前に、統計対象、期間、単位を確認してください。
デバイス上の統計はサービス側の残量とは異なる
Dataでは、クライアントから確認できる通信量や関連記録を確認できます。表示項目は現在のアプリ表示に従ってください。まず統計が現在の接続、一定期間、累計のどれを示すのかを確認してから数値の変化を判断します。クライアント側の通信量を、サービス側で差し引かれた通信量と同じものとして扱わないでください。両者で集計期間、単位、プロトコルのオーバーヘッド、料金計算方法が異なる場合があります。利用中のサービスの残量を確認するには、ご自身のサービスアカウント情報を参照し、クライアントの累計値から推測しないでください。
アップロードとダウンロードの方向は、デバイスから見たものです。Webページへのリクエスト、ファイルの送信、クラウド同期はアップロードを発生させることがあります。ページのコンテンツ、動画、ファイルの受信はダウンロードにあたります。Webページを開いていなくても、バックグラウンド同期やアプリ通知で通信が発生する場合があります。そのため、通信量が少しずつ変化しているだけでは異常とは判断できません。前面での操作、バックグラウンドの動作、記録対象の範囲を併せて確認してください。単位を調べずに通信速度と累計量を混同しないようにしましょう。
速度、累計量、集計期間を区別
速度は単位時間あたりのデータ変化量、累計量は特定の集計期間における総量を表します。短時間のピークから長時間の転送能力は判断できません。また、累計量が増えても、現在も転送が続いているとは限りません。比較する前に単位を確認し、バイトとビットの違いにも注意してください。画面によって単位の表示方法が異なる場合があるため、問題を記録するときは、文脈のない数字だけでなく画面に表示された単位全体を書き留めます。
再接続、記録の消去、統計のリセットによって、表示対象が変わる場合があります。操作前に現在の項目が何をするか確認してください。数値をゼロにするためにサーバーやサブスクリプションを削除しないでください。管理対象が異なります。2回のアクセスで通信量を比較する場合は、同じ宛先に近い操作を行い、開始時と終了時の数値の差を記録します。ブラウザーのキャッシュが使われたかも考慮してください。2回目のページ表示で通信量が減っても、キャッシュが原因であって、ネットワーク経路が変わったとは限りません。
リクエスト記録でルールの適用状況を確認
アプリに接続記録が表示される場合は、宛先のドメインまたはアドレス、適用されたルール、ポリシー、結果を照らし合わせてリクエストの経路を判断できます。まず直前に自分がどのリクエストを実行したか確認してから、該当する記録を探してください。リストにはバックグラウンド処理や他のアプリの通信が含まれる場合もあります。ドメインとアドレスは必ずしも一対一で対応しません。アドレスを直接使う接続もあれば、以前の名前解決結果を使うリクエストもあります。目的のドメインが見つからないだけで、対象がネットワークリクエストを一切送信していないと判断しないでください。
記録にあるポリシーは、特にConfigの動作確認に役立ちます。まず一致したのが具体的なドメインルール、アドレスルール、FINALのどれかを確認し、参照先のポリシーが想定どおりか調べてください。DIRECTと表示されても、リクエストがサーバーを使用していない可能性があるため、サーバーだけを変更しないでください。REJECTと表示された場合は、明示的に拒否されていないか確認します。記録が想定と異なるときは、第4章に戻ってルールを上から順に確認し、現在選択中の設定と編集中のファイルが一致することも確かめてください。
通信量の数値は「どれだけ観測されたか」を示し、リクエスト記録は「そのリクエストがどう処理されたか」を調べるのに役立ちます。併用できますが、どちらも接続先サービスから応答が得られたことの実地確認には代わりません。
通信量に異常がある場合は、差分を確認
通信量が大きく増えた場合は、動画の再生、システムアップデート、クラウド同期など、大きな通信を伴う作業をいったん停止し、増加が緩やかになるか確認してください。その後、作業を1つずつ再開し、増加と関係する活動を特定します。サーバー名だけを根拠に通信元を判断したり、統計の増加をそのまま認証情報の漏えいと解釈したりしないでください。前面の作業を止めても増加が続く場合は、バックグラウンドアプリの動作と利用可能な記録を確認し、原因の範囲を絞ります。統計期間に停止前の履歴が含まれているかも確認してください。
サービス側の残量が減っているのにデバイス上のDataがあまり変わらない場合は、同じサービスを使っている別のご自身のデバイスがないか、双方の集計期間が一致しているか、サービス側で異なる計算方法が使われていないか確認してください。事実を確認してから、利用中サービスのサポート窓口に計測方法を問い合わせます。通常、クライアントからサービス側のすべての差し引きの詳細を確認することはできません。アカウントの残量の問題を解決するためにローカル統計を何度もリセットしないでください。リセットで変わるのはデバイス上の表示だけで、サービス側の記録ではありません。
診断情報を共有する前に必要最小限にする
リクエスト記録には、アクセスしたドメインやパス、デバイスのネットワーク情報、個人識別情報が含まれる場合があります。問題を外部に伝える前に、関連する内容だけを選び、サブスクリプションURL全体、パスワード、個人を特定できるパラメーターを伏せてください。スクリーンショットの背景に機密情報が表示されていないかも確認します。不要になった記録は、アプリで利用できる機能に従って管理してください。記録を保存する期間は、ご自身のトラブル対処に必要な範囲で十分です。履歴をすべて長期間ためる必要はありません。日常のメンテナンスでは、再現条件、重要なエラー、有効だった対処を残してください。
この段階の目的は、数値を常に監視することではなく、判断の手掛かりを把握することです。統計がどの範囲を対象とするか、失敗したリクエストをどう見つけるか、デバイス上の記録とサービス側のアカウント情報をどう区別するかを理解してください。これらを把握してからSettingsの関連項目を調整すれば、根拠のない操作を減らせます。
Settings、DNS、On Demand
まず動作確認済みの状態を保ち、目的を1つに絞って調整します。設定名と選択肢は現在のアプリ表示に従ってください。
設定がどの範囲に適用されるか確認
設定変更の前に、アプリ全体の設定、現在のConfig内の設定、個別サーバーのパラメーターを区別してください。それぞれSettings、Config、サーバーの編集画面にある場合があり、適用範囲も異なります。あるConfig内のDNSの動作を、別の場所にある全体設定の変更だけから推測しないでください。個別サーバーの通信パラメーターも、すべての項目に共通する設定とは限りません。変更時は設定場所、変更前の値、目的を記録し、何に影響したか確認できるようにします。
画面に説明がある場合は先に読み、動作確認済みの値から変更する必要があるか判断してください。速度に関係しそうな名前の項目を見ただけで有効にしたり、自分のプロトコルやネットワークに関係しないパラメーターをそのまま使ったりしないでください。複雑な設定は特定の状況を解決するためのもので、互換性、名前解決の順序、接続方法を同時に変える場合があります。日常利用が安定しているなら、確認済みの状態を維持し、明確な問題に関係する項目だけを調整してください。
DNSでは正しく到達可能な名前解決結果を得る
DNSリゾルバー、問い合わせの通信方式、問い合わせの経路、結果のキャッシュは、いずれもドメインへのアクセスに影響します。名前解決の方法を選ぶ際は、応答速度だけでなく、現在のネットワークから対象のDNSサービスに到達できるか、得られたアドレスがアクセス条件に合うかも確認してください。ドメインからアドレスを取得できても、現在の経路からそのアドレスに到達できるとは限りません。反対に、1回のDNS問い合わせがタイムアウトしても、原因は対象サイトではなくDNSサービスまでの経路にある場合があります。
ドメイン関連のエラーが起きたら、複数の宛先で発生するか確認してから、現在のConfigにあるDNS関連項目と最近の変更を調べます。暗号化DNSを使う場合は、DNSサービス自体のドメインを最初に名前解決して接続する条件も考慮してください。多数のDNSアドレスを一度に追加し、偶然の成功からどれが有効だったか判断しないでください。他の設定を変えずに同じドメインを比較します。必要であれば、アプリに該当機能がある場合にキャッシュを処理し、リクエストを再実行してください。
DNSキャッシュ、ブラウザーのキャッシュ、既存のネットワーク接続はそれぞれ別のものです。どれか1つを消去しても、他のものが変わるとは限りません。DNSの設定を変更した後は、対象に再度アクセスし、新しいリクエストであることを現在の記録から確認します。社内ネットワークやLAN機器の名前を扱う場合は、ローカルの名前解決も考慮してください。すべての問い合わせを一律に変更して、正常だった機器へのアクセスに影響させないようにしましょう。詳しい確認手順は第5章とDNSの解説記事を参照し、すべてのネットワークに固定のアドレスが使えるとは考えないでください。
On Demandは条件に応じて接続を開始し、適切なパラメーターを選ぶ機能ではない
On Demandは、Wi-Fi、モバイル通信、特定のドメインなどに設定した条件に応じて、自動接続や切断を行います。有効にする前に、まず手動接続で現在のサーバーと設定が利用できることを確認し、トリガー条件を1つずつ設定してください。そうしないと、既存の問題が自動的に繰り返されるだけです。Wi-Fiの条件を設定するときは、ネットワーク名を正確に確認してください。似た名前、同じ名前のネットワーク、ネットワークの切り替え中の動作によって、現象の解釈が変わる場合があります。
複数の条件がある場合は、現在のアプリの説明に従って一致の順序と動作を確認し、互いに矛盾するルールを重ねないようにしてください。初回設定では確認しやすい条件を1つだけ残し、ネットワークを切り替えた後に想定どおり動くか確認してから条件を追加します。接続を手動でオフにしてもすぐ戻る場合は、自動トリガーの条件がまだ満たされていないか確認してください。対処時は該当する条件を一時的に無効にし、手動操作に戻すと現象が解消するか確かめます。
On Demandが自動化するのは接続のタイミングであり、サービスが利用できるかどうかではありません。ネットワークが変わった後も、正しいサーバー、有効な認証情報、適切なルールが必要です。自動接続はこれらの条件の代わりにはなりません。
ドメインを使ったトリガー条件と、通常のルール振り分けも区別してください。前者は接続を確立するタイミング、後者は接続後のリクエスト処理を決めます。あるドメインがルールに含まれているからといって、必ず接続が開始されるとは限りません。条件の詳しい例はOn Demandによる条件付き接続の説明をご覧ください。外出先やネットワークの切り替え前に、自動トリガーを一時的に停止する方法を確認しておくと、認証が必要なネットワークで先に接続手続きを完了できます。
必要なときだけ高度な機能を有効にし、元に戻せるようにする
通信、ログ、接続維持など、高度な動作に関する項目は、用途が明確な場合にのみ調整してください。証明書やHTTPSの復号に関する機能は、信頼の適用範囲を個別に理解する必要があります。明確な許可と必要性がある環境だけで使用し、通常のサブスクリプションを追加するために必要な手順ではありません。一般的な接続エラーの解決を目的に、証明書をむやみにインストールしたり、検証条件を緩和したりしないでください。高度な設定を変更して問題が増えた場合は、まず元の値に戻して基本接続を確認してから、該当機能について調べるか判断します。
設定変更が完了したと言えるのは、変更の目的を説明でき、再現可能な結果を確認でき、元に戻す方法も把握できている状態です。改善を説明できない場合は、さらに設定を追加しないでください。最終的に有効だった設定を自分用の基準記録に反映し、日常利用では必要な自動化と診断機能だけを残します。次章では、更新、バックアップ、トラブルからの復旧を定期的に行う手順を確認します。
アップデート、バックアップ、機種変更、復元の手順
頻繁に設定を作り直すより、設定の出所を追跡でき、変更を元に戻せて、問題を再現できる状態にしておくことが大切です。
アプリのアップデートとサブスクリプションの更新を分ける
アプリのアップデートはApp Storeから行い、主にクライアント自体を更新します。サブスクリプションの更新は、ご自身がすでに利用しているサービスからサーバーリストを再取得する操作です。両者は別のものです。サブスクリプションの更新に成功してもアプリがアップデートされたことにはならず、アプリを更新してもサービス情報の有効性が保証されるわけではありません。日常的にはApp Storeのアプリの状態と、ご自身のサブスクリプションの状態を別々に確認してください。確認できていないバージョン情報を追いかける必要はありません。問題の対処中に更新する場合は、更新前に再現条件を記録し、比較材料を失わないようにしましょう。
サブスクリプションの更新頻度は、利用中サービスの案内と実際の必要に合わせてください。1回のリクエストが遅かっただけで、何度も続けて更新する必要はありません。更新後は、選択中の項目が残っているか、名称が変わったか、ルールから参照されるポリシーに影響がないかを確認します。リストの更新に失敗しても既存の項目が使える場合は、取得処理の問題を調べる前に、まず現在の動作状態を維持してください。通常の利用とメンテナンス作業を分けることで、接続が必要なときに一度の整理で利用可能な情報をすべて失うのを防げます。
アプリだけでなく必要な情報もバックアップ
アプリの購入履歴、サーバー情報、サブスクリプションURL、ルール設定は、それぞれ別のものとして扱います。App Storeからアプリを再入手できても、ローカルの内容がすべて自動で復元されるとは限りません。デバイスのバックアップでどこまで復元できるかも、実際の復元結果を確認してください。機種変更前に、アプリのエクスポートまたはバックアップ機能を確認し、必要な設定が含まれるか確かめます。手動で追加した項目は、表示名だけでは接続を再設定できないため、元の情報を保管しておくことが特に重要です。
バックアップにはパスワード、サブスクリプションの認証情報、その他の接続パラメーターが含まれる場合があるため、ご自身で管理できる保護された場所に保管してください。設定全体を公開メモ、共有フォルダー、トラブル相談に掲載しないでください。バックアップには用途と設定名を付け、利用できることを確認済みの版を少なくとも1つ残しておきましょう。ルールを大幅に変更する前に、元の内容をエクスポートしてください。バックアップの有効性はファイルが存在するかではなく、必要な情報を読み出して復元できるかで決まります。適切なタイミングで、保存範囲を確認してください。
機種変更後は依存関係に沿って復元
新しいデバイスでApp Storeを開き、以前の購入履歴と商品情報を確認してから、ストアの条件に従ってアプリを入手します。システム要件、ユニバーサル購入、ファミリー共有の適用条件は、すべてApp Storeの商品ページの記載を基準にしてください。次に、ご自身のサーバーまたはサブスクリプション情報を復元し、ルール設定を戻してから、システムのVPN構成の許可を再確認します。新しいデバイスでは個別に権限の案内が表示される場合があります。以前のデバイスで許可済みでも、この手順を省略しないでください。購入済み項目の復元手順は購入済みアプリの復元方法をご覧ください。
復元後すぐにすべての自動トリガーや高度な設定を有効にしないでください。まず既知の項目を1つ手動で選択し、接続と普段使う宛先へのアクセスを確認します。Configで正常に振り分けられることを確認してから、On Demandを再設定してください。デバイス名、Wi-Fi環境、システム設定、アプリの権限は以前のデバイスと異なる場合があるため、まったく同じ設定でもトリガー条件の動作が変わることがあります。移行中に問題が起きたら、すべてを最初からやり直すのではなく、直近で検証済みの段階に戻ってください。
決まった手順で問題から復旧
日常の不具合は、次の4段階で対処できます。基本ネットワークの確認、現在の選択内容の確認、直近の変更の確認、動作確認済みの状態への復帰です。まずWi-Fiの認証とネットワーク自体の利用可否を確認します。次にサーバー、設定、Global Routingを確認します。その後、サブスクリプションの更新、ルールの変更、自動トリガーの有効化などを最近行っていないか調べます。最後に、関連する変更だけを元に戻してください。証拠を残しながら、関係のない操作を減らせます。対象が破損したことが明らかで、復元情報もある場合に限り、削除して作り直すことを検討してください。
問題が特定のネットワークでのみ起きる場合は、設定を変えずに、利用可能な別のご自身のネットワークで比較します。1台のサーバーだけ異常な場合は、他の項目を残したまま該当サーバーの情報を確認します。特定の宛先だけ失敗する場合は、リクエスト記録と関連ルールを確認してください。サービスの利用資格や通信量の問題は、利用中のサービスのサポート窓口に問い合わせます。購入履歴の問題はApp Storeのアカウント記録から確認してください。問題に応じた窓口で対応し、アカウント側の問題をアプリの設定で解決しようとしないでください。
復旧時の基準記録には、利用可能なサーバーの出所、設定名、Global Routingのモード、必要な設定、最後に正常動作を確認した操作を残します。認証情報は別に保護し、公開のトラブル記録には書かないでください。
試行錯誤を繰り返さず、簡潔に記録
メンテナンスのたびに、変更内容、変更理由、比較に使った操作、結果、復旧方法を記録してください。未確認の推測を確定したルールのように残したり、一時的に成功しただけで既存のバックアップを削除したりしないでください。重複項目や不要な記録を定期的に整理するときは、現在の依存関係を確認します。特に、サブスクリプションから作成された項目と手動で追加した項目を区別してください。整理の目的は混乱を減らすことであり、リストを短く見せることではありません。
これで一連の使い方を確認できました。App Storeで商品と購入を確認し、システムの許可で接続を認め、ご自身の情報からサーバーを追加し、Global Routingで処理方法を選び、実際のアクセスで結果を確かめます。Dataと記録で状況を確認し、Settingsで具体的な問題に対処し、メンテナンス手順で復元できる状態を保ちます。短い手順を最初から確認したい場合は入門ガイドを、設定の仕組みを確認したい場合は本ページの目次から該当する章を参照してください。正常に動作している箇所を一から作り直す必要はありません。