Shadowrocketのサブスクリプション追加方法4選|ConfigのSubscribe、Add Server、QRコード、クリップボード

Shadowrocketにサブスクリプションを追加する4つの方法を、用途や手順とともに解説。リンク形式も紹介します。URLは契約先から入手してください。例にはexample.comのダミー値を使用しています。

この記事の概要

この記事は、自分のサブスクリプションまたはサーバー情報をすでに持っていて、iPhoneやiPadでShadowrocketに追加する方を対象としています。サーバーサブスクリプションとリモート設定を区別したうえで、Subscribe、Add Server、QRコード、クリップボードの4つの方法から選びましょう。追加後はサーバー一覧、更新結果、Global Routingを確認し、「URLを保存できた」ことと「接続できる」ことを混同しないようにしてください。

1. 追加前にサブスクリプション、個別リンク、設定ファイルを区別する

ShadowrocketはAppleプラットフォーム向けの有料クライアントです。アプリの購入と接続サービスの利用は別のものです。この記事では、すでにサービス提供元とサブスクリプションを利用していることを前提とします。当サイトではサーバーやサブスクリプションの提供、販売、推奨は行っていません。アプリの入手先はApp Storeのみです。正規アプリの確認方法と購入については正規アプリ確認ページをご覧ください。

4つの方法は、4種類のプロトコルを意味するものではなく、どの方法でも同じ内容が登録されるとは限りません。サブスクリプションURLは通常、更新可能なサーバー一覧を取得するためのものです。個別の共有リンクは1つの接続情報を表し、リモート設定にはルール、DNS、ポリシーなどが含まれる場合があります。URLがhttps://で始まるかどうかだけで判断せず、実際に返される内容と提供元の説明を確認してください。

手元にある情報見分け方確認する結果
サーバーサブスクリプション提供元がサブスクリプションURLと明記し、対応するサーバー一覧を返すHomeにサブスクリプショングループとサーバー項目が表示される
個別の共有リンクss://、vmess://、vless://、trojan://などのプレフィックス該当するプロトコルのサーバー項目が1つ表示される
手動入力する接続情報プロトコル、サーバーアドレス、ポート、認証情報がそろっているAdd Serverの各項目が元の情報と一致する
リモート設定提供元がShadowrocket用の設定ファイルと明記しているConfigに設定が追加されている。別途、有効化されているか確認する

サブスクリプションURLのクエリパラメーターには、アクセス用の認証情報が含まれることがあります。URL全体を公開の掲示板などに投稿しないでください。QRコードも、機密情報を含まない普通の画像として扱わないようにしましょう。以下のhttps://example.com/sub?token=xxxxは形式を説明するためのダミー値で、接続やテストには使えません。

2. Subscribeを使う前にConfigとHomeの役割を確認する

「ConfigページのSubscribe」を探す際は、まず追加するリソースの種類を確認してください。Configは主に設定ファイルを管理し、Homeにはサーバーと接続状況が表示され、Settingsではアプリの設定を管理します。画面にSubscribeと表示されていても、あらゆるサーバーサブスクリプションをConfigに貼り付ければよいわけではありません。

一般的なサーバーサブスクリプションは、Home → + → Add Server → Type → Subscribeから追加できます。Add Serverは追加画面のタイトルです。手元の情報がリモート設定であるとはっきりしている場合は、Configのリモート設定追加画面を使い、読み込み後に設定内容を確認してください。画面上の項目名を探すために、サーバー一覧のURLをConfigに何度も読み込ませないでください。

  1. 情報の種類を確認

    提供元から渡されたのがサーバーサブスクリプションURLであり、アカウント管理ページ、決済ページ、リモート設定のURLではないことを確認します。

  2. 追加画面を開く

    Home → +を開き、Add Server → TypeでSubscribeを選択します。

  3. URLを入力する

    サブスクリプションURL全体をURLに貼り付け、Remarksには見分けやすい名前を入力します。パス、疑問符、それ以降のパラメーターを省略せずに残してください。

  4. 保存して更新する

    DoneをタップしてHomeに戻り、一覧の取得が完了するまで待ちます。再取得する場合は、Homeで下にスワイプしてサブスクリプション一覧を更新します。

  5. グループを確認

    該当するサブスクリプションを展開し、サーバー項目が実際に表示されることを確認します。グループ名だけが表示されて項目がない場合は、リクエスト結果とサブスクリプションの形式を確認してください。

3. Add Serverに手入力する:接続情報がそろっている場合

サーバー情報はあるものの、認識可能な共有リンクがない場合は手入力が適しています。作成されるのはサーバー項目であり、更新可能なサブスクリプションが自動で作られるわけではありません。Home → + → Add Serverを開き、まずTypeを選択してから、そのプロトコルに対応する項目を入力してください。プロトコルごとに認証情報は異なり、流用できません。

