vmess://・vless://共有リンクとサブスクリプションURLの違い・インポート方法

共有リンクとサブスクリプションURLには何が含まれるのか、v2rayN・v2rayNGでクリップボードからインポートする方法、サブスクリプショングループの追加・更新方法を解説します。

この記事の要点

まずリンクの先頭を確認し、適切な方法でインポートしましょう。vmess://とvless://は通常、単一ノードの接続情報を含みます。サブスクリプションURLは、更新可能なノード一覧を取得するためのものです。v2rayNやv2rayNGを初めて設定する方向けに、リンクの見分け方、クリップボードからのインポート、サブスクリプションの更新、トラブルシューティングを順に説明します。変更してはいけないパラメーターも紹介します。

共有リンクとサブスクリプションURL:インポートする対象の違い

共有リンクは、接続設定をテキストで表したものです。一般的なvmess://リンクでは、接頭辞の後にBase64エンコードされた設定が続きます。デコードすると、通常はサーバーアドレス、ポート、ユーザー識別子、トランスポート方式、備考などが含まれています。vless://はURI形式が一般的で、ユーザー識別子、アドレス、ポートは本体に、その他のオプションはクエリパラメーターに記述されます。どちらもブラウザーで開く通常のWebページではありません。

サブスクリプションURLは通常、https://で始まります。クライアントがそのURLにリクエストを送り、返されたノード一覧を解析します。レスポンスは共有リンクが1行ずつ並んだ形式の場合も、それらのテキストをBase64エンコードした形式の場合もあります。形式は提供元によって異なります。サブスクリプションから返されるノードが1つだけの場合もあるため、ノード数だけでサブスクリプションかどうかは判断できません。

サブスクリプションURL

おすすめ

ノード一覧の更新元を登録します。提供元がURLを変更したりノードを追加したりした場合、変更を取得するにはクライアントでサブスクリプションを更新する必要があります。URLを保存しただけではリアルタイムに同期されません。

おすすめの用途:提供元がクライアント用サブスクリプションを明示しており、ノード一覧を継続的に管理したい場合。

単一の共有リンク

その時点のノード設定をインポートします。サーバーのポート、ユーザー識別子、トランスポート設定が変更されても、古い設定は自動で更新されません。再インポートするか、手動で編集してください。

おすすめの用途:ノードを一時的にテストする場合や、管理者から個別の接続設定を受け取った場合。

見分け方:まず提供元の説明を確認

vmess://またはvless://を受け取った場合は、共有リンクのインポート機能を使います。HTTPSのURLの場合は、ログインページ、購入ページ、説明ページではなく「サブスクリプションURL」かどうか確認してから、サブスクリプショングループに追加してください。

リンクのパラメーター:サーバーポートとローカルポートを混同しない

以下は構造を説明するためのVLESSの例です。ドメインとユーザー識別子は説明用で、利用可能なサービスには対応していません。実際のリンクには提供元が指定した完全なパラメーターが必要です。この例をそのままノードとして使うことはできません。

vless://[email protected]:443?encryption=none&security=tls&type=ws&host=node.example.com&path=%2Fproxy&sni=node.example.com#demo-ws
443
リモートサーバーのポート例。すべてのノードに当てはまるわけではありません
10808
ローカルプロキシポートの例。実際の値はクライアントの設定を確認してください
1
この共有リンクが表すノード数
項目例の意味インポート時の確認ポイント
node.example.com:443サーバーアドレスとリモートポートローカルプロキシの待ち受けポートに置き換えないでください。
encryption=noneVLESSのプロトコルパラメーター接続全体が暗号化されないという意味ではありません。この例ではTLSで通信を保護しています。
security=tlsTLSによる通信の保護を有効化サーバーの要件に従って設定し、証明書の検証を安易に無効化しないでください。
type=wsWebSocketトランスポートを使用トランスポートの種類、Host、パスをサーバー側の設定と一致させてください。
path=%2FproxyURLエンコードされたパス /proxy元のリンクのエンコードを維持し、チャットアプリで整形されたテキストに置き換えないでください。
sniTLSハンドシェイクに使用するサーバー名接続先アドレスと異なる場合があります。安易に削除しないでください。
#demo-wsノードの備考一覧でノードを識別するためのもので、アカウントやパスワードではありません。

