公式マニュアル · はじめに

Shadowrocketの使い方

既存の設定 → モード選択 → 接続確認

このページでは、初回利用に必要な手順を説明します。まず既存のサーバー設定で接続し、その後にルールの詳細や自動接続の条件を設定します。複数の項目を同時に変更しないようにしましょう。

以下ではiPhoneとiPadでの操作を説明します。スクリーンショットは画面や項目の位置を確認するためのもので、表示される一覧がご自身のものと同じとは限りません。プロトコルによってAdd Serverで入力する項目は異なります。選択中のTypeとご自身の設定情報に従ってください。

  • まず設定内容を確認
  • 次に接続状態を確認
  • 変更は毎回1項目ずつ

Add Server:サーバーの追加またはサブスクリプションの読み込み

手元の情報に合わせて追加方法を1つ選びます。同じ情報を重複して読み込む必要はありません。

Shadowrocketを開いてHomeに移動します。SERVER欄でAdd Serverを探すか、画面上の追加ボタンを使います。まずTypeを確認してください。選択したTypeによって、以降の項目の意味が決まります。サーバー情報が1件分ある場合は、指定されたプロトコルを選択します。サブスクリプションURLがある場合は、Subscribeを選びます。アドレスの見た目だけでプロトコルを推測したり、サブスクリプションURLをHostやPortに分けて入力したりしないでください。

サーバー情報を手動で入力する

Add Serverを開き、情報に合ったTypeを選んでから、Host、PortとそのTypeで必要な項目を入力します。Hostには通常サーバーのドメイン名またはアドレス、Portにはポート番号を入力します。PasswordやMethodなどは、該当するプロトコルで必要な場合にのみ設定してください。プロトコルごとに認証方法は異なるため、別のプロトコルの入力方法をそのまま適用することはできません。TLSや通信方式などの追加項目は、手元の情報に記載されたとおりに設定し、接続を試すためにむやみに変更しないでください。

コピーした内容に空白、改行、日本語の句読点が混入していないか確認してください。特にポート番号と認証情報が欠けていないか注意します。自分で識別しやすい名前を付けて保存し、Homeに戻ってSERVERに該当項目が表示されたことを確認してください。名前は設定を区別するためのもので、変更してもサーバーの接続情報は変わりません。

既存のサブスクリプションURLを読み込む

Add ServerのTypeでSubscribeを選び、専用のURL欄にサブスクリプションURLをすべて入力して保存し、読み込み結果を待ちます。サブスクリプションURLにはサービスの利用権限を識別する情報が含まれる場合があります。元の情報を省略せずにコピーし、疑問符以降を切り落としたり、チャットの説明文まで貼り付けたりしないでください。サブスクリプションの保存とサーバー一覧の取得は別の処理です。Homeに戻って、SERVERに選択可能な項目が表示されているか確認してください。

QRコードをお持ちの場合は、情報の形式に応じてScan QR Codeを使用できます。Import from Cloud JSONは特定形式の読み込み口であり、すべてのサブスクリプションURLに使えるわけではありません。情報の形式に合った方法を選び、判断できない場合は利用中のサービス提供元に確認してください。同じ情報を複数の方法で何度も読み込むと、その後の選択やトラブル対処が複雑になります。

一覧が空のままの場合は、URLがすべて含まれているか、現在のネットワークから取得できるか、利用中のサービスが正常かを確認してください。サーバーがまだ読み込まれていない段階では、ルールを編集しても解決しません。一覧に項目が表示されたら、現在の記録を残したまま次のGlobal Routingの設定に進みます。読み込みに関する詳しい情報はよくある質問のサブスクリプションとサーバー情報の読み込みをご覧ください。

この手順の完了条件:HomeのSERVERに識別できるサーバー項目が表示されていること。サブスクリプションを保存しただけでは完了ではありません。

