公式ガイド · iPhone / iPad

Shadowrocket 使い方ガイド

設定の追加、ルーティング、接続、動作確認、トラブル対処の5段階で進めます。まず再現可能な接続を一度確立してから、詳細なルールや設定を調整してください。

  1. 01 追加
  2. 02 ルーティング
  3. 03 接続
  4. 04 動作確認
  5. 05 トラブル対処

利用可能な基本ネットワークを用意し、サービス提供元から受け取った情報をそのまま保管してください。サーバー、ルール、DNSを同時に変更すると、問題の原因を特定しにくくなります。アプリに既存の設定がある場合は、元のConfigとサーバー項目を残し、新しい設定が正常に使えることを確認してから整理してください。スクリーンショットは画面や項目を確認するためのもので、サーバー情報をそのまま入力するためのものではありません。

STEP 01 / IMPORT

Add Server:サーバーを追加する/サブスクリプションを読み込む

Shadowrocketを開き、Homeに移動します。初回利用時はSERVERのグループに項目がない場合があります。右上の追加ボタンをタップしてAdd Serverを開きます。次に、いずれか一つの方法で追加します。サブスクリプションURLがある場合はサブスクリプションの手順を、サーバー1台分の全項目がある場合は手動入力の手順を使います。サブスクリプションURLとサーバーアドレスは別の情報です。同じ項目に入力しないでください。

サブスクリプションURLがある場合:Subscribeを選択

Add ServerでTypeをタップしてSubscribeを選択し、自分のサブスクリプションURL全体をURL欄に入力します。見分けやすい名前を付け、コピー時に余分なスペース、改行、引用符が入っていないことを確認して保存してください。サブスクリプションURLにはアクセス情報が含まれることが多いため、機密情報として管理してください。公開の場に投稿したり、URL全体が写ったスクリーンショットを共有したりしないでください。

保存後、Homeに戻り、サブスクリプションの読み込みが完了するまで待ちます。正常に読み込まれると、サブスクリプションに対応するサーバー項目が表示されます。名前を確認し、以降のテストに使う項目を一つ選択してください。サブスクリプションのグループだけが表示され、サーバーがない場合は接続しないでください。URLを読み込めることとサービスが有効であることを確認してから、更新を試します。サブスクリプションはサーバー一覧を管理するもので、ルーティングに使うConfigが選択済みであることを意味しません。

サーバー情報がある場合:Typeに合わせて各項目を入力

手動で追加する場合は、まずTypeでサーバー情報に対応するプロトコルを選び、Host、Port、およびそのプロトコルで必要な認証情報を入力します。スクリーンショットにはPasswordやMethodなどが表示されていますが、入力フォームはTypeによって異なります。たとえばUUIDを使う設定に、Password用の入力方法は適用できません。TLS、通信方式、サーバー名なども元の情報と照合し、推測で値を補わないでください。

Hostにはサーバーのドメイン名またはアドレスを入力し、ウェブページのパスは付けません。Portは提供された情報どおりに入力します。PasswordやUUIDなどの認証情報は、大文字・小文字と前後のスペースに注意してください。その他の項目は、変更が明示されている場合にのみ編集します。QRコードを受け取った場合は、Add ServerでScan QR Codeを使って読み取り、保存前に認識された項目を確認してください。Import from Cloud JSONは別の設定ソースです。通常のサブスクリプションURLを入力しないでください。

この手順の確認ポイント:Homeに戻ったときにサーバー項目が表示され、選択中の項目が今回読み込んだ情報に対応していることを確認します。Type、Subscribe、Configの違いがわからない場合は、まず用語解説をご覧ください。項目がそろっていることを確認したら、次にGlobal Routingを選択します。接続設定をいくつも同時に変更しないでください。

ShadowrocketのAdd Server公式画面。Type、Host、Port、Password、MethodとQRコード読み込み項目を表示
Add Server:まずTypeを選択し、手元の情報に合わせて入力します。項目はプロトコルによって異なります。

STEP 02 / ROUTING

Global Routing:ルーティング方式とConfigを選択

