公式マニュアル · iPhone / iPad

Shadowrocketの使い方

まず既存の接続情報を追加し、ルーティング方式を選択します。接続後は実際のアクセスと接続記録で結果を確認します。

初めて操作する場合は順番にお読みください。接続済みでもアクセスに問題がある場合は、動作確認と問題の確認へ進んでください。

手順 01 · 接続情報を準備する

Add Serverでサーバー追加・サブスクリプション読み込み

手動入力、サブスクリプション、QRコードはそれぞれ別の追加方法です。手元の情報に合う方法を選べばよく、重複して読み込む必要はありません。

手元の情報の種類を確認する

Shadowrocketを開いてHomeに移動し、画面下部のSERVERグループを確認します。サーバーアドレス、ポート、認証情報がそろっている場合はAdd Serverから手動で追加します。利用中のサービスから複数のサーバー情報を更新できるサブスクリプションURLが提供されている場合は、Subscribeの該当メニューから読み込みます。サーバー1台分の共有リンクやQRコードの場合は、対応する読み込み方法を使います。URLがhttps://で始まるだけでサブスクリプションと判断しないでください。通常の説明ページはサブスクリプションとして読み込めません。

手動で追加する:Typeを選んで各項目を入力

HomeでAdd Serverをタップし、まずTypeを開いて手元のサーバー情報と一致するプロトコルを選択します。Typeによって入力項目が決まります。スクリーンショットのフォームにはHost、Port、Password、Methodがありますが、プロトコルによって項目は異なります。サーバーアドレスをHostに、接続ポートをPortに入力し、認証情報は元の資料どおりに入力します。Hostには通常、ドメイン名またはアドレスだけを入力し、Webページのパスまで貼り付けないでください。Methodは既存の設定と一致させ、名前が似ているという理由だけで別のものに置き換えないでください。

Trojan、VMessなどをTypeで選んだ場合は、そのプロトコルで表示される認証、通信方式、TLS関連の項目も確認します。あるプロトコルのPasswordを、別のプロトコルの識別情報として入力しないでください。入力後、画面上の保存操作を行い、Homeに戻ってSERVERに項目が追加されたことを確認します。表示名と接続先のサーバーが一致しているかも確認してください。各項目の意味が分からない場合は、入力を試し続けるのではなく用語マニュアルのプロトコル・画面用語を確認してください。

サブスクリプション・QRコード:読み込み後に内容を確認

サブスクリプションURLがある場合は、Add ServerのTypeからSubscribeを選び、フォームにURLを入力して保存します。サーバーのサブスクリプションとConfig画面で管理するリモート設定は用途が異なります。ConfigにSubscribeの項目がある場合は、まず受け付けるデータの種類を確認し、サーバー一覧のサブスクリプションと設定ファイル全体のURLを混同しないでください。項目名や場所が異なる場合は、現在の画面の案内に従ってください。読み込み後はURLが保存されたかだけでなく、Homeに目的のサーバーが表示されるかを確認します。

QRコードがある場合はScan QR Codeを使い、システムの案内に従って必要なカメラへのアクセスを許可してから、読み取った内容を確認します。Import from Cloud JSONは指定されたJSON形式の読み込みに使う機能で、あらゆるサブスクリプションURLに使える汎用メニューではありません。共有リンクがある場合は、アプリに表示されるクリップボードからの読み込み案内に従ってください。読み込み前に、クリップボードに完全なURLだけが入っていることを確認します。説明文や改行による欠落、チャットの句読点が含まれていないかも確認してください。認証情報を含むリンクを公開ページに貼り付けないでください。

読み込み後はHomeに戻り、該当するグループを開いてサーバーを選択します。リストが空の場合は、サブスクリプションから読み取り可能なデータが取得できたか、有効期限が切れていないか、グループが折りたたまれていないかを確認してください。同じURLを何度も追加しても、データ形式の問題は解決しません。各読み込み方法の違いはサブスクリプションの読み込み方法をご覧ください。選択できるサーバーがあることを確認してから次の手順へ進みます。

