2026年7月29日 · はじめに · 約8分

Shadowrocketのサブスクリプション更新方法|手動更新・起動時の自動更新・更新できないときの対処法

Shadowrocketのサブスクリプションを手動で更新する方法、アプリ起動時に自動更新する設定、個別更新の手順を解説。更新できないときによくある原因も紹介します。

この記事の概要

Shadowrocketに自分のサブスクリプションを追加済みの方向けの記事です。まずHomeで手動更新し、リンクから有効なリストを取得できることを確認します。そのうえで必要に応じてSettings → SubscribeのUpdate on Openを有効にしてください。特定のサブスクリプションだけに問題がある場合は、そのグループを個別に更新します。更新に失敗したときは、リクエスト未完了、サーバーによるアクセス拒否、レスポンスを解析できない状態を切り分けましょう。まだ使える記録をすぐに削除しないでください。

サブスクリプション更新で変わること

サブスクリプションには、リストの取得元が保存されています。更新のたびにShadowrocketがそのアドレスへリクエストを送り、レスポンスを読み込んで、該当グループ内のサーバー情報を更新します。サーバー側で名前、アドレス、ポート、接続パラメータが変更されると、新しいリストが以前と異なる場合があります。サブスクリプションの更新はクライアントアプリのアップデートではなく、利用中のサービスの有効期限を延長するものでもありません。

サブスクリプションのアドレスを読み込む リストをリクエストする 接続パラメータを解析する サブスクリプショングループを更新する 接続結果を確認する

HomeのサーバーサブスクリプションとConfigのルール設定は別のものです。サーバーサブスクリプションを更新してもConfigは更新されず、Global Routingが自動で切り替わるわけでもありません。トラブルを調べる前に、どちらのリンクを扱っているか確認し、ルールファイルのアドレスをサーバーサブスクリプション欄に入力しないようにしてください。

手動で下に引いて更新する:まず一度、最後まで更新する

手動更新は、初回追加後に内容を確認するとき、自分が利用しているサービスから変更の案内を受けたとき、自動更新の結果がはっきりしないときに便利です。操作中はShadowrocketを前面に表示し、更新が終わるまで待ちましょう。何度も続けて下に引いても無効なリンクは直らず、サーバーのリクエスト制限にかかるおそれがあります。

  1. グループを確認する

    Homeを開き、追加済みのサブスクリプショングループを探します。まだ追加していない場合は、右上の「+」をタップし、TypeでSubscribeを選択して、自分のサブスクリプションアドレスを最後まで入力して保存してください。

  2. 下に引いて更新する

    Homeのリストを下に引いて、サブスクリプションを更新します。更新状況を確認し、リクエストと解析が完了するまでアプリを離れないでください。

  3. リストを確認する

    対象のグループに有効な記録が残っているか、変更されるはずの名前や件数に変化があるかを確認します。リストに変化がなくても、サーバー側の内容が変わっていない可能性があります。それだけで更新失敗とは判断できません。

  4. 接続をテストする

    使うサーバーをタップして選択し、Homeで選択状態になっていることを確認してから、Connectivity Testを実行します。更新には成功しても接続できない場合は、そのサーバーのパラメータと接続経路を調べてください。

起動時に自動更新する:Update on Openを設定

Settings → SubscribeでUpdate on Openを確認します。有効にすると、アプリを開いたときにサブスクリプションの更新が試みられます。バックグラウンドで常時チェックする機能ではなく、アプリを閉じた後も一定の間隔でリクエストを送り続けるわけではありません。実行条件や画面表示は、現在のアプリで確認してください。

まず手動更新を一度成功させてから、この項目を有効にすることをおすすめします。次回アプリを開いたときに問題が起きても、自動更新の実行条件に達しなかったのか、サブスクリプション自体を更新できなくなったのかを切り分けやすくなります。アプリを開く際にはネットワーク接続が必要です。自動更新でサーバー認証、期限切れ、リクエスト制限を回避することはできません。

アプリを開いたときにネットワークがまだ使える状態になっていないと、更新リクエストがネットワークの復旧前に失敗する場合があります。Wi-Fiを切り替えた直後や、ネットワークへのログイン中などが該当します。まずネットワークに接続し、Homeに戻って手動更新を一度試してください。すべてのサブスクリプションを再追加する必要はありません。

サブスクリプションを個別に更新する:問題の範囲を絞る

複数のサブスクリプションがある場合、あるグループの更新に成功しても、他のグループも成功したとは限りません。個別に更新すれば、問題のあるアドレスを特定しやすくなり、特定サーバー側の問題をアプリ全体の通信障害と誤認せずに済みます。この手順は、利用者自身がすでにサブスクリプションを持っていることを前提としています。当サイトではサーバーやサブスクリプションの提供、販売、推奨は行っていません。

  1. Homeで確認したいサブスクリプショングループを探し、グループ名と現在の記録数を控えます。同じ名前の別グループでないことも確認してください。
  2. そのサブスクリプショングループの操作メニューを開き、Updateを選んで個別に更新します。項目の表示場所は現在のアプリ画面で確認し、削除を選ばないようにしてください。
  3. 結果が出るまで待ち、エラーが表示された場合は全文を記録します。更新に成功したらグループの内容を確認してください。失敗した場合もグループを削除せず、そのまま原因を調べましょう。
  4. 同じネットワークを使い、すでに登録済みの別のサブスクリプションも更新して比較します。一つだけ失敗する場合は、そのリンクとサーバーの状態を優先して確認します。複数が失敗する場合は、共通するネットワーク経路を調べてください。

