この記事の概要

購読更新に失敗したら、まず「データを取得できない」「内容を解析できない」「ノードを取り込めたが接続できない」のどれに当たるかを確認しましょう。v2rayNやv2rayNGでタイムアウト、購読の解析エラー、更新後にノードが表示されないといった問題が起きた場合に、URL、応答内容、プロキシ経路、システム時刻、プロトコルの互換性を順に確認します。使えるノードを残し、再インストールを最初の対処にしない手順を紹介します。

最初に切り分ける:取得・解析・接続

購読の更新に成功しても、ノードに接続できるとは限りません。購読URLはサーバー設定を取得するためのもので、クライアントはまず応答をダウンロードし、形式を判別してノードを取り込みます。ノードを選択した後、実際の接続を担うのがコアです。処理を段階ごとに分ければ、HTTPリクエストの失敗時にコアを何度も切り替えたり、プロトコル非対応のときに同じURLを繰り返し貼り付けたりせずに済みます。

購読URLを読み込む購読サーバーにリクエスト応答内容を解析ノード設定を取り込むコアが接続を確立
症状まず確認する項目判断の目安
タイムアウト、接続拒否ネットワーク経路とプロキシの状態購読の応答を最後まで取得できていない可能性があります
401、403、404アクセストークン、権限、URLサーバーから応答はあるものの、目的のデータを取得できていません
解析エラー、取り込まれたノードが0件応答本文と購読形式Webページや非対応の設定形式を取得している可能性があります
ノードは表示されるが接続できないノードの設定、コア、サーバーの状態購読の取得とインポートは完了している可能性があります

エラーが起きた時刻、更新方法、現在のグループ名を記録してください。更新前後のノード数も確認しましょう。たとえば、12件あったノードが更新後に0件になった場合と、件数は変わらないのに接続できない場合では、原因が異なります。グループをすべて削除するのは避けてください。使える古いノードを残しておけば、「プロキシ経由で更新」が機能するかを確かめる手がかりになります。

購読URLを確認する:トークン、権限、応答状態

クライアントを再インストールする前に、URLが正しいか確認しましょう。購読サービスのアカウントページから、クライアント用の購読URLをコピーしてください。アカウントのトップページやログインページ、個別ノードの共有リンクをコピーするのは避けます。vmess://やvless://で始まる文字列は通常、ノード共有リンクであり、複数の設定を定期的に取得するHTTP購読URLではありません。

  1. URLの先頭と末尾に空白、改行、引用符、日本語の句読点が混入していないか確認します。クエリパラメーターはすべて残し、疑問符以降のトークンを削除しないでください。
  2. アカウントの有効期限や利用上限、購読トークンがリセットされていないか確認してください。トークンを再発行した場合、クライアントに登録済みの古いURLも通常は差し替える必要があります。
  3. 該当クライアント向けとして提供元が案内している購読形式をコピーしたか確認します。ブラウザーで開ける設定ファイルでも、使用中のクライアントにインポートできるとは限りません。
  4. ログイン画面やCAPTCHA、アクセス確認画面に転送される場合は、クライアントから直接アクセスできる購読URLを提供元に確認してください。認証画面をノード一覧として扱わないようにしましょう。
200
リクエストに成功しても、応答本文の確認が必要
401
認証情報が有効か確認する
403
権限とアクセス制限を確認する
443
HTTPSで一般的なサーバーポート

HTTP 200はリクエストが正常に応答されたことを示すだけで、本文が購読データであるとは限りません。サーバーがエラーを知らせるWebページを返す場合もあります。401は認証情報、403は権限やアクセス制限、404はパスの変更をまず確認してください。実際の原因は応答内容と提供元の案内をもとに判断し、ステータスコードだけでアカウントの期限切れと決めつけないようにしましょう。

解析エラー:Base64と実際の応答本文を確認

解析エラーが起きたら、手動でエンコードを補う前に「実際に何を受信したか」を確認しましょう。一般的な購読では、複数行のノード共有リンク全体をBase64でエンコードしますが、クライアントが対応する別形式を返すサービスもあります。HTMLのログインページ、JSON形式のエラー、別ソフト向けのYAML設定は、正常にダウンロードできても、現在のクライアントではノード購読として解析できない場合があります。

Base64の末尾に=がなくても、必ずしもデータが破損しているわけではありません。形式によってはパディングを省略できます。また、改行があるだけで解析に失敗するとも限りません。確認すべきなのは、元の応答が完全か、どの形式でエンコードされているか、クライアントがその購読形式に対応しているかです。何度も手動でエンコード・デコードして貼り直すと、正常な購読を二重にエンコードしてしまうことがあります。