ShadowrocketのAdd Server画面。Type、Host、Port、Password、Methodに加え、画面下部にScan QR CodeとImport from Cloud JSONが表示されています
Add Server:まずTypeを確認し、手元の情報に合わせて項目を入力します。画面の項目は現在選択されているTypeに対応しています。

Global Routing:接続モードを選ぶ

3つのモードで接続時のルール適用方法を選択します。サーバー情報の代わりにはならず、誤った設定を修復するものでもありません。

Homeに戻ってGlobal Routingを開きます。3つのモードはConfig/Proxy/Directです。まず、今回の目的が選択したサーバーの動作確認なのか、既存のルールに基づく通常の振り分けなのかを明確にしてください。選択後にHomeへ戻り、Global Routingに選んだ値が表示されていることを確認します。切り替えたつもりでも、実際には元のモードのままになっている場合があります。

Config:現在の設定ルールに基づいて判定

Configでは、現在の設定に含まれるルールに基づいて、接続に使う方針を決定します。サブスクリプションのサーバー一覧とConfigの設定ファイルは役割が異なります。前者は接続先の候補を提供し、後者は通信をどのように判定するかを定めます。サブスクリプションを読み込んで一覧に表示されても、振り分けルールの準備ができているとは限りません。Configを使う前にConfigを開き、現在の設定とRule内のルールおよび順序を確認してください。

右側の公式スクリーンショットには、設定編集画面のGeneral、Rule、Hosts、URL Rewrite、HTTPS Decryption、Add Ruleが表示されています。初回接続で各項目を変更する必要はありません。特に、高度な項目が表示されても、すぐに有効化したり編集したりしないでください。まず内容と入手元を把握している設定を使い、ルールの変更は接続確認後に行います。

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

ルール構文の理解用です。ドメインのサフィックスまたはアドレス範囲で照合し、該当しない場合はFINALで処理します。設定全体をこの例に置き換える指示ではありません。

ProxyとDirect:テストの目的を区別する

Proxyはプロキシ経由で接続し、初回のトラブル対処でルール照合による変数を減らすのに役立ちます。ただし、利用可能なサーバー設定が必要です。Host、認証情報、サービスの状態に問題があっても、Proxyに切り替えるだけでは解決しません。テストに成功し、日常的にルールで通信を振り分ける場合は、Configに戻して実際のアクセスを再確認してください。

Directは直接接続するモードで、基本的なネットワークアクセスの確認に使えます。プロキシサーバーが利用可能である証明にはなりません。Directでページを開けても、その直接接続が成功したことを示すだけで、選択したサーバーが正常とは判断できません。サーバーの初回確認では、まずProxyで接続とテストを行い、その後Configに戻って振り分けを確認してください。

ルールの照合順序、ポリシー参照、DNSとの連携などを詳しく設定する場合は、完全版マニュアルをご覧ください。このガイドではテスト時のモードを明確に保ち、初回接続で複数の設定を同時に変更しません。

この手順の完了条件:Homeで現在のモードを確認でき、次にサーバー経由の接続を確認するのか、ルールによる振り分けを確認するのか把握できていること。

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

Home:サーバーを選んで接続する

まずSERVERでサーバーを選び、画面上部のスイッチをオンにして、接続状態が維持されるか確認します。

Homeに戻り、SERVERで今回確認するサーバーを見つけ、項目の左側にある丸印をタップして現在の接続先に設定します。「サーバーを選択する」操作と「詳細を開いて編集する」操作を区別してください。ここでは使用するサーバーを選べばよく、情報を入力し直す必要はありません。似た名前の項目が複数ある場合は、サブスクリプションのグループやサーバー情報を確認し、別の設定をテストしないようにしてください。

Global Routingが前の手順で決めたテスト目的に合っているか再確認し、Home上部の接続スイッチをオンにします。未接続の場合はNot Connectedと表示されます。初回接続時にVPN構成の追加を求められたら、表示されたアプリ名が今回の操作と一致することを確認してから、システムの手順に従って許可してください。デバイスの認証が必要な場合もあります。ここで許可するのはシステムVPN構成の作成であり、サーバーの認証情報を入力する画面ではありません。

