公式マニュアル・用語集
Shadowrocket 用語集
画面表示と切り替え、プロトコル、ルールキーワード、購読と設定、アカウントと購入。
画面表示とプロトコル名は英語表記のまま掲載し、それぞれの役割と、そこから判断できないことを説明します。すでに購読情報やサーバー情報をお持ちの方向けの用語集です。初期設定は使い方ガイドを、接続トラブルはトラブルシューティングを確認してください。
接続とルーティングの画面
画面表示と切り替え
まず現在のGlobal Routingモードを確認してから、テスト結果を読み取ります。接続のオン・オフ、自動接続の条件、個々のリクエストに適用する処理方針は、それぞれ別の機能です。
- 画面表示と切り替えHome
- Homeは、接続状態、Global Routing、Connectivity Test、SERVER一覧を確認する主な画面です。初回起動時のNot Connectedは、まだ接続が確立されていないことを示します。接続を有効にする際は、システムの案内に従ってVPN構成の追加を許可する必要がある場合があります。接続状態の変化が示すのはトンネルの状態であり、接続先のWebサイトが開けるかは別途確認してください。
- 画面表示と切り替えGlobal Routing
- Global Routingでは、通信全体の処理方法をConfig、Proxy、Directから選びます。ドメイン名やIPアドレスのルールで通信を振り分ける場合はConfigを選び、使用する設定ファイルも確認してください。問題の切り分けで一時的にモードを変更した場合は、テスト後に元の設定へ戻しましょう。確認用の状態を日常のルール設定と混同しないよう注意してください。
- 画面表示と切り替えConfig
- Configは、設定ファイルの管理画面と、Global Routingで設定に従って通信を処理するモードの両方を指します。Config画面ではファイルを管理し、Configモードを選ぶと現在の設定にあるルールが適用されます。ファイルをインポートしただけでは使用中とは限りません。ルールが反映されない場合は、この2つの状態を確認してください。
- 画面表示と切り替えProxy / Direct
- Global RoutingでProxyを選ぶとプロキシ経由、Directを選ぶと直接接続で通信します。2つの接続経路を一時的に比較する際に使えます。画面上のProxy、Directと、ルール内の大文字表記PROXY、DIRECTは異なる階層の用語です。Directで接続できてもプロキシの設定が正しいとは限らず、Proxyのテストに成功してもConfig内のルール順が正しいとは限りません。
- 画面表示と切り替えOn Demand
- On Demandは、設定した条件に応じて接続を開始する仕組みで、「いつ接続を開始するか」を決めます。一方、Ruleは接続後に「個々のリクエストをどう処理するか」を決めます。手動で接続を切っても再接続する場合は、On Demandの条件を確認し、現在のネットワークで動作を再確認してください。
- 画面表示と切り替えConnectivity Test
- Connectivity Testは、選択した方法でサーバーへの到達性を調べます。結果は現在のネットワーク、テスト先、サーバーの応答に左右されます。表示される所要時間は継続的なダウンロード速度を示すものではなく、すべてのWebサイトに接続できる保証にもなりません。複数の結果を比べる場合は、テスト方法とネットワーク条件をそろえ、実際の通信先でも確認してください。
- 画面表示と切り替えAdd Server / SERVER
- Add Serverでは、ユーザーがすでに保有するサーバーのプロトコル、アドレス、ポート、認証情報を入力します。SERVER一覧には登録した接続情報が表示されます。項目を保存しても、認証や接続が成功したとは限りません。手動で追加するときは、まずプロトコルを確認し、必要な通信方式やセキュリティ設定も照合してください。名称だけで種類を選ばないようにしましょう。
- 画面表示と切り替えDNS
- DNSはドメイン名をIPアドレスに変換します。多くのネットワーク接続を確立する前に必要な処理です。名前解決の経路と、その後のリクエストの接続経路は分けて確認してください。DNSに失敗しても、プロキシサーバーに到達できないとは限りません。トラブル時はまず名前解決の結果とエラー内容を確認し、次に設定ファイルのDNS設定を調べましょう。複数の設定を同時に変更するのは避けてください。
サーバーパラメータの見分け方
プロトコル
プロトコルはクライアントとサーバー間の通信方式を定めるもので、速度や安定性のランクを示すものではありません。以下の用語は、ユーザーがすでに保有する接続情報を見分けるためのものです。対応状況と各パラメータは、使用中のアプリ画面で確認してください。
- プロトコルShadowsocks
- Shadowsocksはプロキシプロトコルの一種です。一般的なパラメータには、サーバーアドレス、ポート、パスワード、暗号化方式があります。暗号化方式はサーバーの設定と一致させてください。パスワードが同じでも、方式が異なれば接続できません。ユーザーが保有する接続情報に追加の通信設定が含まれている場合は、それも確認してください。アドレスとパスワードだけで設定が完了したと判断しないようにしましょう。
- プロトコルVMess
- VMessは認証機能を備えたプロキシプロトコルで、接続には通常、ユーザー識別子と関連する通信パラメータが必要です。同じアドレスとポートでも通信方式が異なる場合があるため、パス、Host、TLSなどの項目も確認してください。認証エラーが発生した場合は、一覧の表示名を何度も変更するのではなく、端末の日時が正確かどうかも確認しましょう。
- プロトコルVLESS
- VLESSはユーザー識別子を使って認証します。具体的な接続方式は、サーバーに設定された通信方式とセキュリティ設定によって異なります。VMessとは別のプロトコルです。項目が似ていても、種類を置き換えて使うことはできません。インポート後に手動で確認する場合は、ユーザーが保有するサーバー情報と照合してください。他のプロトコルの初期設定をそのまま流用しないようにしましょう。
- プロトコルTrojan
- Trojanは一般にTLSと組み合わせて使うプロキシプロトコルです。接続には正しい認証情報とサーバー名が必要です。サーバーアドレス、TLSで使う名前、証明書が対象とする名前は、それぞれ確認が必要な場合があります。証明書エラーが起きた場合は、名前、有効期限、端末の日時を確認してください。証明書検証を無効にする方法を常用するのは避けましょう。
- プロトコルHysteria2
- Hysteria2はQUICをベースにしたプロキシプロトコルで、通信経路にUDPの到達性が必要です。認証、TLS、obfuscation、帯域幅に関するパラメータは、ユーザーが保有するサーバー情報に合わせてください。項目の詳細はアプリ画面で確認できます。プロトコル名だけで速度が保証されるわけではなく、パケットロス、サーバー負荷、設定内容が実際の通信に影響します。
- プロトコルWireGuard
- WireGuardは鍵ペアと接続相手の設定で暗号化トンネルを構築します。エンドポイントアドレスのほか、トンネルアドレスやルーティング範囲も設定します。秘密鍵と接続相手の公開鍵は役割が異なり、互いに置き換えることはできません。秘密鍵を含む設定を公開しないでください。インポート後に接続先へアクセスできるかどうかは、接続相手に許可されたアドレス範囲と実際のルーティングを合わせて確認します。
- プロトコルHTTP / SOCKS5
- HTTPとSOCKS5は異なるプロキシ接続プロトコルです。サーバーが実際に対応する種類を選んでください。ユーザー名とパスワードの要否、通信の暗号化の有無は、具体的なサービスの設定情報から判断します。プロトコル名だけでは分かりません。対応するリクエストの種類やUDPの利用可否も異なる場合があり、ある種類の通信に成功しても、他の通信が使えるとは限りません。
照合条件と処理方針
ルールキーワード
ルールは上から順に照合し、最初に一致したルールの処理方針を適用します。以下のドメイン名とアドレスは構文の説明用であり、接続サービスの情報ではありません。
- ルールキーワードRule
- Ruleは照合条件と処理方針を結び付けます。通常、設定ファイルの
[Rule]セクションに記述します。Configモードではリクエストをルールの順に確認し、一致した時点で対応する方針を適用します。より具体的に見える後続ルールを探し続けることはありません。そのため、例外や範囲の明確なルールを先に置き、広い条件を後に、最後にフォールバックを設定します。
- ルールキーワードDOMAIN
- DOMAINはドメイン名全体に完全一致し、ほかのサブドメインには自動で適用されません。たとえば
DOMAIN,example.com,PROXYはexample.comに一致しますが、このルールだけではwww.example.comに一致しません。ドメイン階層全体を対象にする場合は、サブドメインを個別に列挙するのではなくDOMAIN-SUFFIXを検討してください。
- ルールキーワードDOMAIN-SUFFIX
- DOMAIN-SUFFIXは指定したドメインとそのサブドメインに一致し、同じドメイン階層に共通の処理方針を適用できます。たとえば
DOMAIN-SUFFIX,example.com,PROXYはexample.comとapi.example.comに適用できますが、example.comという文字列を含むすべてのドメインに一致するわけではありません。特定のサブドメインに別の方針を適用する場合は、その例外ルールを先に記述してください。
- ルールキーワードDOMAIN-KEYWORD
- DOMAIN-KEYWORDは、ドメイン名に指定したキーワードが含まれるかどうかを照合します。通常、DOMAINやDOMAIN-SUFFIXより広い範囲に一致します。たとえば
DOMAIN-KEYWORD,example,PROXYは、exampleを含む複数の無関係なドメインにも一致する可能性があります。この広い範囲での照合が本当に必要な場合に限って使い、意図しない一致がないか確認してください。
- ルールキーワードGEOIP
- GEOIPはIPアドレスの地理情報データベースを使って宛先の地域を判定し、指定した処理方針を適用します。判定対象はデータベース上のアドレス分類であり、Webページの言語、アクセスする人の所在地、サービスの利用可否ではありません。ドメイン名が分散配置されたIPアドレスに解決される場合や、データベース間で分類が異なる場合もあります。原因を調べる際は、実際の名前解決結果と一致したルールを確認してください。
- ルールキーワードIP-CIDR
- IP-CIDRはIPv4アドレス範囲に一致します。スラッシュ以降のプレフィックス長が対象範囲を決めます。たとえば
IP-CIDR,192.168.0.0/16,DIRECTは、このプライベートアドレス範囲に直接接続を指定します。ドメイン名の通信で照合のために名前解決が行われるかどうかは、関連するオプションにも左右されます。変更前にアドレス範囲を確認し、単一アドレスを広すぎるネットワーク範囲として指定しないようにしてください。
- ルールキーワードIP-CIDR6
- IP-CIDR6はIPv6アドレス範囲に一致し、IPv4向けのIP-CIDRに対応します。たとえば
IP-CIDR6,::1/128,DIRECTはIPv6のループバックアドレスに一致します。接続先がIPv6通信を使う場合、IPv4ルールだけではすべてのリクエストを説明できません。名前解決の結果とIPv6ルートも確認してください。
- ルールキーワードFINAL
- FINALは、それまでの条件に一致しなかった通信に適用するフォールバック方針です。通常、ルールの末尾に置きます。たとえば
FINAL,DIRECTは残りの通信を直接接続し、FINAL,PROXYはプロキシ経由で処理します。FINALがすでに一致したルールを上書きすることはありません。変更する際は、どの経路に一致しなかった通信を送るか確認してください。
- ルールキーワードPROXY / DIRECT / REJECT
- PROXY、DIRECT、REJECTは、ルールでよく使われる処理方針です。それぞれプロキシ経由、直接接続、一致した通信の拒否を示します。「一致した後にどう処理するか」を表すもので、サーバーアドレスや照合条件ではありません。範囲の広いREJECTルールが先にあると、拒否されたリクエストに後続のPROXYルールは適用されません。
- ルールキーワードUSER-AGENT
- USER-AGENTはHTTPリクエスト内のUser-Agent情報を照合し、リクエストが申告するクライアントの特徴を判別します。関連する情報を取得できる場合に限って機能し、すべての通信に有効なアプリ識別方法ではありません。リクエストヘッダーが変わることもあるため、長期的な通信振り分けの唯一の基準にするのは避けてください。
接続項目とファイル構成
購読と設定
サーバー一覧をインポートしても、通信振り分けルールがインポートされるとは限りません。受け取ったものが購読URL、個別の接続項目、設定ファイルのどれかを見分けてから、対応する操作を選んでください。
- 購読と設定Subscribe
- Subscribeは、ユーザーがすでに保有する購読URLからサーバー項目をインポート、または更新する機能です。URLはユーザー自身が利用するサービスの提供元から入手してください。購読リンクにはアクセス情報が含まれる場合があるため、機密情報として扱い、画面を共有する際はURL全体を隠してください。購読を更新しても、設定ファイル内のRuleまで更新されたとは限りません。
- 購読と設定Server
- Serverは、接続先、プロトコル、認証パラメータをまとめたサーバー項目です。日本語の説明では「ノード」と呼ばれることもあります。一覧上の名前は項目を見分けるためのもので、実際のサーバーアドレスと異なる場合があります。名前だけから所在地や接続品質は判断できません。問題を調べる際は実際のパラメータを確認し、手動追加した項目か購読で更新された項目かも区別してください。更新によって手動の変更が上書きされる場合があります。
- 購読と設定.conf
.confはShadowrocketの設定ファイルで一般的に使われる拡張子です。ファイルには[General]、[Rule]、[Host]、[URL Rewrite]などのセクションを含められます。全般設定、通信の振り分け条件、リクエストの処理方法を記述するもので、サーバーの購読一覧とは異なります。編集前に元のファイルを保存し、変更後の設定を選択してからConfigモードで項目ごとにテストしてください。
- 購読と設定Host
[Host]セクションではローカルのドメイン名マッピングを設定し、指定したドメインを設定済みの名前解決結果に対応させます。変更するのは「ドメイン名をどのアドレスに解決するか」であり、「リクエストにどの処理方針を適用するか」ではありません。その後の通信は実際のルーティング設定に従います。サーバー項目のHostフィールドは、通信リクエストに使うホスト名を指す場合があります。設定場所を確認し、同じ項目として扱わないでください。
- 購読と設定URL Rewrite
- URL Rewriteは条件に基づいてリクエストURLを処理します。プロキシ経由か直接接続かを決めるRuleとは異なる機能です。書き換えが適用されるかどうかは、一致条件、処理方法、アプリが関連するリクエスト情報を取得できるかに左右されます。設定前に対象URLと期待する結果を確認し、内容を理解したリクエストにのみ適用してください。問題が起きた場合は、追加した設定を無効にして結果を比較します。
正規の入手先と購入履歴
アカウントと購入
アプリの購入、サーバーサービス、ローカル設定はそれぞれ別に管理します。購入や復元についてはApp Storeに現在表示されている情報を確認してください。アプリの購入権と設定のバックアップは別のものです。
- アカウントと購入App Storeで正規品を確認
- ShadowrocketはAppleプラットフォーム向けにのみ提供され、入手先はApp Storeのみです。正規品の確認には、公式アイコン、デベロッパのShadow Launch Technology Limited、製品ページのアプリID
932747118を照合してください。同じ名前の検索結果だけで判断しないようにしましょう。iPhone、iPadなどの対応デバイスとシステム要件は、App Storeの製品ページに記載された内容をご確認ください。
- アカウントと購入買い切り
- 買い切りは、クライアントアプリ本体を一度購入する形式です。Shadowrocketはクローズドソースの商用アプリです。アプリの買い切りとサーバーサービスの利用プランは別です。アプリを購入しても、サーバー、購読、関連サービスの利用枠が自動的に付属するわけではありません。価格と通貨はApp Storeの購入確認画面でご確認ください。接続に必要な情報はユーザー自身でご用意ください。
- アカウントと購入購入済み
- 購入済みは、App Storeで購入履歴を確認し、アプリを再入手するための画面です。端末を買い替えたり再インストールしたりする場合は、現在の購入アカウントを確認してください。アプリの再入手と、サーバー情報や設定ファイルの復元は別の操作です。アプリを再入手しても、以前の設定が復元されるとは限りません。対応状況、ユニバーサル購入、ファミリー共有の対象範囲は、App Storeの製品ページでご確認ください。
製品ページと購入手順を確認する場合は、App Storeで正規品を確認する方法をご覧ください。操作の流れに沿って読み進める場合は、Shadowrocketの使い方ガイドをご覧ください。