サーバーを追加したらHomeに戻り、Global Routingをタップします。ここでは接続後の通信処理を指定します。SERVERでどのサーバーを選ぶかとは別の設定です。選択肢はConfig / Proxy / Directの3つです。テスト時に現在の選択を記録しておくと、後でアクセス結果と照合できます。

Config:設定ファイルのルールに従って通信を処理

ドメインやアドレスに応じて通信を振り分ける場合はConfigを使います。Configページを開き、使う設定ファイルが登録され、選択されていることを確認してください。設定ファイルを開くと、General、Rule、Hostsなどのセクションを確認できます。Ruleのルールによって、リクエストが一致したときの処理が決まります。設定ファイルをリストに読み込んだだけでは、現在の設定として使われているとは限りません。リストに戻って選択状態を確認してください。

使えるConfigが用意されていない場合、サブスクリプションを読み込めばあらゆる状況に合うルールが自動作成される、と考えないでください。既存の設定の入手元と用途を確認します。サーバーの到達性を初めて診断する場合は、比較のため一時的にProxyを使い、確認後にConfigへ戻す方法があります。ガイドの手順を進めるために既存ファイルを上書きする必要はありません。また、初回接続時にHTTPS Decryptionを有効にしたり、URL Rewriteを追加したりする必要もありません。

ProxyとDirect:通信経路を切り分ける

Proxyを選ぶと、クライアントが処理する通信にプロキシ経路を使います。サーバー自体が利用可能かを調べる際に役立ちます。ただし、すべてのアプリのすべてのリクエストを一括して確認できるわけではなく、サーバー側の機能確認に代わるものでもありません。Directは直接アクセスする経路です。Directを選んでウェブページが開いても、選択したサーバーが有効になっている証明にはなりません。比較する場合は、同じネットワークとテストページを使い、この項目だけを切り替えて結果の違いを記録してください。

ルールを確認するときは、まずマッチ条件、次に末尾のポリシーを見ます。以下はルール構文の例であり、現在のConfigを置き換えるための完全な設定ではありません。PROXYの実際の接続先は、設定内のポリシー定義と現在選択中のサーバーに対応している必要があります。

DOMAIN-SUFFIX,example.com,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY

ルールは通常、上から順に評価されます。前のルールに一致すると、後続のルールが評価されない場合があります。FINALは、前のルールに一致しなかった場合の処理に使います。そのため、同じサーバーでもConfigが異なると、ウェブサイトへのアクセス結果が変わることがあります。使い始めは検証対象を少数に絞り、条件を明確にしておきましょう。ルールの詳細な問題はトラブル診断をご覧ください。

この手順の確認ポイント:現在のGlobal Routingの方式を把握してください。Configを選んだ場合は、選択中の設定ファイルも確認します。この2点を記録してから、接続の許可に進んでください。

ShadowrocketのConfig公式編集画面。General、Rule、Hosts、URL Rewrite、HTTPS Decryption、Add Ruleを表示
Config:設定ファイルの内容を確認します。Global Routingの選択はHomeから行います。

STEP 03 / CONNECT

Home:サーバーを選択して接続する

Homeに戻り、SERVERの一覧から使用するサーバーを選択します。複数の項目がある場合、初回テストでは情報がそろっており、サービスが有効だと確認できているものを一つ選んでください。サーバーを何度も切り替えないでください。Global Routingが前の手順で選択した方式のままであることを確認し、Home上部の接続スイッチをオンにします。スクリーンショットのNot Connectedは未接続を示しており、サーバー名ではありません。

初めて接続するとき、iPhoneまたはiPadにVPN構成を追加するシステム確認が表示される場合があります。これはアプリでネットワーク接続を設定するために必要な許可手順です。表示内容を読み、直前にShadowrocketのスイッチを操作したことで表示されたことを確認してから、システムの指示に従ってデバイス認証を完了してください。確認をキャンセルした場合は、アプリに戻って接続を再度開始できます。スイッチがオンのままにならないからといって、すぐにサーバーを削除したり、すべての設定をリセットしたりしないでください。