この権限確認をキャンセルすると、接続を続けられない場合があります。Shadowrocketに戻って接続を再度開始し、表示されたシステムの案内に従ってください。デバイスが組織管理下にある場合やシステムの制限がある場合は、許可されている構成の範囲を確認します。権限の問題に対処するためにサーバーのパスワードを何度も変更しないでください。

許可後にHomeへ戻り、画面上部の接続状態がNot Connectedから接続済みに変わり、スイッチがすぐにオフへ戻らないことを確認します。システムに表示されるVPN状態はトンネル確立の参考になりますが、実際のアクセス確認の代わりにはなりません。接続済みと表示されても、すべての宛先にアクセスできることや、Config内のすべてのルールが想定どおりであることを意味しません。

iPadでも、まず現在のサーバーとGlobal Routingを確認してから、システム権限を設定します。別のデバイスでShadowrocketを使ったことがあっても、このデバイスで権限と設定情報を改めて確認してください。次はサーバーとモードを変更せず、Connectivity Testと実際のアクセスを確認し、同じ条件で結果を比較できるようにします。

この手順の完了条件:選択中のサーバーが明確で、接続スイッチがオンのまま維持され、HomeにNot Connectedと表示されていないこと。

ShadowrocketのHome画面。上部にNot Connectedの接続スイッチ、Global Routing、Connectivity Test、下部にSERVERとAdd Serverが表示されています
Home:接続スイッチ、Global Routing、Connectivity Test、SERVERがこのガイドの主な操作箇所です。

Connectivity Test:接続を確認する

テスト結果、実際のアクセス、現在のモードを併せて確認してください。1つの項目が成功しても、全体の確認にはなりません。

HomeでConnectivity Testをタップし、テストが完了するまで待ってから、選択中のサーバーの結果を確認します。このテストでは現在の条件での接続状況を確認できますが、すべてのアプリ、ドメイン、接続方法が必ず成功するとは限りません。タイムアウトだけでサーバー情報の誤りとも判断できません。テスト方法、現在のネットワーク、宛先からの応答状況が結果に影響するため、実際のアクセス結果と併せて確認してください。

続いてブラウザを開き、普段利用していてアクセス権のあるページにアクセスします。キャッシュ済みのタイトルや画像だけでなく、ページ全体が読み込まれるか確認してください。サーバー、Global Routing、ネットワーク環境は変えず、必要に応じてページを再読み込みします。ネットワークの切り替え、DNSの変更、サーバーの変更を同時に行うと、どの変更が結果に影響したか判断しにくくなります。

次にDataを開き、今回の利用前後で通信量に変化があるか確認します。Dataは利用状況を把握するための参考情報です。累積値だけで特定のページがプロキシ経由だったとは判断できません。特にConfigでは、一部のリクエストがDIRECT、別のリクエストがPROXYを使う場合があります。ページが開けても、意図した経路で通信したかどうかはルールと照らし合わせて確認してください。

サーバーの確認にProxyを一時使用した場合、実際のアクセスが正常と確認できたらConfigに戻し、もう一度テストします。同じサーバーがProxyでは使えてConfigに戻すと問題が出る場合は、すぐにサブスクリプションを再読み込みするのではなく、現在の設定とRuleを確認してください。反対に、Directでアクセスできてもプロキシ経由の接続が正常とは限らないため、それぞれ分けて判断します。

確認が終わったら、使用可能だった条件、つまり選択したサーバー、現在のモード、使用中の設定、ネットワーク環境を記録しておきます。問題が再発したときは、この条件と比較すると、スイッチを何度も操作するより変更箇所を特定しやすくなります。通信の詳細やルールの判定方法は、完全版マニュアルの接続とDataの説明をご覧ください。

この手順の完了条件:実際のアクセスが想定どおりで、Proxy、Direct、Configのルールによる接続のどれを使っているか説明できること。