エラー:Invalid length for a Base-64 char array or string.

原因と対処:.NETでBase64を解析する際に発生することがあるエラーです。内容の欠落や、購読本文以外のデータをデコードしようとした場合などに起こります。まず元の応答と形式を確認してからURLをコピーし直してください。文字列の末尾に記号を足すだけでは解決しません。

エラー:Response status code does not indicate success: 403 (Forbidden).

原因と対処:HTTPリクエストがサーバーに拒否されています。ノードのプロトコル解析の問題ではありません。アクセストークンとサーバー側の制限を確認し、有効な応答を取得してからBase64を調べてください。

更新がタイムアウトする:直結とプロキシを比較し、ループを切り分ける

プロキシ経由で更新するには、使用中のプロキシが正常に動作している必要があります。現在のノードが使えず、購読リクエストもそのノード経由でなければならない場合、「更新にはプロキシが必要だが、プロキシの復旧には更新が必要」という依存関係が生じます。実際にネットワークパケットがループしているとは限りませんが、対処として依存関係を切り分け、直結と、正常に使えることが確認済みのプロキシ経路を別々にテストしましょう。

  1. 現在のノードを確認する

    登録済みのノードを1つ選択し、クライアントのコアが動作していることと、通常のHTTPS通信をそのノード経由で行えることを確認します。「接続済み」の表示やタスクトレイのアイコンだけでは、プロキシの出口が使えるとは限りません。

  2. 直結での更新をテストする

    v2rayNの「購読グループ」メニューから「すべての購読を更新(プロキシを経由しない)」を実行します。使用中のバージョンで現在のグループだけを更新できる場合は、まず対象グループだけをテストすると、不要なログを減らせます。

  3. プロキシ経由での更新をテストする

    正常に使えることを確認したノードを起動したまま、「購読グループ」→「すべての購読を更新(プロキシを経由)」を実行します。バージョンによって括弧や表現が多少異なる場合があります。「プロキシを経由しない/経由する」の明確な違いを確認してください。

  4. Androidの設定を確認する

    v2rayNGでは、メイン画面右上のメニューから「購読グループ設定」を開いてURLを確認し、メイン画面に戻って「購読を更新」を実行します。使用中のバージョンの「設定」に購読更新用プロキシの項目がある場合は、オフとオンの両方でテストしてください。VPNの接続状態だけで、更新リクエストがプロキシ経由だと判断しないようにしましょう。

  5. ローカルの接続先を確認する

    ログに127.0.0.1:10808への接続が表示される場合は、実際に待ち受けているローカルポートと一致するか確認します。10808は確認用の例であり、クライアントの現在のインバウンド設定を基準にしてください。ローカルプロキシのポートを購読サーバーのURLに入力しないでください。

直結では成功し、プロキシ経由では失敗する場合は、現在のノード、ローカルの待ち受けポート、プロキシ設定を重点的に確認します。直結では失敗し、プロキシ経由では成功する場合は、現在のネットワークから購読先にアクセスするために別の経路が必要です。どちらも失敗する場合は、別のネットワークでも試し、サーバーの状態を確認してください。実際のループは、ローカルプロキシ同士の転送や、TUNのルーティングでプロキシプロセスが適切に除外されていないことでも起こります。通信が重複して捕捉されないようにしてから、再度テストしましょう。

証明書・DNSのエラー:まず時刻を合わせてから名前解決を確認

証明書エラーを回避するために、証明書検証を無効にしないでください。HTTPSでは証明書の有効期間が確認されるため、システムの日付が大きくずれていると、有効な証明書が未開始または期限切れと表示されることがあります。ただし、「証明書の検証に失敗しました」というエラーは、サーバーの証明書チェーンの不備、ネットワークのログインページ、端末上のHTTPS検査ソフトでも起こり得ます。時刻とネットワーク環境をあわせて確認しましょう。

エラー:certificate has expired

原因と対処:証明書の期限切れや端末の時刻のずれが原因として考えられます。まずシステムの日付と時刻を同期してください。時刻が正しい複数の端末でも同じエラーが出る場合は、サービス提供元による証明書の修正が必要です。

エラー:No such host is known.

原因と対処:Windows環境で発生することがあるホスト名の名前解決エラーです。購読ドメインの入力ミスと、現在のDNSが正常に使えるかを確認し、別のネットワークでも試してください。ノードのプロトコルを変えるだけでは解決しません。