ShadowrocketのAdd Server画面。Type、Host、Port、Password、Method、Scan QR Codeなどの項目が表示されています
Add Server:まずTypeを選び、手元の情報を入力します。選択するプロトコルによってフォームの項目は異なります。

手順 02 · 通信の処理方法を決める

Global RoutingとRuleの設定

サーバーは「どこを経由して接続するか」を決め、Global Routingは「通信をどのように処理するか」を決めます。それぞれ確認が必要です。

Homeに戻ってGlobal Routingをタップし、現在選択されているモードを確認します。選択肢はConfig(設定)、Proxy(プロキシ)、Direct(直接接続)の3つです。初めて設定する場合は、まず目的を明確にしてから選択してください。Homeでサーバーを選択しただけで、すべての通信がそのサーバーを経由するわけではありません。

モード処理方法確認するポイント
Config(設定)現在の設定ファイルにあるルールに従って、通信に適用するポリシーを決定します。有効な設定、ルールの順序、最終ポリシー。
Proxy(プロキシ)通信をProxyモードで処理します。個々のルールによる振り分けを主な判断基準とはしません。選択したサーバーが利用可能か、実際にアクセスできるか。
Direct(直接接続)通信を接続先へ直接送ります。選択したプロキシサーバーが正常に動作することの確認には使えません。

ルールに従って通信先を振り分ける場合はConfigを選択し、画面下部のConfigを開いて現在使用中の設定ファイルを確認します。設定編集画面にはGeneral、Rule、Hostsなどのセクションがあります。スクリーンショットに表示されているのは設定内容であり、サーバーのサブスクリプション一覧ではありません。利用中のサービスからサーバー情報が提供されても、ルール一式が含まれているとは限りません。「サーバーを読み込んだ」ことと「ルールによる振り分けを設定した」ことは別です。

まず既存のRuleを確認し、すぐに追加しない

Ruleを開いて既存の項目を確認します。ルールは通常、上から順に判定されるため、特定のドメインやアドレスの条件は最終ルールより前に置きます。FINALは、それ以前のルールに一致しない場合に使います。PROXY、DIRECT、REJECTはポリシーを示すキーワードであり、3台のサーバーではありません。以下の例は構文を示すための予約済みドメインであり、接続用のサーバー情報ではありません。元の設定が分からない場合は、Ruleセクション全体をそのまま置き換えないでください。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY

既存サーバーに接続できるかだけを先に確認する場合は、一時的にProxyへ切り替えて比較できます。テスト後は元のConfigに戻してください。ProxyではアクセスできてConfigではできない場合、サブスクリプションをすぐに読み込み直すのではなく、ルールや設定内のポリシー参照を優先して確認します。DOMAIN-SUFFIX、IP-CIDR、FINALの詳しい意味は用語マニュアルをご覧ください。このページでは接続と確認までを扱い、複雑なルールの作成には踏み込みません。

既存の設定を変更する前にコピーを保存し、一度に変更する条件は1つだけにします。保存後はHomeに戻り、Global Routingに選択したモードが表示されていることを確認してから接続します。

ShadowrocketのConfig設定編集画面。General、Rule、Hosts、URL Rewrite、HTTPS Decryption、Add Ruleが表示されています
Config設定編集画面:ルールはRuleセクションにあります。Global RoutingのモードはHomeから選択します。

手順 03 · 接続する

Homeの接続スイッチと初回許可

サーバーを選択し、ルーティングモードを確認してからスイッチをオンにします。システムの許可とサービスの認証は別のものです。

Homeに戻り、SERVERから使用するサーバーをタップして、選択マークが目的の項目に付いていることを確認します。サブスクリプションから複数の項目を読み込んだ場合は、グループ名だけで判断しないでください。接続に使われるのは、実際に選択したサーバーです。設定を変更した場合は、保存してからHomeに戻ります。保存前の入力内容を、反映済みの設定と誤認しないようにしてください。

