01 / VPN設定と接続状態
接続スイッチがオンにならない、またはすぐに切断される
許可されていない状態と、接続後に切断される状態を区別する
Homeで接続スイッチをオンにしたら、まずシステムがVPN構成の追加を求めるか、許可前にスイッチが反応しないのか、短時間接続した後にNot Connectedへ戻るのかを確認してください。この2つは問題の発生箇所が異なります。前者ではシステムの許可を、後者では現在の設定で接続を開始できるかを確認します。サーバー一覧をすぐに削除しないでください。発生時刻、使用中のネットワーク、画面に表示されたメッセージ全文を記録しておくと、システムの確認を完了していない状態をサーバーの障害と誤認せず、後から状況を再現しやすくなります。
初めてVPN構成の追加を許可する場合は、システムのダイアログで確認し、デバイスの指示に従って認証を完了してください。以前に要求をキャンセルした場合は、Shadowrocketに戻ってもう一度操作し、アプリが前面に表示されていることを確認します。次に、システムのSettingsでVPNを検索し、該当する構成があるか、ほかの接続が有効になっていないかを確認してください。メニューの場所はシステムによって異なるため、デバイスに表示される項目に従ってください。管理対象デバイスでは組織のポリシーによって変更が制限される場合があります。その際は、まずデバイス管理者に権限の範囲を確認してください。
変更を最小限にして接続環境を復旧する
まず現在の接続を切り、ほかに有効なVPNやネットワークフィルタリング機能がないか確認してください。複数の機能が同じ接続環境を取り合うのを防ぐため、一度に停止するのは一つだけにし、テスト後は元の状態に戻します。自宅のWi-Fiでは接続できるのに、別のネットワークでは接続できない場合は、そのネットワークでWeb認証が必要か確認してください。公共ネットワークのログインが完了していないと、接続要求が失敗し続けることがあります。接続を切った状態でネットワークへのログインを済ませてから再試行してください。ログインページが開かないことだけを理由に、設定が壊れていると判断しないでください。
必要な項目がそろったサーバー設定が一つあることを確認し、現在選択されている項目がまだ存在するかを確認してください。サブスクリプションの更新やグループの削除後、選択内容が変わっている場合があります。設定項目の誤りが明示された場合は、スイッチを何度も操作するのではなく、最近変更したファイルをメッセージに沿って確認してください。追加したRule、Rewriteなどの任意設定は一時的にバックアップ時の状態に戻し、基本的な接続条件を残します。これにより、問題が起動時の設定にあるのか、接続先にあるのかを切り分けられます。正常だった項目まで一緒に変更してしまうことも防げます。
システムに古いShadowrocketのVPN構成が残っている場合は、アプリ内の設定をバックアップしてから接続を停止し、該当するシステムVPN構成を削除して、アプリに戻って許可を求め直す方法があります。これはシステムの接続記録を整理する操作であり、サブスクリプションの内容を復元するものではなく、ローカルデータの復元を保証するものでもありません。アプリの削除を最初の手段にしないでください。バックアップがないまま再インストールすると、サーバー、ルール、診断に必要な情報も失われ、比較しながらの調査が難しくなることがあります。
スイッチが自動で切り替わる場合は発動条件を確認する
手動でオフにした後に自動で接続されたり、ネットワークの切り替え時に状態がすぐ変わったりする場合は、On Demandが有効になっていないか確認してください。On Demandは設定済みの条件に基づいて動作するため、手動スイッチを一度操作した結果とは分けて考えます。基準を確認するため、条件を記録して一時的に無効にし、手動での接続と切断をそれぞれテストしてください。状態が安定したら、条件を一つずつ戻します。特に、指定したWi-Fi、モバイル通信、ドメインによる発動条件の間で、相反する動作が設定されていないか確認してください。条件の詳細はOn Demandの設定方法をご覧ください。
02 / 基本ネットワークとルーティング設定
接続中と表示されるのにインターネットを利用できない
まず接続を切った状態でアクセスできるか確認する
接続アイコンは、システムがVPNセッションを確立したことを示すもので、アクセス先への要求が成功した証明ではありません。まず接続を切り、現在のネットワークから直接アクセスできると分かっているWebサイトを開き、別のドメインも一つ開いて比較してください。接続を切った状態でもアクセスできない場合は、まずWi-Fiへのログイン、モバイル通信の電波、ルーター、デバイスのネットワークの問題を解決します。この段階では、Ruleやサーバー設定を変更しても、ネットワーク自体の切断は直りません。すべてのアプリで失敗するのか、ブラウザーだけか、特定のアプリやWebサイトだけかを記録してください。範囲を具体的にすると、次のテストが有効になります。
再接続後、先ほどと同じ2つのアクセス先を使って再テストしてください。ネットワークとテスト対象を同時に変えないようにします。特定のWebサイトだけで失敗する場合は、同じサイトの別のページも試し、ログイン状態、アクセス先のメンテナンス、アプリのキャッシュの影響を切り分けてください。すべてのアクセス先で同時に失敗する場合は、Homeで選択中のサーバーが想定どおりか、最近の操作でGlobal Routingが変わっていないかを確認します。まず実際の選択状態を確認し、その後に設定ファイルの内容を確認してください。ファイルだけを見て現在のモードを見落とすと、適用されていないRuleを使用中のRuleと誤認することがあります。
3つのモードを使ってRuleの影響を切り分ける
| 画面上の表示 | 説明 | 確認に適した内容 |
|---|---|---|
| Config | Config | 現在の設定に基づいてルールを適用し、Ruleと最終処理を確認します。 |
| Proxy | Proxy | プロキシ経由の状態と比較し、ルールによる振り分けが問題に関係するかを確認します。 |
| Direct | Direct | Directの状態と比較し、現在のネットワークからアクセス先に到達できるかを確認します。 |
ProxyとConfigは比較テストとして使い、恒久的な修復用スイッチとして扱わないでください。Proxyでは復旧し、Configでは失敗する場合は、Ruleの適用、ポリシー名、現在のファイルを確認します。どちらでも失敗する場合は、サーバー、名前解決、接続先を引き続き調べてください。Directの詳細はDirectモードの説明をご覧ください。どのモードでもアクセス先のサービス自体が正常であるとは限りません。また、すべての通信がシステム上の例外動作を回避すると断定することもできません。実際の要求記録に基づいて判断してください。
ConfigではRuleの順序が結果に影響します。対象に対して、先行するDOMAIN、DOMAIN-SUFFIX、DOMAIN-KEYWORDがすでに一致していないかを確認してから、FINALを確認してください。前方にある広い条件に一致すると、後ろにある詳細なRuleが適用されないことがあります。例は最小限の振り分け構成を説明するためのもので、example.comは実際のサービスを示すものではありません。コピーする前に現在のファイルをバックアップし、アプリで選択中のファイルが編集対象と同じか確認してください。説明用の例を、必要な設定を含む完全な構成ファイルにそのまま上書きしないでください。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
要求記録から問題の発生箇所を確認する
アプリで確認できる接続記録や診断記録から、実際に要求を送ったときの対象ドメイン、使用されたポリシー、エラー原因を確認してください。REJECTに一致した場合は、意図した拒否かどうかを確認します。DIRECTになっているのに対象へのアクセスに既存のプロキシ接続が必要な場合は、Ruleの方向を修正します。PROXYを経由しているのに失敗する場合は、サーバー接続を調べてください。該当する要求記録がない場合は、対象アプリが実際にネットワーク要求を送ったか、古いキャッシュページを表示していないかも確認します。画面の読み込み中表示だけで、データが現在の接続を通過したと判断しないでください。
復旧確認では、接続を切るテストと再接続のテストをそれぞれ一度行い、少なくとも異なる2つのドメインにアクセスしてください。ブラウザーは正常でも特定のアプリで問題が起きる場合は、そのアプリのネットワーク権限、モバイルデータ通信の許可、ログイン状態を確認します。すべてのドメインをすぐに同じポリシーに変更しないでください。特定のWi-Fiだけで再現する場合は、ほかの条件を維持したままネットワークを切り替えて比較します。最後に普段使うConfigに戻し、Ruleが本来の用途を満たしていることを確認してください。一時的なProxyで成功しただけでは完了とはいえません。もともと確認する必要があった振り分け経路を迂回しているためです。
03 / サーバーとプロトコルの接続
サーバーがタイムアウトする、接続がリセットされる
テスト結果と実際のサービス利用を分けて考える
Connectivity Testの結果は、指定したテスト方法と対象における一度の観測です。タイムアウトの原因には、サーバーに到達できない、テスト先が応答しない、プロトコルのハンドシェイクに失敗する、現在のネットワークが該当する通信に影響しているなど、複数の可能性があります。まず実際に使っているテスト方法と対象の設定を確認し、Webページへのアクセスでも比較してください。一度のテスト失敗だけで、利用中のサーバーが無効だとは判断できません。反対に、テストで数値が表示されても、ログイン、動画再生、その他のサービスが正常に利用できるとは限りません。テスト結果と実際の利用結果は、それぞれ異なる点を確認しています。
サーバーのアドレスとポートが、自分でお持ちの有効な情報と一致しているかを確認してください。コピー時に空白、改行、全角の句読点が混入していないかも確認します。アドレス欄には通常、ホスト名またはアドレスを入力します。サブスクリプションのURL全体を誤って入力しないでください。また、接続先のアドレス、TLSのサーバー名、転送層のHostは区別して確認します。設定によっては異なる値を使いますが、サーバー側の指定と一致している必要があります。見た目をそろえるために3つの項目を同じ値に変更すると、正しいルーティングや証明書の検証条件を損なうことがあります。
プロトコルごとに関連する項目をまとめて確認する
| プロトコル | 優先して確認する項目 | よくある注意点 |
|---|---|---|
| Shadowsocks | アドレス、ポート、暗号化方式、パスワード | 暗号化方式とパスワードはサーバー側の設定と一致している必要があります。 |
| VMess / VLESS | 識別情報、転送方式、TLS、追加パラメーター | アドレスが同じでも、設定が同等とは限りません。 |
| Trojan | パスワード、TLSサーバー名、ポート | 接続先アドレスと証明書名は異なる場合があります。 |
| Hysteria2 | 認証情報、TLS、UDPの到達性 | 現在のネットワークが必要な通信に影響している可能性があります。 |
設定を確認するときは、複数の記録から項目を寄せ集めるのではなく、一つの設定全体を元の情報と照らし合わせてください。転送方式、パス、Host、TLSの組み合わせには依存関係があることが多く、そのうち一つだけ変更すると、接続後すぐに切断される場合があります。サブスクリプションからインポートした記録は、まずサブスクリプション内の該当項目を確認してから、手動編集が必要か判断してください。VMessなどの用語は用語集をご覧ください。この表は確認の順序を示すもので、プロトコル設定の全項目を網羅するものではありません。
証明書に関するエラーでは、デバイスの日付と時刻が正確か、ネットワーク認証が未完了でないか、サーバー名が正しいかも確認してください。証明書の検証を無効にする方法を一般的な修復策として使わないでください。アドレスの入力ミス、証明書の期限切れ、名前の不一致を見逃すおそれがあります。既存の情報で特定の名前が指定されている場合は、元の情報の提供元に正しい値を確認してください。デバイスの時刻と名前を確認してもエラーが続く場合は、エラーの種類と発生したネットワークを記録し、サーバーの管理者に証明書チェーンとサーバー側の待ち受け状態を確認してもらってください。
ネットワークを比較して接続先の問題を絞り込む
予期しない通信料金が発生しない範囲で、同じサーバー、同じテスト対象を使い、Wi-Fiとモバイル通信だけを切り替えてください。一方のネットワークでのみタイムアウトする場合は、そのネットワークの名前解決、通信制限、経路に関係する可能性が高くなります。複数のネットワークで失敗する場合は、接続先のサービス状態と認証情報を確認してください。一部のプロトコルはUDPに依存します。Webサイトに直接アクセスできても、その通信方式が使えるとは限りません。根拠のないままポートや転送方式を変更しないでください。サーバー側との対応が必要な項目です。
すでに複数の利用可能な設定をお持ちの場合は、正常と分かっている別の設定で一度だけ比較できます。ただし、その結果からサービス全体の品質を評価することはできません。連続して多数のテストを行うと、一時的な混雑と実際の設定ミスが混ざり、判断が難しくなります。調査後にサーバー管理者へ連絡する場合は、プロトコル、エラーが発生した段階、ネットワークの種類、個人情報を除いたエラーメッセージを伝えてください。パスワード、完全な識別情報、サブスクリプションURLを公開画像に含めないでください。認証は成功しているのに特定のアクセス先だけ失敗する場合は、認証項目を繰り返し入力するのではなく、ルールとDNSの章に戻ってください。
04 / Subscribeの取得と内容の解析
サブスクリプションを更新できない、一覧に問題がある
取得の失敗と解析の失敗を区別する
既存のサブスクリプションの更新には、アプリによるドメインの名前解決、接続、応答の取得、内容の読み取り、認識した項目の該当グループへの登録という複数の段階があります。更新失敗のメッセージが表示されたら、接続タイムアウト、認証エラー、内容を認識できない状態のどれかを確認してください。それぞれ対処方法が異なります。一覧が空になったからといって、すぐに元のグループを削除しないでください。以前の項目が引き続き使える場合があり、削除すると再取得できないことがあります。実行する前に、元の項目数、現在の選択、最後に正常に使えたときの状況を記録してください。
サブスクリプションのアドレスが、自分でお持ちの情報から完全にコピーされているか確認してください。特に、URLの末尾が切れていないか、クエリパラメーターが失われていないか、チャットの文章や改行が付いていないかを確認します。アドレスによってはアクセス認証情報を含むため、公開の掲示板、オンライン解析サイト、スクリーンショットに貼り付けないでください。似たアドレスでも、同じ権限があるとは限りません。元の情報の提供元が認証情報を再発行している場合は、確認済みの新しいアドレスを使用してください。パスやパラメーターを推測したり、認証エラーを回避する目的で値を適当に組み合わせたりしないでください。
応答の種類に応じて対処を選ぶ
権限不足、認証の失効、リソースが見つからないなどのメッセージが表示された場合は、まず元の情報の提供元に、アドレスの有効性、アクセス権限の変更、利用条件の有無を確認してください。この種の応答は、要求がサーバーに到達している可能性を示すため、ローカルのDNSを変更しても解決しないことがあります。応答がサブスクリプション内容ではなくWebページの場合は、ログインページ、ネットワーク認証ページ、案内ページに転送された可能性があります。ブラウザーでWebページを表示できても、アプリがサーバー設定として解析できるとは限りません。内容の種類とアプリのメッセージを併せて判断してください。
応答を取得する前に問題が起きている場合は、基本ネットワークとサブスクリプションのドメインの名前解決を確認してください。更新要求が実際にどのネットワーク経路を使っているかも確認します。通常のWebアクセスと同じ経路とは限りません。現在の設定が使えない状態で、その設定を使ってサブスクリプションを取得しようとすると、処理が循環してしまうことがあります。現在利用できる条件に基づいて、まず有効な接続経路を確保してから更新してください。取得に影響する条件は一度に一つだけ変更して結果を記録します。アドレス、サーバー、DNSを同時に変更すると、直ったとしても原因を特定できません。
内容を取得できても認識できない場合は、現在のインポート方法に対応する形式かどうか、元の情報の提供元に確認してください。Subscribe、個別のサーバーリンク、完全なConfigファイルは、相互に置き換えられる同じ種類のものではありません。構成ファイルのアドレスをサーバー用のサブスクリプション欄に入力すると、解析に失敗したり、一部の内容だけが読み込まれたりすることがあります。基本的なインポート手順は既存のサブスクリプションとサーバー情報のインポートをご覧ください。確認時は元の内容をバックアップし、形式エラーを新たに生じさせないよう、エンコードされた内容を手作業で削除・編集しないでください。
更新後に項目が減った場合の復旧方法
更新完了後は、Home全体ではなく同じグループ内の該当項目同士を比較してください。フィルター、グループの折りたたみ、並べ替えの変更で、一時的に項目が見えなくなっている場合があります。本当に項目がなくなったかを確認してから、元のサブスクリプション内容が変更されていないか確認してください。同期では通常、接続先から提供されるデータが使われます。ローカルで変更した名前や項目が維持されるかは、インポートや管理方法によって異なります。そのため、サブスクリプショングループだけを手動編集の唯一のバックアップにせず、重要な設定は別途安全に保存してください。
更新後に現在のサーバーが使えなくなった場合は、残っている項目の中から、設定がそろったものを選び直して接続をテストしてください。以前選択していた項目が変わっただけで、アプリ全体が使えなくなったと判断しないでください。復旧後は、グループが重複していないか、古いアドレスの自動更新が有効なままになっていないかを確認し、次回の更新で意図しない内容に置き換わるのを防ぎます。元の情報の提供元に問い合わせるときは、個人情報を除いたエラーと発生時刻の範囲だけを伝えてください。完全なアドレスの確認が必要な場合は、双方が認めた安全な連絡手段を使い、公開ログにアクセス認証情報を載せないでください。
05 / 通信速度、遅延、アクセス先の違い
接続は正常だが通信速度が遅い
「遅い」を比較できる状態にする
速度が遅いという症状には、ページを開くまでの待ち時間が長い、継続的な通信速度が低い、動画が何度もバッファリングする、操作中の要求が時々止まるなど、少なくとも複数の種類があります。原因が共通とは限りません。具体的なアプリ、アクセス先のドメイン、ネットワークの種類、遅くなる段階を記録し、同じアクセス先で少数回のテストを繰り返してください。Connectivity Testの数値は、主にそのテスト条件での結果であり、実際の通信速度と同じではありません。テスト応答が速い設定でも、実際のアクセス先までの経路が混雑することがあります。日常的に使う接続先を一つのテスト結果だけで決めないでください。
まず接続を切り、基本ネットワークが安定しているか確認します。Wi-Fiの電波強度、ルーターの負荷、ほかのデバイスが大量の通信を行っていないかを確認してください。モバイル通信は電波、場所、ネットワークの切り替えにも影響されます。テスト中はデバイスの位置とネットワークを固定し、帯域を大きく使う同期処理を一時停止してください。基本ネットワークの状態が不安定な場合は、まず安定させてからプロキシ経路を評価します。そうしないと、テスト結果の違いが変更した設定ではなく、無線環境の変化によるものかもしれません。
名前解決の待ち時間と継続的な通信の問題を区別する
特定のドメインを初めて開くときだけ遅く、読み込み開始後は安定して通信できる場合は、DNSと接続の確立段階を優先して確認します。ページ内の文字はすぐ表示されるのに、画像や動画の読み込みが遅い場合は、アクセス先までの経路、接続先の負荷、実際の振り分け結果を確認してください。種類の異なるページを比較する場合は、ページごとのデータ量も異なる点を考慮します。軽いページが速く開いたからといって、すべて復旧したとは限りません。ブラウザーのキャッシュでも体感が変わるため、初回アクセスかキャッシュ済みの内容かを記録して再テストしてください。
Configで、遅い要求が想定したポリシーを使っているか確認してください。ページによっては複数のドメインに同時アクセスします。メインサイトがPROXYを使い、リソースのドメインがDIRECTになっていると、本文は表示されても画像の読み込みが止まることがあります。実際の要求記録から失敗しているリソースのドメインを特定し、必要なRuleを追加するか判断してください。範囲を広げるためだけにDOMAIN-KEYWORDを使うと、無関係なアクセス先にも影響し、不要な迂回が生じることがあります。特定サイトのRuleの書き方はDOMAIN-SUFFIXとFINALの例をご覧ください。
ProxyとConfigの両方で速度が遅い場合は、テスト対象を変えず、同じネットワークで自分がすでにお持ちの別の有効な設定と比較してください。結果から分かるのは今回の経路に違いがあることだけで、長期的な品質は判断できません。サーバーの負荷、アクセス先の速度制限、ネットワーク間の経路は時間とともに変化します。大容量のテストを繰り返すとデータ通信量が増え、ほかの要求にも影響します。必要な情報を得るための回数にとどめてください。継続的に測定する場合は、まず自分の通信条件を確認し、調査自体が新たな帯域消費にならないようにします。
根拠のないパラメーター変更で原因を探らない
接続が長時間止まる、大きなデータの一部だけ失敗し小さな要求は正常、といった場合は、経路や転送条件をさらに確認できます。ただし、MTU、同時接続数、プロトコルのパラメーターをむやみに変更しないでください。これらはネットワークとサーバー側の条件に左右され、値を小さくしても大きくしても副作用が生じることがあります。まず初期値または正常と分かっている値を維持し、問題が特定のネットワークだけで起きるか記録してください。明確なエラーの手がかりが得られた場合や、管理者から適合する値が示された場合に限り、一項目ずつ比較し、すぐ戻せるよう元の値を保存します。無関係な状況の設定をそのまま流用しないでください。
デバイスの発熱、低電力モード、バックグラウンド同期、アクセス先アプリのデコード処理によって、「ページの動作が重い」状態がネットワークの遅さに見えることもあります。別のアプリで同じような種類のコンテンツにアクセスし、ネットワーク待ちなのか画面操作の遅れなのかを比較してください。特定のアクセス先だけが常に遅く、ほかは正常な場合は、アクセス先のサービス状態も考慮し、クライアント設定を際限なく変更しないでください。修復後は、普段使うページ、継続的な通信、ネットワークの切り替えを確認し、短時間のキャッシュ効果ではないことを確かめてから、日常の設定とバックグラウンドタスクを元に戻してください。
06 / ドメインの名前解決と接続先
DNSの名前解決に失敗する、Webページが開かない
名前解決が成功してもアクセスできるとは限らない
DNSはドメイン名を接続に必要なアドレスへ変換します。この処理は多くのサービスへの接続に先立って行われます。サーバーテストに結果が表示されるのにWebページが開かない場合、DNSが関係している可能性はありますが、それだけでは原因を特定できません。テストとWebアクセスでは、対象や名前解決の経路が異なることがあります。また、Webページの失敗は後続のTLS接続やリソースの取得段階で起きる可能性もあります。まず失敗した要求のメッセージを確認してください。ドメインの名前解決結果が得られない、名前解決要求がタイムアウトする状態と、アドレスが得られた後に接続できない状態は別の問題です。後者はDNS設定を変えるだけでは解決できません。
問題が特定のドメインだけか、多数のドメインで起きているかを確認してください。一つのドメインだけ名前解決できない場合は、ドメイン自体のDNSレコード、入力ミス、一時的な障害を考慮します。互いに無関係な複数のドメインで同時に失敗する場合は、現在のDNS設定とネットワークを確認してください。ブラウザーにサーバーのアドレスを直接入力して、完全なドメイン名の代わりにしないでください。HTTPSの接続先では通常、証明書の検証やサイトの選択にドメイン名が必要です。アドレスにアクセスできない、または証明書の警告が表示されるだけでは、元のドメインが正しく名前解決されたとはいえず、証明書検証を無効にする理由にもなりません。
GeneralとHostで実際に適用されている値を確認する
予備の別ファイルを編集するだけでなく、現在のConfigファイルのGeneralセクションでdns-serverを確認してください。次の断片は、システムが提供する名前解決を使う基本的な書き方を示し、項目の位置を説明するものです。すべてのネットワークに適した設定とは限りません。systemはシステムから提供される名前解決環境を使用するため、公共ネットワーク、自宅のルーター、モバイル通信で結果が異なることがあります。変更後に現在のファイルと接続状態を再確認しないと、新しい設定が無効だと誤解することがあります。実際には要求が古い設定やキャッシュ結果を使っている可能性があります。
[General]
dns-server = system
[Host]
localhost = 127.0.0.1
Hostセクションに対象ドメインの静的アドレスが設定されていないかも確認してください。静的マッピングがあると、通常のDNS問い合わせでそのドメインのアドレスが決まりません。古いアドレスが無効になっている場合、dns-serverだけを変えても何も変わらないことがあります。疑わしいマッピングを一時的に削除する前に元の内容を保存し、必要な内部アクセスに使われていないか確認してください。修復のために他人のアドレスをHostへ直接追加しないでください。対象のアドレスは変更されることがあり、サービスの提供地域によって異なる場合もあります。Configの構成について詳しくはConfigファイルの各セクションをご覧ください。
暗号化DNSを使う場合は、名前解決サーバー自体にも到達できる必要がある点を確認してください。ホスト名の最初の名前解決、接続経路、証明書の条件が満たされないと、名前解決の処理を開始できないことがあります。信頼性を高めるために複数の方法を同時に追加しないでください。まず、信頼でき、現在のネットワークから到達できると分かっている名前解決先を一つ確認し、要求がプロキシを経由する必要があるかを理解します。異なる名前解決先を混在させると、同じ対象に異なるアドレスが返され、テストごとに結果が変わって調査が難しくなることがあります。まず、単一で説明可能な基準を用意してください。
再テストではキャッシュとアドレスファミリーを考慮する
名前解決設定を変更した後は、アプリで利用できる方法に従って関連キャッシュを更新するか、接続を停止してから再接続し、要求を再送してください。ブラウザーや対象アプリが既存の接続を保持している場合もあるため、ページの再読み込みだけでは新しい名前解決が行われないことがあります。IPv4とIPv6で結果が異なる場合は、実際にどちらのアドレスファミリーへ接続したか、現在のネットワークから到達できるかを確認します。一度のテスト失敗だけで、関連機能をすべて無効にしたままにしないでください。問題が現在のネットワークや特定の対象に限られるかを先に確認します。
名前解決でアドレスが返されたのに要求が失敗する場合は、接続経路、TLSの名前、Ruleの一致を確認してください。Proxyでは成功しConfigでは名前解決に失敗する場合は、名前解決要求と対象への通信がそれぞれ利用できない経路へ進んでいないかを確認します。復旧後は複数の異なるドメインを選び、接続を切ってから再接続してテストし、キャッシュに残った成功結果だけを確認しないようにしてください。詳しくはDNSの名前解決失敗を調べる方法をご覧ください。報告するときはエラーの種類を残し、個人のアクセス履歴や認証情報を含む記録は取り除いてください。
07 / 使用時間と接続の繰り返し
バッテリー消費の増加とデバイスの発熱
同じ条件でバッテリー消費を比較する
システムのバッテリー画面に表示されるアプリの使用割合は、選択した期間の集計であり、あらゆる状況での固定的な消費量を示すものではありません。使用時間、画面の点灯時間、ネットワーク環境、ほかのアプリの動作によって割合は変わります。まず使用量とネットワークが近い時間帯同士で比較し、大量のデータ通信、接続の繰り返し、デバイスの継続的な発熱がないかを確認してください。割合が増えただけで異常とは限りません。ほかのアプリの使用が減ると、同じ動作でも全体に占める割合が高くなります。
設定変更、サブスクリプション更新、ネットワーク切り替え、アプリ更新のどれが発生した後から消費が増えたかを記録し、画面点灯中と待機中を区別してください。待機中に継続的なネットワーク通信がある場合は、写真の同期、ファイル転送、動画や音楽の再生などのタスクが接続を使っていないかを確認します。クライアントがほかのアプリのデータを処理すると負荷は発生しますが、実際に通信を発生させているのはバックグラウンドタスクの場合があります。確認時は、明らかな大容量通信を一時停止してから接続が安定するか観察してください。統計の項目名だけから消費の原因全体を判断しないでください。
On Demandとネットワークの頻繁な切り替えを確認する
Wi-Fiの電波が弱いとモバイル通信との切り替えが繰り返され、ハンドシェイクや接続の再確立が何度も発生することがあります。On Demandのルールで2つのネットワークに異なる動作が設定されている場合、切り替え時に状態がさらに変化します。まず電波の安定した場所で一つのネットワークに固定して比較し、自動で接続する条件を記録して一時的に無効にしたうえで、待機中の動作が大きく変わるか確認してください。テスト後は必要なルールを戻します。バッテリー消費を減らすために、必要な接続条件を永久に削除するのではなく、再発を引き起こしているネットワークやルールの組み合わせを特定してください。
サーバー認証が繰り返し失敗したり、接続先から何度も切断されたりすると、デバイスが復旧を繰り返すことがあります。まずサーバーのタイムアウトの章に沿って問題を解決してから、バッテリー消費を評価してください。画面をロックしただけでは、誤った認証条件は直りません。記録に短時間で同じエラーが繰り返し表示されていないか、ネットワークを切り替えた後に毎回発生していないかを確認してください。規則的な再試行のほうが、一度だけの電池残量の変化よりも問題を把握する手がかりになります。必要であれば現在の接続を停止し、成功の見込みがない状態で再試行が続かないようにして、個人情報を除いた記録を一定時間分保存してください。
調査自体が発生させる余分な動作を減らす
Connectivity Testの一括実行、サブスクリプションの頻繁な自動更新、詳細な接続記録の継続は、調査中の通信量や処理負荷を増やすことがあります。問題を特定するのに必要な範囲で診断レベルを有効にし、手がかりを得たら普段の設定に戻してください。バッテリー消費を調べるために複数のテストを同時に繰り返したり、多数の対象ページを続けて再読み込みしたりしないでください。一時的なタスクを停止した後に正常化した場合は、まずテスト頻度を調整します。安定して使えていたプロトコル設定まで変更する必要はありません。診断時の負荷と日常的な接続負荷は分けて評価してください。
デバイスの発熱は性能にも影響し、Webページの動作が遅く見えることがあります。大容量通信を停止し、デバイスが通常の温度に戻ってから比較してください。充電状態、画面の明るさ、周囲の温度も観察結果に影響するため、できるだけ条件をそろえます。本体の表面温度だけで特定の部品が故障したと判断しないでください。接続を切っても異常が続く場合は、システムのバッテリー画面でほかの動作を確認し、デバイスのシステムが案内する手順に従ってください。デバイスのバッテリーに関するすべての問題を、特定のネットワーク設定のせいにしないでください。
復旧の確認では、通常の使用を一度行い、それに近い条件で一定時間待機させて観察してください。特定の数値まで割合が下がることではなく、接続の繰り返しが止まり、バックグラウンドタスクが想定どおりに動作し、同じ使い方で異常な発熱が再発しないことが目安です。報告時には統計の期間、ネットワークの種類、On Demandの使用状況、大量のテストを行ったかを伝えてください。アクセス先のドメイン、サーバー情報、個人の利用状況が含まれる可能性があるため、接続記録をそのまま公開しないでください。異常が起きた時刻の前後で必要な部分だけを保存します。
08 / 設定の復元と変更の切り分け
アップデート後に接続の問題が発生した
何が更新されたのかを確認する
「更新後に使えなくなった」という状態は、アプリの更新、システムの更新、サブスクリプションの同期、Configファイルのリモート更新など、異なる原因を指すことがあります。一つの出来事として扱わないでください。最近の操作を時系列に並べ、問題が初めて発生した時点で何が変わっていたかを記録します。アプリとサブスクリプションを同じ日に更新しても、どちらが原因かは判断できません。現在のエラー、元の設定のバックアップ、再現手順を残し、接続スイッチ、サーバー、アクセス先をそれぞれ確認してください。すべての設定をすぐに戻して、原因の手がかりを失わないようにします。
アプリの入手とアップデートはApp Storeから行ってください。製品を再確認する場合は、正規品の確認方法に従い、デベロッパ名Shadow Launch Technology Limited、公式アイコン、アプリID 932747118を確認します。互換性とシステム要件はApp Storeのページでご確認ください。ネットワークの問題を修復する手順として、再購入を行わないでください。購入記録とローカルのサーバー設定は別々に管理されます。再インストールも設定のバックアップにはなりません。実行前に、自分が保有するサブスクリプション、サーバー設定、ルールファイルを復元できることを確認してください。
正常と分かっている最小限の設定に戻す
まずアプリを再起動し、Homeで現在選択されている項目を確認してから、Global RoutingとConfigが想定どおりか確認してください。基本的な接続は正常でConfigだけに問題がある場合は、自分で保存した正常なファイルと比較します。設定セクションの見出し、項目の位置、ルールの順序はすべて保ってください。新しいファイルへ数行だけ戻す方法は避けます。下の断片はルールの構造を確認するためのもので、完全な復元用ファイルではありません。例のドメインは自分のアクセス先に合わせて解釈し、既存の構成で必要なほかの項目の代わりに使わないでください。
[General]
bypass-system = true
dns-server = system
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY
最近URL Rewriteやその他の任意機能を追加した場合は、バックアップを基準に一つずつ無効にして、同じアクセス先で再テストしてください。任意機能と基本接続は分けて検証します。基本的な要求がすでに失敗している状態でRewriteの結果も同時に調べると、確認する条件が増えてしまいます。復元時も一つずつ有効にし、動作を変えた項目を確認してください。General、Rule、Host、URL Rewriteの役割についてはConfigファイルの構成を詳しく見るをご覧ください。異なるセクションの構文を代わりに使わないでください。
サブスクリプションの更新後に問題が起きた場合は、古い項目と新しい項目のプロトコル、アドレス、ポート、転送設定を比較し、現在選択中の項目が削除されていないかも確認してください。一覧の並べ替えだけが変わった場合は選択し直します。接続先から提供される内容自体が変わった場合は、すべての新しい設定を古い値に戻すのではなく、元の情報の提供元に確認してください。リモートのConfigファイル更新ではRuleや名前解決設定も変わることがあります。サーバーのサブスクリプションとConfigファイルの更新を別々に記録してください。変更対象を明確にすれば、適切なバックアップを選んで復元できます。
システム変更後の確認と報告
システムの更新後は、VPN構成が残っているか、システムの許可をもう一度確認する必要があるか、管理対象の設定が変わっていないかを確認してください。デバイスの再起動で一時的な状態が解消することはありますが、誤った項目の修正にはなりません。同じ設定が複数のネットワークで失敗する場合は、必要最小限の条件で再現してください。特定のネットワークだけで失敗する場合は、そのネットワークの認証、名前解決、転送を確認します。デバイスのネットワーク設定をすべて同時にリセットしないでください。保存済みの情報が消える可能性があり、実際の設定ミスに影響しないこともあります。
報告する場合は、「操作のきっかけ、期待した結果、実際の結果、再現条件、確認済みの要因」の順に整理してください。アプリ内に表示される実際のバージョン情報は、非公開の問い合わせで正確に伝えられます。ただし、特定のアップデートが必ず問題を修正する、または必ず問題を引き起こすと推測しないでください。ログには必要な範囲の個人情報を除いた部分だけを残し、認証情報とサブスクリプションURL全体は削除してください。復旧後は新しい正常状態のバックアップを保存してから、必要な自動更新を再開します。安定して再現できない場合は、時折発生する現象と明記してください。一度の再試行成功を恒久的な解決と扱わないでください。
09 / iPadのネットワークとマルチタスク
iPadの接続と復旧に関する確認
購入の復元と設定の移行を分けて考える
iPadで利用を再開する際は、App Storeに該当する購入記録を持つアカウントでサインインしていることを確認し、iPadでの入手方法に従ってください。システム要件と購入の互換性はApp Storeのページでご確認ください。アプリを再び入手できても、以前のデバイスのサーバー設定やConfigが新しいデバイスに自動で表示されるわけではありません。購入記録とユーザー設定は別のものです。初回起動後は接続スイッチをすぐにオンにして接続の失敗を確認するのではなく、既存のサブスクリプション、サーバー情報、ファイルがそろっているかを一つずつ確認してください。
別のデバイスから設定を移行する場合は、自分で保存した有効なバックアップ、またはすでにお持ちの情報を使って再インポートし、選択中のサーバー、Global Routing、現在のConfigを確認してください。グループ名が同じでも、内容が完全に同一とは限りません。特にアドレス、認証パラメーター、ルール末尾のFINALを確認します。サーバー一覧だけをインポートし、対応するルールファイルを移行していないと、Configでの動作が以前のデバイスと異なることがあります。まずはじめにに沿って基本接続を確立してから複雑なRuleを戻すと、任意設定をすべて一度に移すより不足項目を特定しやすくなります。
複数のウィンドウは独立した接続環境ではない
iPadのSplit Viewや複数ウィンドウを使うと、マニュアルとアプリを並べて確認できますが、システムのネットワーク接続状態は共通です。ウィンドウを切り替えたり、サイズを変えたり、ホーム画面に戻ったりしても、独立したVPNセッションが新たに作成されるわけではありません。調査ではブラウザーのウィンドウとテスト対象を一つに固定してください。別のウィンドウにキャッシュ済みページが残っていると、状況が食い違って見えることがあります。一方のウィンドウでは正常で、もう一方では失敗する場合は、要求記録を調べる前に、アクセスしたドメイン、ログイン状態、ページを実際に再読み込みしたかを比較してください。ウィンドウの違いだけでルーティングルールの問題と判断しないでください。
iPadにはWi-Fiのみのモデルと、モバイル通信に対応するモデルがあります。モバイル通信が使えないデバイスでは、利用する権限のある別のWi-Fiネットワークで比較できます。ただし、インターネット共有を使う場合は、上流のネットワーク自体も変わる可能性があります。サーバーとテスト対象を変えず、接続方法を記録してください。公共Wi-Fiでは、まず認証ページでの手続きを完了してください。画面ロック後に復帰するとアクセスできない場合は、システムのVPN構成をすぐに削除するのではなく、Wi-Fiが接続されたままかを確認してからVPNの状態を確認します。
画面ロック、バックグラウンドタスク、管理対象デバイス
画面ロック後にダウンロードが止まっても、接続の障害とは限りません。対象アプリのバックグラウンド動作の条件によって、タスクの継続時間が変わることがあります。まず画面のロックを解除し、ブラウザーで新しい小さな要求を送って接続できるか確認してください。新しい要求が成功しても元のタスクが再開しない場合は、元のアプリのタスク状態を確認します。新しい要求がすべて失敗する場合は、On Demand、ネットワークの切り替え、サーバーの再接続記録を確認してください。一つのファイル転送が停止しただけでシステム全体のネットワークが切断されたと判断したり、原因を隠すために画面を点灯し続けたりしないでください。
学校、企業、その他の組織が管理するiPadでは、VPN構成、証明書、ネットワークフィルタリング、設定変更の権限が制限されている場合があります。システムに管理対象であることが表示されているか確認し、許可されている使い方を管理者に確認してください。内容が分からない管理設定や証明書を試しに削除しないでください。必要な業務やデバイスの権限に関係している可能性があります。個人所有の一般的なデバイスでも、操作前に既存のシステム設定を記録し、影響範囲を確認してください。VPNを追加できない問題は認証の章に戻って確認します。サーバーの認証パラメーターを変更して解決しようとしないでください。
同じWi-FiでもiPadと別のデバイスで動作が異なる場合、Wi-Fiが同じだからといってデバイス側の違いを除外せず、システム時刻、DNS、現在のConfig、サーバーの選択を一つずつ比較してください。ブラウザーのプライバシー設定、保存済みのネットワーク条件、対象アプリの権限も、要求経路や動作に影響する場合があります。同じアクセス先に同じ操作を行ってテストし、まずアプリの実際の要求記録から違いを確認してください。異なるアプリのトップページ同士だけを比較しても、信頼できるネットワーク上の結論は得にくくなります。