VMessとVLESSはプロキシプロトコル、WebSocketはトランスポート方式、TLSは通信を保護する仕組みです。共有リンクを認識できても、使用するコアがすべてのオプションに対応しているとは限りません。v2rayNGはXrayコア、v2flyNGはV2Flyコアを使用します。提供元から特定のXray機能を指定された場合は、リンクがvless://で始まるかだけで判断せず、クライアントとコアの対応状況を確認してください。

v2rayNでインポート:クリップボードとサブスクリプショングループは別々に操作

デスクトップでは、まずテキスト全体をコピーしてから適切なメニューを選びます。以下では一般的な日本語メニュー名を使っています。バージョンやデスクトップ環境によって表記が多少異なる場合がありますが、「共有リンクのインポート」と「サブスクリプションの更新」は別々の手順です。作業前に現在のグループ名を控えておくと、テスト用ノードが普段使う一覧に混ざるのを防げます。

単一または複数の共有リンク

  1. vmess://またはvless://から始まるリンク全体をコピーします。説明文、引用符、コードブロックは含めないでください。複数のリンクは、通常1行に1つずつまとめてコピーできます。
  2. v2rayNを開き、「サーバー」メニューから「クリップボードから共有リンクをインポート」を選びます。このショートカットに対応するデスクトップ版では、メインウィンドウでCtrl+Vを使うこともできます。
  3. 追加された項目のアドレス、ポート、プロトコル、トランスポート方式を確認します。備考が空でもインポート失敗とは限りませんが、アドレスやユーザー識別子が欠けている場合は元のテキストを再確認してください。
  4. 使用するノードを選択し、アクティブサーバーに設定します。その後、必要に応じてシステムプロキシを設定してください。「インポート済み」は設定が一覧に追加されたことを示すだけで、アプリの通信がすでにプロキシ経由になったという意味ではありません。

サブスクリプションを追加して一覧を取得

  1. 提供元がサブスクリプションとして案内しているURLをコピーします。「サブスクリプショングループ」→「サブスクリプショングループ設定」を開き、新しいグループを追加します。
  2. 見分けやすいグループ名を入力し、URL欄に完全なURLを貼り付けて保存します。画面に更新の有効・無効設定がある場合は、そのグループの更新が有効になっていることを確認してください。
  3. 「サブスクリプショングループ」に戻り、現在のグループまたはすべてのサブスクリプションを更新します。「プロキシを使用しない」「プロキシを使用する」の選択肢がある場合は、サブスクリプションURLへの実際の接続可否に応じて選んでください。
  4. グループ内にノードが表示されることを確認し、更新結果も確認します。グループ名だけが表示され、ノードがない場合は、ダウンロードと解析の問題を先に調べてください。同じ名前のグループを何度も作成する必要はありません。

v2rayNGでインポート:設定を追加してからVPN接続を確立

Androidでも、クリップボードからのインポートで追加されるのは接続設定です。初めて接続を開始する際は、システムからVPN接続の許可を求められます。この許可はクライアントが選択した通信を処理するためのもので、サブスクリプションへのログインではありません。まず一覧をインポートしてから、ルーティングやアプリごとの設定を決めると、複数の項目を同時に変更して原因を追いにくくなるのを防げます。

  1. 共有リンク:リンク全体をコピーしてv2rayNGを開き、メイン画面右上の「+」→「クリップボードからインポート」をタップします。インポート後にノードの詳細を確認し、そのノードを選択してください。
  2. サブスクリプションURL:サイドメニューから「サブスクリプション設定」を開き、「+」をタップします。備考とURLを入力して保存してください。HTTPSのサブスクリプションURLを、単一ノードのサーバーアドレス欄に貼り付けないでください。
  3. 一覧を更新:設定一覧のメイン画面に戻り、右上のメニューから「サブスクリプションを更新」を選びます。更新が終わるまで待ち、対象のサブスクリプショングループに項目が追加されたことを確認してください。
  4. 接続を開始:接続ボタンをタップし、初回はシステムの許可を確認します。まず対象のアプリで動作を確認し、必要に応じてアプリごとのプロキシ設定やルーティングルールを調整してください。

2台で使う方法:同じサブスクリプションをそれぞれに保存して更新

デスクトップ:v2rayN
  • サブスクリプショングループ設定にURLを保存します。
  • 更新後、アクティブサーバーを選択します。
  • システムプロキシに対応するアプリでプロキシを設定します。
Android:v2rayNG
  • サブスクリプション設定で同じURLを個別に追加します。
  • 設定一覧からサブスクリプションを更新します。
  • VPN接続を確立した後、アプリの通信状況を確認します。