Shadowsocksの入力内容を確認

Type
Shadowsocks
Address
example.com(ダミー値)
Port
8388(形式の例)
Method
元の情報に指定された暗号化方式と一致している
Password
自分の認証情報を入力し、先頭と末尾の空白に注意する

8388は必須の固定ポートではありません。実際のポートには、利用中のサービスで指定された値を使ってください。

VLESSの入力内容を確認

Type
VLESS
Address
example.com(ダミー値)
Port
443(形式の例)
UUID
自分のユーザーIDと一字ずつ照合する
TLSとトランスポート
元の情報に従って、サーバー名、トランスポート方式、関連パラメーターを確認する

ポートが443というだけでは、TLSが有効だとは判断できず、必要なトランスポート設定の代わりにもなりません。

たとえば、サーバーアドレスとポートが正しくても、TLSのサーバー名やWebSocketのパスが誤っていれば接続に失敗することがあります。1回の遅延テストだけで設定全体が正しいと判断しないでください。VMess、Trojan、Hysteria2、WireGuardにもそれぞれ異なる認証方法とトランスポート要件があります。別のプロトコルの項目を当てはめず、手元の情報に従って一つずつ入力してください。

4. QRコードとクリップボード:追加方法が違っても内容の確認が必要

QRコードとクリップボードは、テキストをアプリに渡す方法であり、テキストの意味を変えるものではありません。QRコードには、個別のss://リンク、サブスクリプションURL、通常のWebページURLのいずれが含まれている場合もあります。追加後に、サーバーが1つ登録されたのか、サブスクリプショングループが追加されたのか、認識できない内容だったのかを確認してください。

情報の保存場所に合わせて追加方法を選ぶ

別の画面に情報がある場合
  • Homeでスキャンを開始し、案内に従ってカメラへのアクセスを許可します。
  • QRコード全体が読み取り範囲に入るようにし、反射や端の欠けを避けてください。
  • 読み取り後、リンクの種類とプレビュー項目を確認してから追加します。
  • サーバーが1つだけ追加された場合は、元のQRコードが個別リンクではなかったか確認してください。
同じデバイスに情報がある場合
  • リンク全体をコピーしてください。説明文、引用符、文末の句読点を一緒にコピーしないでください。
  • Shadowrocketに戻り、クリップボードの読み取りや読み込みの確認が表示されたら、内容を確認してから進みます。
  • 確認が表示されない場合は、サブスクリプションURLをAdd ServerのSubscribeフォームに貼り付けられます。
  • 個別の共有リンクは、アプリに表示されるリンク読み込みの案内から追加してください。サーバーアドレス欄に入力しないでください。

QRコードとクリップボードには、同じ認証情報が含まれている場合があります。受け渡し方法を変えても、サブスクリプションの利用権限が増えたり、不足しているパラメーターが自動で補われたりすることはありません。

iPhoneやiPadでは、ほかのアプリからのペーストを許可するか尋ねられる場合があります。許可しなかった結果、読み取り内容が表示されなくても、リンクが無効だとは限りません。必要なアクセス許可が済んでいるか確認するか、Subscribeフォームに戻って手動で貼り付けてください。同じ情報をすでに追加している場合、スキャンやコピーを繰り返すと重複項目ができることがあります。トラブルシューティングの代わりに何度も追加するのは避けてください。

サブスクリプションURLのダミー例:
https://example.com/sub?token=xxxx

個別の共有リンクによくあるプレフィックス:
ss://
vmess://
vless://
trojan://

プレフィックスの後ろには、エンコードされた認証情報、サーバー情報、トランスポートパラメーターが含まれることがあります。等号、スラッシュ、パーセントエンコード、クエリパラメーターをむやみに削除しないでください。リンクの長さだけで、情報がそろっているか判断することもできません。上記のプレフィックスは形式の見分け方を示すもので、接続に使える完全な情報ではありません。

5. 追加後は一覧、更新、ルーティングをそれぞれ確認する

「保存成功」「更新成功」「Webページにアクセスできる」は、それぞれ別の確認結果です。保存成功は入力をアプリが受け付けたことを示します。更新成功はサブスクリプションの取得と解析が完了したことを示します。Webページにアクセスできるかどうかは、サーバーの状態、認証、DNS、現在のルーティング設定にも左右されます。まずHomeで項目が登録されていることを確認し、自分が利用しているサーバーを1つ選んでテストしてください。