エラー:Connection refused

原因と対処:接続先のポートで接続が受け付けられていないか、明示的に拒否されています。接続先がローカルプロキシのポートならコアの起動状態を、購読サーバーならサーバーポートと稼働状況を確認してください。

ノードを取り込めた場合:クライアントとコアの互換性を確認

コアの非対応が原因となるのは、主に「ノードを取り込めたが起動しない、または接続できない」場合です。あらゆる購読エラーの原因として、最初からコアの非対応を疑う必要はありません。v2rayNはデスクトップクライアント、v2rayNGはXrayコアを使うAndroidクライアント、v2flyNGはV2Flyコアを使うAndroidクライアントです。画面上のクライアントが設定を管理し、コアが接続を実行するため、どちらも必要な機能に対応しているか確認しましょう。

状況確認する場所対処方法
購読のHTTPリクエストに失敗するクライアントの更新ログまずURLとネットワークを修正し、コアは切り替えない
特定形式のノード共有リンクがスキップされるクライアントのバージョンとインポート結果クライアントを更新し、提供元の形式案内を確認する
VLESSノードにREALITYのパラメーターが含まれている選択中のコアとパラメーターの対応状況該当する組み合わせに対応したコアを使い、公開鍵などのパラメーターを保持する
VMessノードの接続に問題があるシステム時刻、ノード設定、サーバーログ時刻を合わせてサーバーの要件を確認し、プロトコルの項目をむやみに変更しない

VLESSとVMessはプロトコル名であり、互換性のある2種類の購読エンコード形式を指すものではありません。REALITYなどの接続パラメーターも、プロトコルの選択欄をVLESSに変更するだけで自動的に補完されるわけではありません。まずクライアントのバージョン情報で現在のバージョンを記録し、当サイトのダウンロードページからプラットフォームに合ったバージョンを入手してください。更新前にグループと設定をバックアップし、更新後はノードを1つだけ使ってテストします。通信方式、TLS、ルーティングルールを同時に変更しないでください。

クライアントに不明な設定項目やコアの起動失敗が表示された場合は、意味のある最初のエラーと前後のログを保存してください。リモートとのハンドシェイクだけが失敗する場合は、サーバーアドレス、ポート、認証情報、サーバーの状態も確認します。購読内容は提供元が作成するものです。必須パラメーターが不足している場合は、正しい設定を提供元に依頼し、別のノードからパラメーターをコピーしてつぎはぎしないでください。

よくある質問:記録を残して原因を絞り込む

ブラウザーでは購読を開けるのに、クライアントで失敗するのはなぜですか?

まず、ブラウザーに表示されているのがノードのテキストかログインページかを確認し、プロキシ経路も比較してください。ブラウザーにはログイン情報が保存されていてクライアントにはない場合や、ブラウザーはプロキシ経由でクライアントは直結の場合があります。2種類の更新方法をそれぞれ試し、ページを開けることだけで形式が正しいと判断しないでください。

更新後にノードが1つも表示されません。再インストールが必要ですか?

まず現在のグループの絞り込み設定、ログに記録されたインポート件数、応答形式を確認してください。古いグループをすぐに削除しないでください。v2rayNの「購読グループ」→「購読グループ設定」またはv2rayNGの「購読グループ設定」で対象URLを確認し、別の空のグループが選択されていないか調べましょう。

ノードを切り替えてもタイムアウトします。購読が壊れているのでしょうか?

まず、更新リクエストが実際にプロキシ経由で送信されているか確認してください。クライアントが直結のままなら、ノードを切り替えてもリクエストの経路は変わりません。プロキシ自体が使えない場合も、別の使えないノードに切り替えて解決することはありません。直結とプロキシ経由の両方の結果を記録し、購読サーバーの稼働状況を提供元に問い合わせてください。

問い合わせるときに、どの情報を伝えればよいですか?

クライアント名とバージョン、OSのバージョン、失敗した時刻、更新方法、HTTPステータスまたは最初のエラー、以前のノードが使えるかどうかを伝えてください。購読URLを共有する場合は、ドメインと形式だけを示してトークンを隠します。ログもパスワード、アカウント識別情報、共有リンク全体を隠してから送ってください。

プラットフォームに合ったクライアントをダウンロード

Windows、macOS、Android、Linux向けのクライアントを選択します。インストール後、チュートリアルを参考に購読を追加し、更新方法とノードへの接続を確認してください。