各クライアントがそれぞれ設定を管理し、更新が成功すると各端末が取得した一覧に反映されます。利用前に、提供元が複数端末での使用を許可していることも確認してください。

サブスクリプションで提供されるのはノード設定だけで、クライアントのルーティング設定、DNS設定、システムプロキシの有効化、アプリごとのルールなどは含まれないことがあります。そのため、同じサブスクリプションを使っていても、ローカル設定が異なれば2台の動作が異なる場合があります。端末を移行するときは、ノードの入手元とローカル設定を分けて記録してください。サブスクリプションを一度更新すれば、すべての設定が引き継がれるわけではありません。

更新に失敗する・一覧が空:リクエスト、内容、接続を順に確認

まず、どの段階で失敗しているかを確認します。タイムアウトはクライアントが時間内に応答を取得できなかった状態です。解析エラーは、内容を取得できたものの対応する設定に変換できなかった状態です。ノードをインポートできても接続できない場合は、サーバーのパラメーター、コアの対応機能、ネットワーク経路を確認してください。問題の種類ごとに対処方法は異なります。

サブスクリプションURLをコピーしたのに、クリップボードからインポートすると設定がないと表示されるのはなぜですか?

HTTPSのURLはサブスクリプション設定に追加してから更新します。単一ノードのインポート機能を使うのは、vmess://やvless://などの共有テキストです。提供元からWebページのURLを案内された場合は、ページからクライアント用の実際のサブスクリプションURLを取得してください。

サブスクリプションの更新がタイムアウトします。プロキシ経由に切り替えるべきですか?

まず、利用可能なノードがあり、プロキシ接続が開始されていることを確認してから、プロキシ経由で更新してみてください。利用可能な接続がない場合は、直接接続のネットワーク、URLの有効期限、提供元のサービス状況を確認します。「プロキシ経由」を万能な解決策として使わないでください。

更新は成功と表示されるのに、ノード数が0のままです。どうすればよいですか?

現在のグループの絞り込み条件を確認し、ログに解析エラーが記録されていないか確認してください。サブスクリプションの応答がログインページ、アカウントの期限切れ通知、またはクライアント非対応の形式である場合があります。まず提供元に、v2rayNまたはv2rayNGで使えるサブスクリプション形式か確認してください。クライアントをすぐに再インストールする必要はありません。

VLESSをインポートできたのに接続できないのはなぜですか?

アドレス、リモートポート、ユーザー識別子、トランスポートの種類、SNI、パスを確認してください。リンクでREALITYを使用している場合は、公開鍵、shortId、提供元が指定する関連パラメーターも確認し、使用するXrayコアが対応していることを確かめてください。元のリンクはそのまま保ち、見慣れない項目を勝手に削除しないでください。

再更新すると、手動で変更したノードが元に戻るのはなぜですか?

サブスクリプションを更新すると、リモートの内容をもとにグループ内の項目が再生成されることがあります。手動での変更を長期的に残す場合は、サブスクリプション管理外のグループに別途保存し、変更理由も記録してください。サブスクリプショングループ内での一時的な編集が維持されるとは限りません。

HTTPステータスコードも原因を絞り込む手がかりになります。401または403の場合は、アクセス権、サブスクリプショントークン、提供元の制限を確認します。404の場合は、パスがまだ有効か確認してください。429はリクエスト頻度が制限されている可能性を示すため、連続して更新するのはやめましょう。具体的な原因は、APIの応答と提供元の案内を確認してください。ステータスコードだけでアカウントが無効だと断定しないでください。

サブスクリプションのプライバシーと管理:完全なURLは認証情報として扱う

共有リンクのユーザー識別子やサブスクリプションURLのトークンは、アクセス権を与える場合があります。Base64はエンコード方式であり、秘密を保護する暗号化ではありません。完全なリンクを公開チャット、問い合わせ用のスクリーンショット、オンラインデコードツールなどに掲載すると、第三者に設定を取得されるおそれがあります。問題の調査時には、機密情報を伏せた項目とエラー情報だけを共有してください。

操作の順序:インポート、更新、選択、接続、確認

単一の共有リンクの場合はサブスクリプションの更新は不要ですが、サブスクリプションURLでは先にノード一覧を取得する必要があります。一度に1段階ずつ進め、エラーが発生したらその段階のログを記録してから、リンク形式、ネットワーク経路、ノードのパラメーターのどれを確認するか判断してください。

v2rayN をダウンロード