利用中のサービスからサブスクリプション情報を入手したら、まずサーバー用サブスクリプション、設定ファイルのURL、単一サーバーの共有リンクのどれなのかを確認します。この記事ではSubscribe、Add Server、QRコード、クリップボードから追加する手順を説明し、Configの設定サブスクリプションとHomeのサーバーサブスクリプションの違いも解説します。追加後は更新結果、Global Routing、Connectivity Testを確認しましょう。
1. サブスクリプションURL・設定ファイル・共有リンクの違い
Shadowrocketの追加方法は、異なる4種類の接続プロトコルではなく、手元にある情報をアプリに登録する4つの手段です。QRコードをスキャンできても、その中身が必ずサブスクリプションとは限りません。クリップボードからリンクを認識できても、追加後に更新可能なサーバーリストが自動で作られるとは限りません。追加後の動作を決めるのは、リンクの内容と保存時に選ぶ種類です。
特に、保存先の違いに注意してください。Homeではサーバーとサーバーサブスクリプションを管理し、Configではルール設定ファイルを管理します。ConfigのSubscribeは設定ファイルのサブスクリプション用です。URLがHTTPSで始まるからといって、サーバーリストのURLをルール設定ファイルとして登録しないでください。サービス提供元の案内にサーバーサブスクリプションと明記されている場合は、Homeの追加画面からSubscribeを選びます。
| 手元にある情報 | 見分けるポイント | 追加先 |
|---|---|---|
| サーバーサブスクリプション | 通常はHTTPSのURLで、サーバーリストを返す | Home → + → Type → Subscribe |
| ルール設定のサブスクリプション | ルールやポリシーなどを含む設定テキストを取得する | Config → Subscribe |
| サーバーの接続情報 | アドレス、ポート、プロトコル、認証情報が個別に示されている | Home → + → Add Serverのフォーム |
| 単一サーバーの共有リンク | よく使われる接頭辞はss://、vmess://、vless://、trojan:// | QRコードまたはクリップボードから読み取る |
以下のURLは形式の見分け方を示すためのもので、接続には使えません。実際のサブスクリプションに含まれるtokenはアクセス認証情報にあたる場合があります。URL全体を公開スクリーンショットやチャット、質問投稿に載せないでください。この記事は、利用中のサービスとサブスクリプション情報をすでにお持ちの場合を前提としています。当サイトでは接続先やサブスクリプションの提供・販売・推奨は行っていません。
https://example.com/sub?token=xxxx
2. Subscribeでサーバー用と設定用のサブスクリプションを登録する
サーバーリストを継続して更新する場合は、更新のたびに返される共有リンクを一件ずつ追加するのではなく、元のサブスクリプションURLをSubscribeに保存します。以後は同じ登録情報から更新できます。サブスクリプション名は見分けるためのラベルであり、URLの代わりにはなりません。URLのクエリパラメーターもすべて保持し、tokenを削除したり文字列を書き換えたりしないでください。
-
情報を確認する
手元の情報にサーバーサブスクリプションと明記されていることを確認し、URL全体をコピーします。ログインページのURLしか分からない場合は、ブラウザーのアドレスバーからそのままコピーせず、利用中のサービスの管理画面でサブスクリプションURLを確認してください。
-
追加画面を開く
Home → 右上の+を開き、Add ServerのフォームでTypeを開いてSubscribeを選びます。ここに保存するのはサーバーサブスクリプションであり、Configのルールファイルではありません。
-
入力して保存する
URL欄にアドレスを貼り付け、Remarksに用途や取得元を入力して保存します。URLの先頭、末尾、クエリパラメーターを確認し、引用符や改行、説明文まで一緒に貼り付けないようにしてください。
-
リストを更新する
Homeに戻って下に引っ張り、更新が完了するまで待ちます。サーバーリストが表示されたか確認してください。空のままの場合は、更新エラーを先に確認し、同じサブスクリプションを続けて何度も追加しないでください。
手元の情報がルール設定ファイルのURLなら、Config → Subscribeから設定サブスクリプションを管理し、該当する設定URLを追加します。更新後は、実際に使う設定が選択されているか確認してください。リモートURLを保存しただけでは、Homeにサーバーが追加されたことにも、Global RoutingがConfigに切り替わったことにもなりません。DOMAIN-SUFFIX、IP-CIDR、FINALなどのルールを含む設定と、サーバーの共有リンクだけを返すサブスクリプションは別のものです。
URLが何を返すのか確認してから追加先を選びましょう。サーバーサブスクリプションは「どのサーバーがあるか」を管理し、Configの設定は「リクエストをどのルールで処理するか」を決めます。併用はできますが、互いの代わりにはなりません。
3. Add Serverで手元の接続情報を入力する
サーバーの接続情報が一組だけあり、サブスクリプションURLがない場合はAdd Serverを使います。手順はHome → + → Type → 該当するプロトコルです。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuardでは入力項目が異なります。アドレスとポートだけでは設定を完了できないプロトコルもあります。Typeを間違えてもフォームを保存できることはありますが、接続情報が正しいとは限りません。
- アドレスとポート:手元の情報に従って、それぞれ入力します。ポートは
443、8443など、実際に指定された値を使用してください。443を使っていることだけでは、プロトコルやTLSの状態は判断できません。 - 認証情報:Shadowsocksでは通常、暗号化方式とパスワードの両方が必要です。VMessとVLESSではUUIDを使うことが多く、Trojanではパスワードを使います。サブスクリプションURLをサーバーのパスワードとして入力しないでください。
- 通信方式の項目:手元の情報でWebSocketなどの通信方式が指定されている場合は、PathとHostを合わせます。サーバーアドレス、Host、TLSのServer Nameは異なる場合があるため、それぞれ確認してください。
- プロトコル固有の項目:Hysteria2とWireGuardには、それぞれ独自の認証情報や鍵の設定があります。他のプロトコルの項目をそのまま流用しないでください。情報が不足している場合は、情報の提供元に確認し、推測で入力しないようにしましょう。
保存後にHomeへ戻り、サーバー項目の名前と種類を確認してから選択し、テストします。Add Serverで手入力した項目は、元のサービスのサブスクリプションが更新されても自動では同期されません。アドレス、ポート、認証情報が変更された場合は、この項目を編集してください。原因を切り分けやすくするため、最初の設定ではルール設定やDNSを同時に変更しないでください。問題がどの段階で起きたのか分かりにくくなります。
4. QRコードとクリップボードから完全なリンクを読み取る
QRコードとクリップボードを使うと入力の手間は省けますが、情報の確認は必要です。QRコードには単一サーバーの共有リンク、サブスクリプションURL、一般的なWebページのURLなどが含まれることがあります。スキャン後は認識された内容を確認し、追加する種類を選んでください。サーバーやサブスクリプションとして正しく登録するには、対応している完全な情報が必要です。
QRコードを読み取る手順
- Homeでスキャン画面を開き、システムの案内に従ってカメラへのアクセスを許可します。手元のQRコード全体を読み取り範囲に入れ、端が切れないようにしてください。
- QRコードが写真アプリに保存されている場合は、スキャン画面にある画像読み取り機能から元画像を選びます。ぼやけたスクリーンショットや圧縮しすぎた画像では、認識できないことがあります。
- 認識されたプロトコル、アドレス、名前を確認してから保存します。読み取った内容がWebページのURLだけなら、サーバーの追加が完了したとはいえません。
クリップボードから追加する手順
- 共有リンク全体をコピーします。前後の説明文、番号、省略記号は一緒にコピーしないでください。リンク内のエンコードされた文字列やクエリパラメーターもすべて保持します。
- Shadowrocketに戻り、クリップボードの読み取り案内が表示されたら、内容を確認して追加します。ペーストの許可を求められた場合は、今回の読み取りを許可してください。案内が表示されない場合は、追加画面に戻り、適切な項目に手動で貼り付けます。
- コピーしたものがHTTPSのサーバーサブスクリプションURLなら、Home → + → Type → Subscribe → URLから明示的に保存します。通常のWebページURLが自動でサブスクリプションとして判定されることを前提にしないでください。
ss://、vmess://、vless://、trojan://は、一般的な共有形式を見分ける手がかりです。ただし、同じ接頭辞でも通信方式のパラメーターが異なる場合があります。Hysteria2の情報では、hysteria2://またはhy2://が使われることがあります。読み取れるかどうかは、リンク内の項目とクライアントの対応状況によります。WireGuardの情報は、鍵、Address、AllowedIPs、Endpointなどを含む設定として提供されることが多く、任意の設定テキストを1行のリンクとして読み込めるとは限りません。
「インポート済み」と表示されても、情報が保存されたことを示すだけです。検証では項目を選択してパラメーターを確認し、Connectivity Testと実際のリクエストを試してください。項目名が表示されたかどうかだけで判断しないようにしましょう。
5. Global Routingで実際のリクエストを確認する
追加しただけでは、各リクエストの経路は決まりません。まずHomeでテストするサーバーを選択し、Connectivity Testを実行してからGlobal Routingを確認します。テスト結果は、その方法と接続先での状況を示すものです。ある項目に遅延が表示されても、すべてのWebサイトやすべてのプロトコルで利用できることを意味しません。
Config
設定を推奨現在の設定にあるルールに従ってリクエストを振り分けます。DOMAIN-SUFFIX、GEOIP、IP-CIDRなどのルールとFINALの最終ポリシーによって処理方法が決まります。設定内容が正しく、有効になっていることが前提です。
おすすめの用途:明確な振り分けルールがあり、通常の利用に戻す場合
Proxy
アプリが処理するリクエストをProxy経由で扱います。一時的にルールによる振り分けの影響を避けてテストできますが、誤ったパスワード、UUID、TLS、通信方式の設定は修正されません。
おすすめの用途:選択したサーバーの接続を確認し、その後でルールを個別に調べる場合
Direct
リクエストをDirectで処理します。Directの状態でWebページが開いても、選択したサーバーが使われたとは限りません。そのため、サブスクリプション内のサーバーが有効だとは判断できません。
おすすめの用途:現在のネットワークからの直接接続と比較する場合
Scene
設定済みのSceneに応じたルーティング動作を使います。選択する前に、Sceneの条件と関連設定を確認してください。Sceneはインポート失敗を自動で修復するための機能ではありません。
おすすめの用途:Sceneを設定済みで、その設定に沿って使う場合
まとめ:インポートとルーティングを分けて確認する
まずProxyで選択中のサーバーから目的のリクエストを実行できることを確認し、その後Configに戻ってルールを確認します。ルーティングの状態を切り替えたときだけ結果が変わるなら、サブスクリプションをすぐに作り直すのではなく、現在の設定で適用されているルールと最終ポリシーを調べてください。
接続を初めて有効にするときは、システムの案内に従ってVPN構成の追加を許可します。Settings → On Demandでは、条件に応じて接続を開始する動作を管理します。サーバーの追加やサブスクリプションの更新を行う機能ではありません。最初の切り分けでは手動接続で状態を確認し、情報とルールを検証した後にOn Demandを個別に設定してください。
6. サブスクリプションの更新と追加時によくある問題
サブスクリプションを更新すると、リモートの内容が再取得されます。サーバーの数や名前が変わっても、必ずしもクライアントのエラーとは限りません。まず利用中のサービスが提供する最新情報と比べてください。サブスクリプション内で手動編集した項目は、次回の更新でリモートの内容に置き換わることもあります。重要な手動設定は別に保存し、サブスクリプションで管理する項目と区別してください。
保存できたのにHomeに何も表示されないのはなぜ?
まず、サーバーサブスクリプションを誤ってConfigに保存していないか確認します。サーバーサブスクリプションはHome → + → Type → Subscribeから保存し、その後Homeに戻って下に引っ張り更新します。解析エラーが出る場合は、URLがサーバー情報を返しているか確認してください。ログインページ、エラーページ、ルール設定テキストではありません。
更新がタイムアウトします。削除して追加し直すべき?
まずURL全体と現在のネットワークを確認します。利用できるサーバーがある場合は、接続してから更新してください。サブスクリプションURLへのアクセスにProxyが必要なら、Settings → Subscribe → Update via Proxyを確認します。接続先がない状態では、この設定だけでアクセス経路を作ることはできません。タイムアウトが続く場合は、URLが利用可能か確認してください。
クリップボードにリンクがあるのに、インポートの案内が表示されないのはなぜ?
リンクだけを含む1行をコピーし直し、プロトコルの接頭辞が欠けていないか、メッセージアプリで途中が切れていないか確認します。システムがペーストを制限している場合は、Shadowrocketのペースト許可を確認してください。HTTPSのサブスクリプションURLはSubscribeのURL欄に直接貼り付け、自動認識に頼らない方法もあります。
更新後も以前に手入力した項目を使えますか?
Add Serverで個別に追加した項目とサーバーサブスクリプションは別々に管理されます。引き続き接続できるかどうかは、元の接続情報が有効かどうかによります。まず選択中の項目が以前に手入力したものか、新しいサブスクリプションのものかを確認し、アドレス、ポート、認証情報を照合してください。Remarksが同じでも、同一の項目とは限りません。
クライアントを購入すると、サブスクリプションも付いてきますか?
クライアントの買い切り購入に、接続サービスの契約は含まれません。ShadowrocketはAppleプラットフォーム向けの有料クライアントで、入手先はApp Storeのみです。追加に必要な情報は利用者自身で用意してください。iPhone、iPadなどの対応Appleデバイスに関するシステム要件は、App Storeの掲載内容をご確認ください。
問い合わせる際は、追加手順、選択したType、エラーメッセージ、Connectivity Testの結果を伝えると状況を把握しやすくなります。サブスクリプションのtoken、パスワード、UUID、鍵などの機密情報は隠し、リンク全体を公開する必要はありません。「情報の種類 → 保存先 → 更新結果 → 接続テスト → ルーティングの状態」の順に記録すると、「追加したが使えない」とだけ伝えるより原因を特定しやすくなります。