システムの許可とサーバー認証は別のものです。前者はデバイスが該当するVPN構成を使うための許可であり、後者にはHost、Port、認証情報、サーバー側の設定が正しいことが必要です。許可が完了したらHomeに戻り、画面上部の接続状態が変わったか、スイッチがオンのままかを確認します。システムのVPN表示はデバイスのレイアウトや表示位置によって異なるため、ステータスバーの特定のアイコンだけで判断しないでください。

スイッチをオンにしてすぐオフになる場合は、システムの許可が完了しているか確認してください。また、接続を管理する別のVPN構成、デバイス管理の制限、On Demandの設定が影響していないか確認します。初回の手動確認中は、既存のOn Demand設定を記録し、自動接続による影響を避けてください。用途がわからないままデバイス上の別の構成を削除しないでください。特に管理対象デバイスの設定には注意が必要です。

スイッチがオンのままなら、まず現在のサーバーと方式を維持し、DNS、TCP、UDPの設定をすぐに変更しないでください。接続状態が示すのは、ローカルの接続処理が進んだことだけで、ウェブページにアクセスできるとは限りません。次の手順でConnectivity Testと実際のページアクセスをそれぞれ確認し、問題の箇所を切り分けます。

この手順の確認ポイント:SERVERで項目を選択済みで、システムの許可が完了し、接続スイッチがオンのままになっていることを確認します。許可やスイッチの段階で毎回止まる場合は、このページのよくある問題に進み、まず接続の確立に関する問題を解決してください。

ShadowrocketのHome公式画面。Not Connectedの接続スイッチ、Global Routing、Connectivity Test、SERVER、Add Serverを表示
Home:選択中のサーバー、Global Routing、画面上部の接続スイッチを確認してからテストします。

STEP 04 / VERIFY

Connectivity Test:接続が想定どおり機能するか確認

前の手順で使用したネットワーク、サーバー、Global Routingを変更せず、HomeでConnectivity Testをタップして結果を待ちます。これは到達性を判断する手がかりであり、すべてのウェブサイト、プロトコル、アプリを完全に検証するものではありません。テスト方法によって結果の意味も異なるため、数値だけで普段の利用品質を判断しないでください。一度テストに成功しただけで、設定全体が正しいと考えるのも避けてください。

続いてブラウザを開き、使い慣れた、繰り返しテストできるページにアクセスします。まずページが最後まで読み込まれるかを確認し、その後、実際に使いたい機能を確認してください。Configを使っている場合は、Proxy経由になる想定のアクセスと、DIRECTになる想定のアクセスをそれぞれテストします。もともと直接アクセスできるページを一つ試しただけでは、プロキシ経路が正常かどうかは判断できません。

ルールが原因かどうかを確認する場合は、選択中のサーバーを変えず、一時的にProxyへ切り替えて同じページに再度アクセスします。Proxyではアクセスでき、Configではできない場合は、現在のConfig、ルールの順序、ポリシーの接続先、DNSを重点的に確認してください。どちらの方式でも失敗する場合は、サーバーと基本ネットワークを先に確認します。これは比較テストであり、問題があるたびに長期的にモードを切り替えることを勧めるものではありません。

比較する際は、ブラウザのキャッシュや既存の接続にも注意してください。必要に応じてページを開き直すか、アプリからリクエストを再実行し、以前の接続による影響を避けます。確認のために見知らぬテストサイトへアクセスする必要はありません。また、ページにサブスクリプション情報や認証情報を入力しないでください。特定のサービスが使えるかを確認する場合は、同じ条件で実際に利用した結果を基準にします。

次の4点を記録します。使用したネットワーク、選択したサーバー名、Global Routingの方式、テストページの状態です。「Wi-Fi、サーバーA、Config、ページは開くが画像が読み込まれない」のように、再現できる形で記録できます。サーバー名は自分用のローカルな目印にとどめ、公開する記録には実際のアドレスや認証情報を書かないでください。

STEP 05 / DIAGNOSE

Settings:症状に応じてよくある問題を確認