Global Routingを確認したら、画面上部のNot Connectedの横にある接続スイッチをオンにします。初回接続時は、システムからVPN構成を追加する許可を求められる場合があります。これはShadowrocketがシステムのネットワーク機能を使うために必要な許可です。現在操作しているShadowrocketからの確認であることを確かめ、システムの案内に従って許可してください。デバイスのパスコードや生体認証が求められる場合があります。この許可は利用中のサービスへのログインではありません。サブスクリプションのパスワードをデバイスのパスコード欄に入力する必要はありません。

許可したらHomeに戻り、アプリの状態が更新されるまで待ちます。Connectedと表示されれば接続状態は確立していますが、すべての接続先にアクセスできるとは限りません。次の手順で、サーバー、接続先、ルールの組み合わせを確認します。スイッチをオンにしてすぐNot Connectedに戻る場合は、許可を取り消していないか、システムで別のVPN構成が使用中でないか、デバイスの管理ポリシーで構成変更が制限されていないかを確認してください。結果が分からなくならないよう、スイッチを短時間に何度も切り替えないでください。

iPadでは画面のレイアウトがスクリーンショットと異なる場合がありますが、操作順序は同じです。サーバーを選び、Global Routingを確認してから接続スイッチを操作します。サーバー情報や設定を変更する場合は、いったん切断して保存後に再接続し、変更内容を記録してください。使用を終えるときはHomeで接続スイッチをオフにすればよく、通常の切断にサブスクリプションの削除や設定の消去は必要ありません。

On Demandが有効な場合は、接続動作がその条件にも左右されます。初回の確認では、まず手動接続の流れで結果を確認してください。その後、動作を理解してからOn Demandを個別に設定すると、複数の条件が重なるのを避けられます。接続状態を保ったまま次の手順へ進み、実際のアクセスを確認します。

ShadowrocketのHome画面。上部にNot Connectedの接続スイッチ、下部にGlobal Routing、Connectivity Test、SERVER、Add Serverが表示されています
Home:接続スイッチ、Global Routing、Connectivity Testは同じ画面にあり、SERVERグループからサーバーを選択します。

手順 04 · 実際の動作を確認する

Connectivity Testとアクセス確認

HomeでConnectivity Testをタップし、テストが完了するまで待ちます。テスト結果は指定された方法での接続状況を示すもので、テスト先、Test Method、現在のネットワーク、サーバーの状態に左右されます。一度タイムアウトしただけで、すべての通信が利用できないとは限りません。同様に、テスト結果が表示されても、すべてのアプリやドメインが同じ経路を通るとは限りません。リストの数値だけで判断せず、結果が安定しているか確認してからブラウザーでアクセスを試してください。

まず基本的なアクセスを確認する

ブラウザーで、アクセスできることが分かっているページを開き、続けて今回の確認対象を開きます。ページが一度でも表示されたかだけでなく、読み込みが完了するかを比較してください。ネットワークに問題があっても、キャッシュされたページが表示される場合があります。

次に通信経路を確認する

Global Routingと有効な設定を確認します。特定の通信が想定どおりPROXYまたはDIRECTを通っているか判断する場合は、システムのVPN表示だけでなく、該当する接続記録と適用されたルールも確認してください。

Configでは、ドメインごとに異なるポリシーが適用されることがあります。あるページにアクセスできても、別の接続先がプロキシを経由しているとは限りません。同じ接続先に対してProxyとConfigを短時間比較するには、サーバーはそのままでモードだけを切り替え、リクエストを再実行します。違いが安定して現れたら、接続先のドメインと適用されたルールを記録し、Ruleを確認してください。確認後は継続して使うモードに戻し、一時的なテスト状態のままにしないでください。

ブラウザーでは正常でも特定のアプリに問題がある場合は、そのアプリで接続を再確立する必要がないか、独自のネットワーク設定がないかを確認します。すべての接続先で失敗する場合は、次の手順で基本ネットワークから確認してください。動作確認は自分が管理している、またはアクセス権のある接続先で行ってください。接続状態を証明するために、不明なWebサイトへサブスクリプションURL、認証情報、設定ファイル全体を送る必要はありません。