Settings:問題が起きた段階ごとに確認

問題がどの手順で起きたかを特定してから、確認する画面を選びます。

問題が起きたら、まず症状を記録します。一覧が空なのか、スイッチが維持できないのか、テストがタイムアウトするのか、特定のページだけ失敗するのかを確認してください。原因となる段階が異なるため、同じ方法で対処するのは適切ではありません。以下の順に確認し、各項目を確認するたびに元の条件で再試行します。比較できるよう、未変更の情報はそのまま残してください。

一覧が空:読み込み手順を確認

まずデバイスの基本的なネットワーク接続を確認し、Subscribeに入力したURLがすべて含まれているか、読み込み結果に問題がないかを確認します。URLの一部が欠けている、利用中のサービスの状態が変わった、サブスクリプションの内容を解析できないなどの原因で一覧が空になることがあります。利用中のサービス提供元に問い合わせる際は、読み込み結果と問題が起きた箇所だけを伝え、サブスクリプションURL全体は公開しないでください。選択できるサーバーがない状態では、Global RoutingやRuleを変更しても解決につながりません。

スイッチが維持できない:権限と選択状態を確認

SERVERでサーバーが選択されていること、システムのVPN構成追加が完了していることを確認します。デバイス管理による制限や、ほかのVPN接続が有効になっていないかも確認してください。システムの案内に従って現在の接続状態を整理してから再試行し、すべての設定をすぐに削除しないでください。ネットワークを切り替えた後にだけ問題が起きる場合は、元のネットワークに戻して再確認し、ネットワーク環境との関連を調べます。

接続済みでもアクセスできない:設定とルールを切り分ける

Type、Host、Port、認証情報、指定された追加パラメーターを、記憶に頼らず手元の情報と1項目ずつ照合します。次にGlobal Routingを確認します。Configを使っていた場合は、比較のため一時的にProxyを試せます。Configでのみ問題が起きるなら、現在の設定、ルールの順序、対象に適用される方針を優先して確認してください。一部のドメインだけに問題がある場合は、すべての項目を何度も切り替えるのではなく、DNSとルールの照合も確認します。

テスト結果とアクセス結果が異なる:診断条件を確認

Settingsを開き、Test Methodで現在選択されているテスト方法を確認します。テスト方法によって確認する条件が異なるため、1つのテスト結果をすべてのアクセスに当てはめることはできません。さらに原因を調べる場合はDiagnosticsを使い、画面に表示される項目に沿って確認してください。診断情報を保存または共有する前に、サブスクリプションURL、認証情報、公開したくないアクセス履歴を隠してください。

初回のトラブル対処中は、手動接続のままにしてください。On Demandは条件に応じて接続を開始する機能で、手動接続が安定してから設定するのが適しています。手動操作とスイッチの挙動が異なる場合は、On Demandが有効になっていないかも確認します。SettingsのProxy、TCP、UDPなども、接続を試すために一度にすべて変更する必要はありません。既存の設定を維持し、症状に直接関係する項目だけを確認してください。

トラブル対処後は、テスト中に一時変更したモードを普段使う設定に戻し、実際のアクセスをもう一度確認します。解決しない場合はよくある質問で症状に合う項目を探してください。ルール、DNS、継続的な設定管理については完全版マニュアルをご覧ください。問い合わせ時は「接続できない」だけでなく、失敗した手順、現在のモード、確認済みの条件を具体的に伝えると原因を特定しやすくなります。

この手順の完了条件:問題を読み込み、権限、サーバー情報、ルールのいずれかに絞り込み、同じ条件で再テストできること。

ShadowrocketのSettings画面。Language、Test Method、Today Widget、On Demand、Diagnostics、Proxy、TCP、UDPが表示されています
Settings:トラブル対処ではまずTest Method、On Demand、Diagnosticsを確認します。すべての項目を同時に変更する必要はありません。
App Storeで入手