サブスクリプションURLがある場合はSubscribe、接続パラメータを一つずつ確認したい場合はAdd Serverを使います。QRコードや共有テキストがある場合は、スキャンまたはクリップボードから読み込みます。この記事では、ご自身が利用するサービスとサブスクリプションをお持ちであることを前提に、4つの追加方法で必要な情報、保存後の確認方法、更新に失敗した場合の確認手順を説明します。操作画面はiPhone / iPadを基準とし、ほかのプラットフォームでは対応する項目を確認してください。追加できたことと接続できたことは別々に確認します。
1. サブスクリプションURL・個別の接続情報・Configファイルの違い
Shadowrocketの追加方法は、情報の種類によって異なります。Subscribeはサブスクリプションです。URLからサーバー一覧を読み込み、以後も同じURLから変更内容を取得します。Add Serverはサーバーの追加です。接続に必要なプロトコルとパラメータを1件ずつ保存します。QRコードとクリップボードは情報を読み込む手段にすぎません。読み込んだ内容がどの種類に当たるか、保存前に確認してください。
ConfigはConfigファイルを管理する画面です。リモートConfigのURLをサーバーのサブスクリプションURLと混同しないでください。ConfigファイルにはルールやDNSなどの設定が含まれる一方、サーバーのサブスクリプションは主に接続先の情報を提供します。Config画面でSubscribeに関する項目を操作するときは、対象がサーバーのサブスクリプションなのか、Configファイル内のサブスクリプション参照なのかを確認してください。サーバーを追加する一般的な手順は、Home → 右上の「+」→ Add Server → Type → Subscribeです。
| 手元にある情報 | 見分け方 | 追加方法 |
|---|---|---|
| サーバーのサブスクリプションURL | 通常はアクセス情報を含むHTTPS URLで、開くとリスト形式のデータが返される | TypeでSubscribeを選び、URLを入力 |
| 個別の共有リンク | 一般的なプレフィックスは ss://、vmess://、vless://、trojan:// | QRコードまたはクリップボードから読み込み、取り込まれた項目を確認 |
| 個別の接続パラメータ | サーバーアドレス、ポート、パスワード、UUIDなどを個別に指定 | Add Serverで該当するTypeを選び、各項目を入力 |
| リモートConfigファイル | 本文にConfigの各項目やルールなどが含まれ、サーバー一覧だけではない | Configで管理し、サーバーのサブスクリプションURLとして扱わない |
https://で始まるURLでも、アカウントのログインページである場合があります。プレフィックスだけでサブスクリプションと判断せず、ご自身のサービス情報で用途を確認してから追加してください。以下は接続に使えない形式の例です。example.comは説明用のドメイン、token=xxxxはダミー値です。
https://example.com/sub?token=xxxx
2. Subscribe:サブスクリプションを追加して更新元を保持する
サブスクリプションURLがある場合は、含まれるサーバー情報を1件ずつコピーするのではなく、Subscribeとして保存してください。以後も元のURLから更新できます。追加前にURL全体をコピーし、「サブスクリプションURL:」などの説明文を含めないようにしてください。メッセージ内の改行や空白も一緒にコピーしないでください。
-
URLを用意する
ご自身のサービス情報からサブスクリプションURLをコピーします。先頭、クエリパラメータ、末尾の文字を確認し、大文字・小文字やエンコードをそのまま保ってください。疑問符以降の内容を独自に削除しないでください。
-
追加画面を開く
Homeを開き、右上の「+」からAdd Serverに進み、TypeでSubscribeを選択します。サブスクリプションURLを貼り付けるために、Shadowsocksなどの単一サーバー用Typeを選ばないでください。
-
サブスクリプションを入力する
URLに完全なURLを貼り付け、識別しやすい名前(「個人用サブスクリプション」など)をメモ欄に入力します。メモは更新元の識別に使うもので、取得するサーバーパラメータには影響しません。
-
保存して更新する
保存後にHomeへ戻り、サブスクリプショングループが表示されていることを確認します。リストを下に引いて更新し、リクエストが完了するまで待ちます。初回の読み込みに失敗した場合は、エラー情報を確認し、同じ内容を続けて追加しないでください。
-
サーバー項目を確認する
該当するグループを開き、サーバー項目があることと、名前やプロトコルがご自身の情報と一致することを確認します。その後、項目を1つ選んで接続テストを行ってください。グループ名が表示されたことだけで完了と判断しないでください。
サブスクリプションの更新と接続テストは別の確認です。前者はリストをダウンロードして解析できるか、後者はリスト内のサーバーが使えるかを確認します。更新は成功してもすべての接続に失敗する場合は、サーバーパラメータやサービスの状態を確認してください。更新自体に失敗する場合は、まずURL、ネットワーク、応答内容を確認します。
通常、同じURLを複数登録する必要はありません。繰り返し追加すると更新元が重複して見分けにくくなり、更新や削除の際に間違えやすくなります。URLを変更するときは、古いグループと現在選択中のサーバーの関係を確認してから、該当するサブスクリプションを編集してください。手動で変更した項目も、次回の更新で更新元のデータに置き換わる場合があります。
3. Add Server:プロトコルごとに接続パラメータを入力する
サーバーアドレス、ポート、認証情報はあるものの利用できるサブスクリプションがない場合は、Home → 「+」→ Add Serverを使います。まずTypeを選び、次に項目を入力してください。プロトコルによって認証情報の形式は異なります。VMessのUUIDをShadowsocksのパスワード欄に入力したり、通常のTLS設定をすべてのプロトコル共通のスイッチとして扱ったりしないでください。
Shadowsocksの項目
- Type
- Shadowsocks
- Address
- ご自身のサーバーのドメイン名またはIPアドレスを入力
- Port
- サービス情報に指定されたポートを入力(例:443)
- Method
- サーバー側の暗号化方式と完全に一致させる
- Password
- 対応するパスワードを入力し、大文字・小文字をそのまま保つ
443はポート番号の入力例であり、デフォルトのポートやTLSを使う接続を示すものではありません。
VMessの項目
- Type
- VMess
- Address / Port
- サーバーアドレスとポートをそれぞれ入力
- UUID
- サービス情報に記載されたUUIDを省略せず入力
- Transport
- サーバー側の指定に合わせて転送方式を選択
- TLS
- サービス情報に従ってスイッチやサーバー名を確認
WebSocketなどの転送方式を有効にする場合は、HostやPathなどの関連項目も確認してください。UUIDだけでは不十分です。
VLESS、Trojan、Hysteria2、WireGuardも、それぞれに対応するTypeを選択してください。VLESSでは通常、UUIDと転送設定を確認します。TrojanではパスワードとTLS関連パラメータを確認してください。Hysteria2とWireGuardは項目の構成が異なるため、前の2つの例を流用できません。ご自身の接続情報とアプリに表示される項目を照合し、不足するパラメータを名前から推測して入力しないでください。
- Addressにはホスト名またはIPアドレスを入力します。https://で始まるサブスクリプションURL全体は入力しないでください。
- Portにはポート番号のみを入力します。有効範囲は1~65535です。「ドメイン名:ポート番号」をまとめて入力しないでください。
- TLSを使う場合、サーバー名は証明書の検証に関係します。接続に失敗しても、パラメータの確認を省略するために証明書の検証を無効にしないでください。
- 保存前に空白、全角コロン、改行が含まれていないか再確認してください。パスワードやUUIDの末尾に1文字余分にあるだけでも、認証に失敗します。
4. QRコード・クリップボード:読み込んだ内容を確認する
QRコードはサブスクリプションそのものではなく、テキストを画像にしたものです。中身はss://の共有リンク、サブスクリプションURL、通常のWebページなど、さまざまです。Homeのスキャン機能を開き、案内に従ってカメラへのアクセスを許可し、QRコード全体を枠内に入れます。読み取り後は、種類と各項目を確認してから保存してください。
- QRコード全体が鮮明で、遮られていないことを確認してください。端が切れている場合は、完全な画像を入手し直してください。何度もスキャンを繰り返しても解決しません。
- 読み取り結果がサーバー接続の場合は、プロトコル、アドレス、ポート、メモを確認してください。更新可能なサブスクリプショングループが自動で作成されるわけではありません。
- 読み取り結果がサブスクリプションURLの場合は、Subscribeの手順で更新元を保存します。アカウントページのURLだった場合は、ご自身のサービス情報に戻り、実際のサブスクリプションURLを確認してください。
- QRコードが同じ端末上にある場合は、スキャン画面に画像の読み込み機能があれば利用できます。該当する機能がない場合は、元のテキストをコピーしてください。QRコードを信頼できない相手やサービスに転送しないでください。
クリップボードからの読み込みは、共有テキストをすでに取得している場合に便利です。リンク全体をコピーしてHomeに戻り、クリップボードから読み込む案内に従って操作します。クリップボードのアクセス許可を求められた場合は、この操作で明示的に読み込むときだけ許可してください。案内が表示されない場合は、もう一度コピーし、Homeの追加メニューにクリップボードから読み込む項目があるか確認します。
個別の共有リンクには ss://、vmess://、vless://、trojan://などがあります。ただし、これらのプレフィックスがあっても内容が完全で、現在のプロトコル設定に対応するとは限りません。コピーするときは、引用符、チャットの番号、Markdown記号、末尾の句点を含めないでください。複数のテキストを読み込んだ後は、項目数を確認し、同じ接続を重複保存していないか確認してください。
5. 更新の必要性に合わせて追加方法を選ぶ
4つの方法すべてを使う必要はありません。同じ情報にサブスクリプションと個別の共有リンクがある場合は、必要な管理方法を維持できる方法を1つ選んでください。以下ではShadowrocket内の追加方法と更新方法だけを比較します。「おすすめ」はサーバー一覧を継続して同期したい場合を指し、サーバーの品質を示すものではありません。
Subscribe:更新元を保持
おすすめサブスクリプションURLを保存すると、以後も同じ更新元からサーバー一覧を更新できます。更新元で項目が追加・削除されたり、パラメータが変更されたりした場合は、更新を実行するとローカルの一覧に反映されます。
適したケース:サブスクリプションURLがあり、サーバー一覧を継続して同期したい
Add Server:項目を個別に入力
プロトコルに応じて接続パラメータを手入力し、項目ごとに確認できます。外部のサブスクリプションに変更があっても、保存したアドレスやパスワードが自動で更新されることはありません。
適したケース:個別の接続パラメータだけがあり、接続先を1件ずつ保存したい
QRコード・クリップボード:テキストを読み込む
入力ミスを減らせますが、保存される内容はテキストの形式によって異なります。個別の共有リンクは通常、1件のサーバーとして登録され、サブスクリプションの更新機能は付きません。
適したケース:QRコードまたは完全な共有リンクがあり、手入力を減らしたい
更新前にローカルで変更を加えた場合は、何をどの目的で変更したか記録してください。サブスクリプションの更新元が管理する項目は、更新時に再作成される場合があります。また、個別に手入力した項目をサブスクリプションのバックアップと混同しないでください。サブスクリプション情報を変更する場合は、グループを何度も新しく作るより、元のURLを編集してから更新すると結果を確認しやすくなります。
6. 追加後の接続確認とよくある問題
Homeに戻り、追加したサーバーを選択して接続スイッチをオンにします。VPN構成を初めて作成するときは、システムの案内に従って許可してください。次にHome → Global Routingを確認します。Proxyはプロキシ経由、Directは直接接続、Configは現在のConfigのルールに従った処理を示します。サブスクリプションを追加しても、通信をどのルールで振り分けるかは設定されません。
- サブスクリプショングループを開いただけではなく、具体的なサーバーが選択されていることを確認してください。
- HomeのConnectivity Testで結果を確認し、実際に利用するページも開いて動作を確かめてください。テストで一度応答があっても、すべての宛先にアクセスできるとは限りません。
- Configの状態で特定のリクエストが直接接続される場合は、サブスクリプションをすぐに削除して再追加するのではなく、現在のConfigと適用されるルールを確認してください。
- Settings → On Demandでは、条件に応じて接続を開始する動作を管理します。サブスクリプションのダウンロードには使いません。最初の切り分けでは手動接続を行い、自動接続の動作と追加の問題を分けて確認してください。
貼り付けた後に有効なリンクではないと表示される場合は?
元のテキストをコピーし直し、先頭の説明文や末尾の句読点を削除してください。個別の共有リンクはQRコードまたはクリップボードから読み込みます。HTTPSのサブスクリプションURLはType → SubscribeのURL欄に入力し、サーバーのAddress欄には入れないでください。
サブスクリプションの更新がタイムアウトします。再追加が必要ですか?
まず、現在のネットワークからサブスクリプションURLにアクセスできるか確認してください。利用可能な接続があれば、接続してから再試行します。プロキシ経由で更新する場合は、Settings → SubscribeでUpdate via Proxyを確認してください。利用可能な接続がない状態では、この設定を有効にしても通信経路は確立されません。同じサブスクリプションを何度も追加する必要はありません。
更新完了と表示されるのに、リストが空なのはなぜですか?
まず該当するグループを開き、URLにログインページや説明ページを誤って入力していないか確認してください。応答がWebページや空の内容、またはアプリが解析できない形式の場合は、ご利用のサービスにサブスクリプションの応答内容とアカウントの状態を確認してください。WebページのURLを少し変えて何度も試さないでください。
サーバーは表示されますが、接続後にWebページを開けません。
Homeで選択中の項目を確認し、Global RoutingがDirectになっていないか確認してください。Connectivity Testで接続障害とルールの問題を切り分けます。手入力した項目はポート、認証、TLS、転送パラメータを確認し、サブスクリプションの項目はまず更新元から更新してください。
サブスクリプションURLを他人に送って問題を調べてもらいました。引き続き使えますか?
ご自身のサービス管理ページでサブスクリプション情報を再発行し、Shadowrocketで該当するSubscribeのURLを編集して更新してください。古いURLがすぐに無効になるかどうかは、サービス側の仕様によります。今後スクリーンショットを共有する場合は、URL全体とQRコードを隠してください。エラー内容は別途記録できます。
完了したかどうかは、更新元の保存、項目の正しい解析、実際の接続という3段階で確認します。順番に確認すると重複追加を減らせるだけでなく、サーバー障害、無効なサブスクリプションURL、ルールによる振り分けの問題を切り分けやすくなります。