手順 05 · 一度に変更する条件は1つだけ

Settingsとよくある問題

「基本ネットワーク → 読み込み内容 → サーバー設定 → ルーティングとDNS」の順に確認し、問題を再現できる条件を記録します。

リストが空、またはサブスクリプションを更新できない

まず接続を切り、現在のネットワークから利用中のサービスに必要なページへ正常にアクセスできることを確認します。次にサブスクリプションURLが完全か、余分な空白が含まれていないか、サービス側の利用権限が有効かを確認してください。サブスクリプション名を保存できても、サーバー一覧を取得できたとは限りません。更新時のメッセージを確認し、Homeに戻って項目が表示されるか確かめます。サービス側からログインページやエラーの説明が返された場合、アプリはそれをサーバーデータとして使用できません。認証情報が利用権限に結び付いている可能性があるため、サブスクリプションURL全体を公開コメントに投稿しないでください。

項目はあるが、接続がタイムアウトする・認証に失敗する

Add Serverに戻り、元の情報と照らし合わせてType、Host、Port、認証情報を1つずつ確認します。ドメインのつづり、ポート番号の桁数、パスワードの前後にある空白を個別に確認してください。TLSのサーバー名も、推測で変更しないでください。同じグループ内の1項目だけが失敗し、同じネットワークで他の項目を使える場合は、まずその項目と対応するサービスの状態を確認します。ネットワークを変えて初めて復旧する場合は、Wi-Fiとモバイル通信の違いを記録し、プロトコル、ポート、ルールを同時に変更しないでください。

Connectedだが、接続先を開けない

まずDirectのままになっていないことを確認し、次にProxyとConfigを比較します。Configだけで問題が起きる場合は、正しい設定が選択されているか、ルールが想定どおり適用されているか、ポリシーが有効な対象を参照しているかを確認してください。どちらのモードでも失敗する場合は、サーバーとDNSを確認します。ドメインにアクセスできないからといって、必ずDNSが原因とは限りません。エラーメッセージも確認し、DNSをむやみに変更してすべての問題に対処しようとしないでください。

テスト結果と実際のアクセス結果が一致しない

SettingsでTest Methodを確認します。テスト方法によって確認できる範囲は異なり、テスト先自体が一時的に利用できない場合もあります。テスト方法をそろえて比較し、実際のアクセス結果も判断材料にしてください。SettingsのProxy、TCP、UDPなどの設定は、それぞれ異なる動作に関わります。初めて使う場合、これらを一度に変更するのは避けてください。変更前の値を記録しておけば、問題が起きたときに元へ戻せます。

スイッチが何度も戻る、または詳しい診断が必要

手動でオフにした後に再接続する場合は、設定をすべて削除するのではなく、SettingsのOn Demand条件を確認します。原因を特定できない場合はDiagnosticsを開き、利用可能な診断情報を確認してください。発生時刻、ネットワーク、Global Routingのモード、選択中のサーバー、エラーの状況を記録します。記録を共有する前に、サブスクリプションURL、パスワード、認証情報、個人のネットワーク情報を削除し、問題の特定に必要な部分だけを残してください。

ここまでの手順は、初回接続時に基本事項をすばやく確認するためのものです。タイムアウトが続く、DNSの名前解決に問題がある、バッテリー消費が多い、更新後に不具合が起きた、iPad固有の問題がある場合はトラブルシューティングガイドをご覧ください。設定項目の意味を知りたい場合は用語マニュアルを確認してください。直近で動作した設定のコピーを残しておくと、不明な設定を重ねるよりも問題の再現や復旧が容易になります。

ShadowrocketのSettings画面。Language、Test Method、Today Widget、On Demand、Diagnostics、Proxy、TCP、UDPが表示されています
Settings:Test Methodでテスト方法を確認できます。On Demandで接続条件を管理し、Diagnosticsから詳しい診断を行えます。