4つの追加方法
Subscribe、Add Serverへの手入力、QRコード、クリップボード
3つの確認結果
URLの保存、一覧の更新、実際のアクセスを個別に確認
2種類の更新
サーバーサブスクリプションとリモート設定の更新を分けて確認

HomeのGlobal RoutingにあるConfig、Proxy、Direct、Sceneはルーティングモードであり、サブスクリプションのプロトコルではありません。ここで選択肢を変えても、誤ったサブスクリプションURLは修正されません。以下では、トラブルシューティングでよく使う3つのモードを比較します。Sceneの動作は設定したシーンによって異なるため、内容を確認せずに判断しないでください。

Config

おすすめ

現在有効な設定のルールに従って通信を処理します。まずConfigで意図した設定が有効になっているか確認し、ルールに基づいて対象のリクエストの行き先を判断してください。

適したケース:信頼できる設定があり、ルールに沿って日常的に使う場合

Proxy

対象となるリクエストをプロキシ経由で処理し、Configの結果との比較に使えます。「サブスクリプション更新」の切り替えではなく、すべてのシステム通信がプロキシ経由になることを保証するものでもありません。

適したケース:短時間の比較テストで、ルールと接続のどちらに問題があるか切り分ける場合

Direct

対象となるリクエストを直接接続で処理します。この状態でWebページを開けても、選択したサーバーの認証やトランスポート設定が有効だとは証明できません。

適したケース:現在のネットワークで直接接続した場合の比較結果を得る

Configを使う場合、DOMAIN-SUFFIXはドメインのサフィックスに一致し、GEOIPとIP-CIDRはIPに関する条件を処理し、FINALは最後のフォールバックに使われます。これらのルールは設定ファイルに記述するもので、サブスクリプションURL欄に貼り付けるものではありません。自動接続の設定は別の作業です。接続先はSettings → On Demandです。手動接続の確認を済ませてから、利用するネットワーク環境に合わせて設定してください。

6. サブスクリプションが空、更新に失敗、項目が重複した場合の確認手順

更新に失敗した場合も、まず既存の利用可能な項目を残してください。すべての設定をすぐに削除する必要はありません。原因はURLの入力、リソースの取得、内容の解析、接続後のいずれかで発生している可能性があります。追加方法を次々に変えるより、段階ごとに確認範囲を絞ると原因を見つけやすくなります。

  1. URL全体を確認します。元の情報と照らし合わせて、スキーム、ドメイン、パス、tokenなどのパラメーターを確認してください。チャットアプリに表示された省略形は、完全なURLとして使えません。
  2. 取得した内容を確認します。URLを開いたときに、想定したサブスクリプション内容ではなくログインページやエラーが表示される場合、直接読み込めるサブスクリプションリソースではない可能性があります。アカウントのパスワードをサーバーの認証欄に入力して解決しようとしないでください。
  3. リソースの形式を確認します。通常のWebページを開けても、Subscribeで解析できるとは限りません。利用中のサービスの提供元に、指定された形式がShadowrocketで使えるか確認してください。
  4. 現在のネットワークを確認します。ドメインを解決できない、接続がタイムアウトする、認証エラーが明示される、といった状況を切り分けてください。一度に変更する条件は1つにし、更新結果を記録します。DNS、ルール、サーバー情報を同時に変更しないでください。
  5. サブスクリプションの登録元を確認します。同じサーバーが、手入力の項目とサブスクリプショングループの両方に含まれている場合があります。重複項目を削除する前に登録元を確認し、残す必要があるサブスクリプション全体を削除しないようにしてください。
  6. 認証情報が有効か確認します。元のURLが失効または変更されている場合は、自分の新しいURLを使って元のサブスクリプションを更新してください。使えなくなった古いURLを転送したり、何度も試したりしないでください。
QRコードから追加すれば、無効になったサブスクリプションURLを直せますか?

いいえ。QRコードに同じ無効なURLが含まれている場合、スキャンで手入力の手間が省けるだけで、リモートのリソースは変わりません。QRコードの内容が現在有効なURLと一致しているか、まず確認してください。

サブスクリプションを更新しても、手入力した項目が変わらないのはなぜですか?

手入力した項目とサブスクリプション内の項目は、通常それぞれ別の登録元に属します。サブスクリプションを更新しても、すべてのサーバーが一括で置き換わるわけではありません。個別に手入力した項目のパスワード、ポート、トランスポート設定も自動更新されません。

一覧にサーバーがあり、遅延も正常なら、設定は完了ですか?

実際の接続先へのアクセス、現在のGlobal Routing、有効な設定も確認してください。遅延テストの結果は、そのテスト方法に対するものです。認証、TLS、DNS、ルールの設定全体を確認する代わりにはなりません。

App Storeの正規アプリ確認してから購入