更新に失敗したとき:エラーとレスポンス内容から対処する

失敗は、ドメイン名の解決、接続の確立、サーバーからの応答、レスポンスの解析など、さまざまな段階で発生します。まず発生時刻、使用中のネットワーク、対象グループ、表示されたメッセージを記録してから、次の対応を判断してください。以下の英文は、ネットワークリクエストで表示されることがあるエラー文やHTTPステータスです。実際の表示はアプリやサーバーによって異なり、毎回同じメッセージが出るとは限りません。

エラー:The request timed out.

原因:許容時間内にリクエストが完了しなかった状態です。ネットワーク経路やサーバーの応答が関係している可能性があります。対処法:まずネットワークが使えることを確認し、ネットワークを一度切り替えてから個別に再試行します。既存の接続状況を踏まえ、Update via Proxyも確認してください。

エラー:401 Unauthorized

原因:サーバーがリクエストの認証情報を受け付けていません。対処法:自分のサービスアカウントでサブスクリプションアドレスを確認し、クエリパラメータをすべて残してください。以前のtokenがリセットされていないかも確認しましょう。

エラー:403 Forbidden

原因:サーバーが今回のアクセスを拒否しました。アカウントの状態やアクセス制限が関係している可能性があります。対処法:利用しているサービスの提供元に、サブスクリプションの権限とアクセス条件を確認してください。このステータスだけでアプリの設定ミスと判断しないようにしましょう。

エラー:429 Too Many Requests

原因:リクエストがサーバーの頻度制限に達しました。対処法:繰り返しの更新をやめ、サーバーの案内に従って時間をおいてから再試行してください。切り分け中はUpdate on Openを一時的に無効にし、リクエストの重複を減らせます。

リクエストは成功したが、リストが空

HTTPリクエストの成功は、レスポンスを受信できたことを示すだけで、有効なサーバー記録が含まれているとは限りません。リンクからアカウントのログインページやエラー説明ページが返されたり、内容が空だったりする場合があります。コピー時にパラメータが抜けると、サーバーから予想と異なるページが返されることもあります。Webページが開けるだけでは、サブスクリプションが有効だとは判断できません。

Update via Proxy:必要な場合にのみリクエスト経路を変更する

Settings → SubscribeのUpdate via Proxyでは、サブスクリプションの更新にプロキシ経路を使うかどうかを設定します。Update on Openとは目的が異なり、前者は更新リクエストの送信方法、後者は更新を試みるタイミングに関わります。プロキシ経由の更新を有効にしても、tokenの誤りは直らず、ログインページがサーバーリストに変わるわけでもありません。

一度に変更する項目は一つにします。たとえば、サブスクリプションアドレスは変えずにネットワークだけを切り替えて再試行し、その後でプロキシ経由の更新設定を確認します。どの操作が結果に影響したか分かりやすくなり、元の設定にも戻しやすくなります。

よくある質問:更新頻度と接続確認

自動更新を有効にしていても、手動更新は必要ですか?

通常の利用では、何度も続けて更新する必要はありません。利用しているサービスから変更の案内を受けたとき、アプリを開いた際にネットワークがまだ使えなかったとき、特定のグループの状態を確認したいときは、Homeで一度手動更新して結果を待ちましょう。

更新に成功したのに、サーバーの数が増えないのはなぜですか?

更新はサーバー側の現在の内容を同期するもので、件数が増えるとは限りません。変更されるはずの記録の名前、アドレス、ポートを確認してください。サーバー側に変更がなければ、件数が同じでも正常です。

更新後に接続できません。サブスクリプションを追加し直す必要がありますか?

まずHomeで選択中のサーバーを確認し、Connectivity Testを実行してください。テストに失敗した場合は、その記録の接続パラメータと利用中のサービスの状態を確認します。テストに成功しても目的のアクセスに問題がある場合は、Global RoutingとConfigを確認してください。すぐにサブスクリプションを削除しないでください。

数秒おきに自動更新できますか?

Update on Openは秒単位の定期実行機能ではありません。必要なときに更新してください。リクエストを頻繁に送ると429になる場合があります。内容に変更がなければ、確立済みの接続を維持するために何度も更新する必要はありません。

Shadowrocketを購入すると、サブスクリプションも付属しますか?

アプリの買い切り購入とサーバー利用プランは別です。ShadowrocketはAppleプラットフォーム向けの有料アプリで、入手先はApp Storeのみです。利用中のサービスのサブスクリプションは自分で追加する必要があり、アプリを購入してもサーバーリストは自動で追加されません。

App Storeでダウンロードまず正規版の情報を確認