Shadowrocket
画面・プロトコル・ルールの用語解説
まず画面上の用語がどこに表示されているかを確認し、接続モード、マッチ条件、サーバーのパラメーターのどれを示すのか判断します。同じ語でも表示箇所によって意味が異なる場合があります。たとえば、Config画面とGlobal Routing内のConfig項目です。
対応デバイス:iPhone / iPad / Mac / Windows / Android / Linux。画面構成はプラットフォームによって異なる場合があります。操作箇所は現在のアプリで確認してください。このページでは共通の用語を解説し、操作手順を案内するものではありません。
設定場所と用途から探す
英語の名称は原文のまま掲載しています。大文字のルールキーワードと、先頭のみ大文字の画面項目を分けて解説し、ルーティングモードとルールのポリシーを混同しないよう整理しています。
接続前にモードと接続先を確認
画面の項目は操作場所を示し、接続モードは通信の処理方法を決めます。テストツールで確認できるのは、ある時点での状態です。
- Home
- Homeはサーバー項目やサブスクリプショングループを確認し、接続先を選ぶ画面です。リストにサーバーが表示されていても、情報が読み込まれたことを示すだけで、接続済みとは限りません。接続を開始する前に、選択した接続先とGlobal Routingのモードが意図どおりか確認してください。
- Global Routing
- Global Routingでは、通信を処理するモードを選択します。主な選択肢は設定に従うConfig、プロキシ接続のProxy、直接接続のDirectです。ルールに基づいて通信を振り分けるには、Configを選び、現在の設定を確認します。ルールが適用されない場合は、別のモードでルールを何度も変更する前に、まずここを確認してください。
- Config
- Global Routing内のConfigは、現在の設定に含まれるルールに基づいて接続方法を決めるモードです。一方、画面名としてのConfigは設定ファイルを管理する項目を指します。関連はありますが、操作する場所は別です。設定ファイルをダウンロードしただけでは不十分です。選択されていることを確認し、末尾のルールとポリシーの参照先をチェックしてください。
- Proxy / Direct
- ProxyはGlobal Routingのプロキシモード、Directは直接接続モードです。接続経路の比較に利用できます。ここで表示される項目と、ルール内の大文字表記
PROXY、DIRECTを混同しないでください。一時的な切り分けの後、ルールによる振り分けが必要な場合はConfigに戻し、対象のリクエストで確認します。
- On Demand
- On Demandは、システムが対応するネットワーク条件に基づいて接続を開始する設定です。サブスクリプションの更新や、サーバーパラメーターの誤りの修正には使えません。手動で接続を切っても再接続される場合は、この項目とシステムのVPN設定を確認してください。条件や設定場所は、現在のプラットフォームの画面で確認します。
- Add Server
- Add Serverでは、利用者がすでに持っているサーバー情報を手動で入力します。プロトコル、サーバーアドレス、ポート、認証、伝送パラメーターを正しく組み合わせる必要があります。アドレスだけ入力しても設定は完了しません。変更前に元のパラメーターを控え、サーバーアドレスとTLSのサーバー名を区別してください。
- Connectivity Test
- Connectivity Testは、項目の接続性を確認する機能です。結果はテスト方法、テスト対象、現在のネットワーク状態によって変わります。テストに成功しても、すべてのウェブサイトやアプリにアクセスできるとは限らず、すべてのルールが適用された証明にもなりません。実際のリクエストと診断ログで、対象の接続がどう処理されるかを確認してください。
- 遅延
- 遅延は、テストリクエストへの応答を受け取るまでの時間で、通常はミリ秒で表示されます。数値が小さくても、ファイルのダウンロードが速いとは限りません。スループットは帯域幅、混雑状況、接続先の負荷にも左右されます。比較する場合は、同じネットワークとテスト方法を使い、なるべく近い時間に測定してください。タイムアウトした場合は原因を切り分けます。
プロトコル・伝送方式・セキュリティ層を分けて確認
プロトコル名だけでは、接続に必要なパラメーターは分かりません。ここでは技術上の用途を説明します。実際の入力内容は、利用者が用意したサーバーの設定に従ってください。
- Shadowsocks
- Shadowsocksはプロキシプロトコルの一つです。通常、接続にはサーバーアドレス、ポート、パスワード、暗号化方式が必要です。暗号化方式は接続する双方で一致させる必要があり、新しそうな選択肢に安易に変更しないでください。インポート後に接続できない場合は、まず基本項目を確認し、次にネットワークからリモートポートへ到達できるか調べます。
- VMess
- VMessはUUIDなどのパラメーターでユーザーを識別し、サーバー側の設定と一致させる必要があります。プロトコルに加えて、伝送方式、パス、Host、TLSなどを設定する場合があります。必要な内容は元の接続情報によって異なります。UUIDが正しくても伝送設定が一致しなければ接続できないことがあるため、認証情報だけでなく各項目を照合してください。
- VLESS
- VLESSはUUIDなどの情報で認証しますが、プロトコル自体はペイロードを暗号化しません。実際の構成に応じて、セキュリティ層と伝送方式を確認してください。VMessの項目で種類だけ変更すれば使えるとは限りません。追加する際は、サーバーから提供されたパラメーターをすべて照合し、名称だけからTLSなどの設定を推測しないでください。
- Trojan
- Trojanは通常、TLSとパスワード認証を組み合わせてプロキシ接続を確立します。サーバーアドレス、ポート、パスワード、サーバー名などを接続先の設定に合わせます。証明書の検証に失敗すると接続が中断される場合もあります。問題を切り分けるときは、まず設定値とデバイスの時刻を確認してください。証明書検証を無効にする方法を常用しないでください。
- Hysteria2
- Hysteria2はQUICベースのプロキシプロトコルで、利用中のネットワークでUDP通信が可能かどうかが影響します。認証、TLSなどの接続パラメーターはサーバーの設定に従ってください。プロトコル名だけから設定を推測することはできません。同じ項目でもネットワークを変えると結果が異なる場合は、UDPの到達性やネットワーク制限を確認し、パスワードの変更を繰り返さないようにします。
- WireGuard
- WireGuardは鍵ペアとトンネルのパラメーターを使って接続します。一般的な情報には、接続先アドレス、公開鍵、トンネルアドレスなどがあります。鍵は通常のパスワードとは異なり、公開鍵と秘密鍵の用途も別です。インポートやバックアップの際は秘密鍵を安全に管理し、接続先だけでなくアドレス範囲や関連するルーティング設定も確認してください。
- HTTP / SOCKS5
- HTTPとSOCKS5は、接続時のネゴシエーションや認証方法が異なるプロキシプロトコルです。プロトコル名だけでは、クライアントからプロキシサーバーまでの通信が暗号化されているとは限りません。実際のセキュリティ設定を別途確認してください。接続先ウェブサイトのHTTPSと、プロキシ経路の暗号化は別の問題です。
- TLS
- TLSは接続の暗号化と認証に使うセキュリティ層で、Global Routingのモードではありません。接続先アドレス、サーバー名、証明書のIDは別々に設定される場合がありますが、サーバー側の構成と一致させる必要があります。ハンドシェイクエラーが発生したら、デバイスの時刻、サーバー名、証明書関連のパラメーターを確認してから、ネットワーク接続の問題かどうか判断してください。
条件にマッチした後、ポリシーを適用
ルールは通常、上から順に確認されます。範囲の広いルールを先に置くと、後続の具体的なルールが適用されないことがあります。
- ルール
- ルールは通常、マッチタイプ、マッチ値、処理ポリシーで構成され、リクエストの接続方法を決めます。一般に上から順に確認され、最初に一致した項目の処理が適用されます。問題の切り分けでは、対象ドメインがファイル内にあるかだけでなく、ルールの内容と順序、現在のルーティングモードも確認してください。
- DOMAIN / DOMAIN-SUFFIX / DOMAIN-KEYWORD
DOMAINはドメインの完全一致、DOMAIN-SUFFIXはドメインのサフィックス一致、DOMAIN-KEYWORDはドメイン内のキーワード一致に使います。サフィックスルールは該当ドメインとサブドメインに適用できますが、キーワード一致はより広い範囲にマッチする場合があります。マッチ値には必要なドメイン名またはキーワードだけを指定し、ウェブページのパス全体をドメインとして入力しないでください。
- GEOIP
GEOIPは、宛先IPアドレスが地域データベース上で属する地域に基づいてマッチします。ウェブページの言語やユーザーの現在地を判定するものではありません。データベースや宛先アドレスが変わると結果も変わることがあります。ドメイン名でアクセスする場合は、名前解決後のアドレスも考慮してください。特定のドメインに決まった処理を適用するには、より優先度の高いドメインルールが必要か検討します。
- IP-CIDR / IP-CIDR6
IP-CIDRはIPv4アドレス範囲、IP-CIDR6はIPv6アドレス範囲にマッチします。スラッシュ以降のプレフィックス長で範囲が決まります。値を誤ると範囲が広くなったり狭くなったりするため、通常のポート番号とは区別してください。デュアルスタック接続を調べる際は、IPv4とIPv6のルール適用範囲をそれぞれ確認します。
- FINAL
FINALは、それ以前のルールに一致しない場合に適用する最終ルールで、通常はルールリストの末尾に置きます。処理ポリシーも指定する必要があります。たとえばPROXYに処理を委ねます。意図したフォールバックになるかは先行するルールも含めて確認してください。FINALを早い位置に置くと、後続ルールに影響します。
- PROXY / DIRECT / REJECT
- これらの大文字キーワードは、ルールに一致した後の処理を指定します。
PROXYはプロキシ経由、DIRECTは直接接続、REJECTは接続拒否を表します。マッチ条件やプロトコル名ではありません。カスタムポリシーグループを使う設定では、グループ内で実際に選択されている接続先も確認してください。ルール末尾の名前だけでは最終的な経路を判断できません。
- DNS
- DNSはドメイン名をIPアドレスに変換し、多くの接続に先立って行われます。名前解決の失敗とプロキシのハンドシェイク失敗は、異なる段階で発生します。名前解決の経路と、その後の通信の経路も同一とは限りません。一部のドメインで問題が起きる場合は、名前解決結果、キャッシュ、ルールの記録を順に確認してください。
- URL Rewrite
- URL Rewriteはマッチ条件に応じてリクエストURLを書き換える機能です。たとえば、条件に合うURLを別のURLへリダイレクトします。プロキシ接続と直接接続を選ぶルーティングルールとは役割が異なり、暗号化されたリクエストの内容を自由に変更できるという意味でもありません。ルールによる振り分けだけが必要な場合、出所の分からない書き換え設定を追加する必要はありません。
サーバーリストとローカル設定を区別する
サブスクリプションはサーバー情報の更新に使い、設定は通信の処理方法を決めます。同期、購入履歴の復元、サブスクリプションの更新は、それぞれ扱うデータが異なります。
- サブスクリプション / Subscribe
- サブスクリプションは、サーバー情報をまとめて取得・更新するためのものです。URLは利用者自身のサービス提供元から入手してください。アカウントを識別する機密情報が含まれることがあるため、画面の公開や掲示板への貼り付けは避けてください。追加後はリストに項目があるか、内容が意図どおりか確認します。サブスクリプションだけでルール設定まで完了するとは限りません。
- サーバー / SERVER
- サーバー項目には、通常、アドレス、ポート、プロトコル、認証情報、および必要に応じた伝送設定が含まれます。リストに表示される名前は識別用のラベルにすぎず、変更しても接続先アドレスや接続機能は変わりません。手動入力でもサブスクリプションからの読み込みでも項目を作成できますが、その後の管理や更新方法は異なる場合があります。
- 設定ファイル
- 設定ファイルには、ルール、DNS、ポリシーなどの設定を保存できます。主にサーバーリストを提供するサブスクリプションとは用途が異なります。読み込み後は、そのファイルが選択されているか、記載されたポリシー名が実際の接続先と対応しているか確認してください。置き換える前に現在使える設定のコピーを保存しておくと、問題が起きた際に元へ戻せます。
- サブスクリプションの更新
- サブスクリプションを更新すると、同じURLを再読み込みし、サービス提供元の最新情報をローカルに同期します。サブスクリプションの項目を手動で変更しても、次回の更新で上書きされる場合があります。変更前に、独立した項目を編集しているのか、サブスクリプションの内容を編集しているのか確認してください。更新に失敗した場合は、ネットワーク、URLの完全性、サーバー側の状態を確認します。重複したグループが増えないよう、続けて何度も読み込まないでください。
- Scan QR Code
- Scan QR Codeは、QRコードに含まれる接続情報を読み取ります。コードの内容は単一のサーバーの場合も、ほかの対応データの場合もあります。読み取りに成功しても、パラメーターが正しい、またはサーバーが利用可能であるとは限りません。読み込みの前後に種類と各項目を確認し、認証情報を含むQRコードは機密情報として扱ってください。
- iCloud同期
- iCloud同期は、Appleデバイス間で対応データを同期する仕組みです。通常、同じAppleアカウントを使い、必要な権限を有効にする必要があります。サブスクリプションの更新やApp Storeの購入済み記録の代わりにはなりません。機種変更の前に、購入に使ったアカウント、同期対象、ローカルのバックアップをそれぞれ確認してください。すべての接続状態が自動的に復元されるとは限りません。
アプリの入手と接続サービスを分けて考える
このカテゴリのストア関連用語は、主にiPhone / iPad向けです。その他のプラットフォームのShadowrocketは、当サイトのダウンロードページから入手できます。
- App Storeのストア地域とアカウント地域
- App Storeのストア地域は、購入に使うAppleアカウントの地域によって異なり、アプリの表示、通貨、利用できる購入方法に影響します。デバイスの言語、現在地、プロキシの接続元とは別の設定です。ネットワークを切り替えてもストア地域は変わりません。システム要件はApp Storeのページに記載された内容を確認してください。アプリが見つからない場合は、まずストア地域と製品情報を確認します。
- 正規品の確認
- iPhone / iPadでは、App Storeでデベロッパー名Shadow Launch Technology Limited、公式アイコン、アプリID
932747118を確認してください。名前が似ていても同じ製品とは限りません。3つの情報を合わせて確認します。Mac、Windows、Android、Linux版は当サイトのダウンロードページから、/dl/shadowrocket/を参照するインストールファイルを入手し、ページの説明に従ってシステムの実行許可を設定してください。
- 買い切り
- iPhone / iPad版はApp Storeで$2.99の買い切りです。Mac / Windows / Android / Linux版は無料です。各ストアでの実際の価格はストアページで確認してください。アプリの買い切りは接続サービスの契約とは異なり、購入しても利用可能なサーバーやサブスクリプションは自動で提供されません。iPhoneとiPadで購入を復元する場合は、購入時のアカウントを使ってください。接続情報は別途読み込むか復元する必要があります。
- 購入済み
- 購入済みは、購入に使ったアカウントに紐づくApp Store上のアプリ記録です。機種変更後や再ダウンロード時に、購入済みのShadowrocketを探すために使えます。保存されるのはアプリの入手記録であり、サーバーリスト、サブスクリプションURL、ルール設定ではありません。記録が見つからない場合は、購入時のアカウントかどうかを確認し、ストア画面で購入履歴や関連する表示設定を調べてください。
ストア地域、購入履歴、機種変更時の復元方法はApp Storeガイドをご覧ください。登録済みの項目が接続できない場合は、まずよくある質問を参考に、読み込み、名前解決、ハンドシェイク、ルール適用のどの段階で問題が起きているか確認してください。
カテゴリ一覧に戻る ↑