問題が起きたら、まず設定を続けて変更するのをやめます。Shadowrocketの接続をオフにし、デバイスの基本ネットワークで普段使えるページにアクセスできることを確認してください。公衆Wi-Fiでネットワークへのログインが必要な場合は、先にログインを済ませます。その後、再接続し、以下の症状に応じて確認します。条件は一度に一つだけ変更し、4番目の手順と同じ方法で再テストしてください。

サブスクリプションを保存してもサーバーが表示されない

URLがすべてコピーされているか、サブスクリプションが有効か、現在のネットワークで内容を読み込めるかを確認します。通常のウェブページのURLをサブスクリプションURLと間違えないでください。同じURLを何度も追加して複数のグループを作るのも避けてください。以前から使える一覧がある場合は、更新に失敗してもその記録を残し、原因を確認してから整理します。URLのアクセス権、有効期限、応答内容に問題がある場合は、利用中のサービス提供元から得た情報を確認してください。クライアント側で不足しているサーバー情報を補うことはできません。

サーバーテストがタイムアウトする、または接続後にアクセスできない

まず元の情報と照らし合わせてHost、Port、Type、認証項目を確認し、TLSや通信方式などの追加項目も一致しているか確認します。タイムアウトは到達性を調べる必要があることを示す場合がありますが、それだけでパスワードの誤りとは断定できません。Wi-Fiとモバイルデータ通信を切り替えて比較する場合は、ほかの条件を変えないでください。特定のネットワークだけで失敗する場合は、その違いを記録し、すぐにConfigを上書きしないでください。手順に沿った確認方法はサーバーのタイムアウトを調べるをご覧ください。

Connectivity Testの結果が出るのにウェブページを開けない場合は、Global RoutingでDirectを誤って選択していないか、Configで対象に想定外のポリシーを割り当てていないか確認してください。ルールを確認してからDNSを調べます。最初からDNS設定とサーバーを同時に変更すると、アクセスが回復しても、どの変更が有効だったのか判断できません。

設定を変更した後、テスト結果が一致しない

Settingsを開いてTest Methodを確認します。テスト方法を変更した場合、変更前後の結果を同じ指標として直接比較できません。Diagnosticsはトラブル対処の手がかりを集める際に利用できますが、使い始めの段階ではProxy、TCP、UDPなどの項目をむやみに変更しないでください。変更直後に問題が起きた場合は、まずその項目を元に戻して同じテストを繰り返します。アプリ全体を消去する必要はありません。

On Demandは条件に応じて接続を開始するため、手動で切断した後に再接続する場合は設定を確認してください。まず手動接続で動作を確認し、その後で自動接続の条件を設定します。iPadでも同じ順序で進めてください。ウインドウサイズや画面の向きによって操作項目の位置が変わることはありますが、サブスクリプション、サーバー、Configそれぞれの役割は変わりません。

診断情報を整理する場合は、エラーメッセージ、操作手順、発生条件を残し、サブスクリプションURL、Password、UUID、実際のサーバーアドレスなどの機密情報を削除してください。スクリーンショットにも機密情報が含まれていないか確認します。アプリの更新後に問題が発生した場合は、現在の設定を記録してApp Storeのアプリ情報を確認し、項目ごとに再テストしてください。一度の失敗だけで設定が無効になったと判断しないでください。

この手順の確認ポイント:問題が、読み込み、許可、サーバーの到達性、ルール、実際のアクセスのどの段階で起きているか説明できるようにします。基本的な疑問はよくある質問をご覧ください。DNS、バッテリー消費、更新後の問題を章ごとに確認する場合はトラブル診断に進み、使い始めの段階で高度な設定を一度に変更しないでください。

ShadowrocketのSettings公式画面。Language、Test Method、Today Widget、On Demand、Diagnostics、Proxy、TCP、UDPを表示
Settings:Test Method、On Demand、Diagnosticsを症状に応じて確認し、元に戻せるよう現在の設定を記録します。

初回接続後に読む順序

動作を確認できたサーバーとConfigを維持したうえで、必要に応じてルールやオンデマンド接続について学びます。サブスクリプションの更新と設定ファイルの変更は分けて行い、変更のたびに同じアクセス確認を繰り返すと、差異を見つけて元に戻しやすくなります。