受け取ったものが単一ノードの情報なのか、ノード一覧を取得するサブスクリプションURLなのかを見分けてから、適切な方法でインポートしましょう。v2rayN・v2rayNGを初めて設定する方向けに、2種類のリンクの見分け方、クリップボードやQRコードからの追加、サブスクリプショングループの作成方法を解説します。取得内容のダウンロード、形式の解析、ノードへの接続という3段階で、失敗時の確認ポイントも紹介します。
共有リンクとサブスクリプションURLの違い
vmess:// と vless:// は、通常、単一ノードを登録するための共有リンク形式です。サーバーアドレス、ポート、ユーザー識別子、通信設定などが含まれています。インポートすると、クライアントがこれらの情報を読み取り、ローカルにノードを登録します。リンク先にアクセスして設定ファイルをダウンロードする形式ではありません。
サブスクリプションURLは通常 https:// で始まり、ノード一覧を提供するインターフェースを指します。クライアントはネットワーク経由でリクエストを送り、応答を受け取ってから内容を解析します。返されるノードは1つの場合も複数の場合もあるため、ノード数だけで共有リンクとサブスクリプションURLを見分けることはできません。
| 比較項目 | 単一ノードの共有リンク | サブスクリプションURL |
|---|---|---|
| 一般的な形式 | vmess://、vless:// | https:// |
| 情報の取得元 | リンク自体にノード情報が含まれる | リモートのインターフェースにリクエストして一覧を取得 |
| 設定が変更された場合 | 通常は再インポートまたは手動での変更が必要 | サブスクリプションを更新して新しい内容を取得 |
| 適した操作 | クリップボードからインポート、QRコードをスキャン | サブスクリプショングループの設定、サブスクリプションの更新 |
| 機密情報 | UUIDなどの接続認証情報 | URL内のアクセストークンと、そこから取得できるノード情報 |
サブスクリプショングループの管理
おすすめ信頼できるプロバイダーからサブスクリプションURLを受け取ったら、専用のグループに保存しましょう。ノードのアドレスやポート、一覧が変更された場合も、サブスクリプションを更新すれば反映できます。リンクを1件ずつ貼り直す必要はありません。
おすすめの用途:長期利用、複数ノードの管理、サーバー側の更新への追従
単一リンクからインポート
ノードを1件登録できるため、サーバーや通信設定の各項目を確認しやすい方法です。リンク自体に継続的な更新機能はないため、設定が使えるか試したい場合に適しています。
おすすめの用途:自分で構築したノード、一時的なテスト、設定項目の個別確認
見分け方:URLの見た目ではなく用途を確認
HTTPSのURLを受け取ったら、ログインページや購入ページではなく、サブスクリプション用のインターフェースか確認しましょう。プロトコルの共有リンクはノードのインポートから追加し、サブスクリプションURLの入力欄には貼り付けないでください。
リンクの構造と保持すべき項目
一般的なVMess共有リンクは、vmess:// の後にBase64でエンコードされたJSONが続きます。デコードすると、add、port、id、net、host、path、tls などの項目が含まれています。Base64はエンコード方式であり、暗号化ではありません。また、共有リンクの項目は、コアの実行に使う config.json の完全な構造とは異なります。
VLESS共有リンクはURIに近い形式です。ユーザー識別子は @ の前にあり、その後ろにサーバーとポートが続きます。クエリパラメーターには通信方式やセキュリティ設定が記載され、# 以降は通常ノード名です。以下は構造を確認するための例で、ドメインとUUIDはサンプルデータのため接続には使えません。
vless://[email protected]:443?encryption=none&security=tls&type=ws&host=node.example.com&path=%2Fgateway&sni=node.example.com#Example-WS-TLS
type=wsはWebSocketを表します。path=%2Fgatewayをデコードすると/gatewayになります。パスはサーバー側の設定と一致させる必要があります。security=tlsはTLSを有効にする設定です。sniはTLSハンドシェイクで使用するサーバー名なので、別のドメインに置き換えないでください。encryption=noneはVLESSプロトコルの設定項目であり、接続全体がTLSで保護されないという意味ではありません。プロトコル層と通信のセキュリティ層は分けて考えましょう。- REALITYノードには、公開鍵、短いID、
flowなどの設定が含まれる場合もあります。これらの項目に対応したクライアントとコアで読み込む必要があり、上記のTLSの例をそのまま当てはめることはできません。
v2rayN:クリップボードとQRコードからインポート
以下は一般的な中国語UIを前提にした説明です。デスクトップ版や旧UIではボタンの場所が異なる場合があります。まず、コピーしたものがサブスクリプションページのタイトルではなく、プロトコル共有リンク全体であることを確認してください。ノードをインポートしても、システムプロキシが有効になるわけではありません。
- リンクをコピー。
vmess://またはvless://から始まるテキスト全体を選択します。複数のリンクをまとめてインポートする場合は、番号や引用符、説明文を混ぜず、1行につき1件にしてください。 - クリップボードからインポート。v2rayNのメイン画面に戻り、「サーバー」→「クリップボードから一括URLインポート」を選択します。バージョンによっては、サーバー追加メニューに項目があります。メイン画面で
Ctrl+Vを試す方法もありますが、検索欄や設定入力欄には貼り付けないでください。 - 登録内容を確認。追加されたノードのプロトコル、アドレス、ポート、ノード名を確認します。編集画面を開き、通信方式、TLS、サーバー名が正しく登録されているか確認してください。インポートできても項目が空の場合は、元のリンクを見直しましょう。
- 使用するサーバーに設定。テストするノードを選び、右クリックメニューから使用するサーバーに設定します。その後、用途に応じてシステムプロキシなどの通信を振り分けるモードを設定してください。まずは1つのノードで試し、ルーティングやDNSを同時に変更するのは避けましょう。
QRコードはテキストを読み取るための手段であり、別のプロトコルではありません。デスクトップではQRコード全体を画面に表示し、「サーバー」→「画面上のQRコードをスキャン」を選択します。バージョンによっては追加メニューに項目があります。スキャン時は画面を遮るウィンドウを閉じ、QRコードの周囲に余白を確保してください。必要に応じて表示倍率を調整します。
- 読み取った内容が
vmess://またはvless://で始まる場合:ノード共有リンクとしてインポートします。 - 読み取った内容がHTTPSのURLの場合:用途を確認してからサブスクリプショングループに保存します。QRコードを読み取れたことだけでは、サブスクリプションが更新されたとは限りません。
- 読み取った内容がウェブページのURLや通常のテキストの場合:提供元に正しいノードのQRコードまたはサブスクリプションURLを確認してください。パラメーターを推測して手入力しないでください。
v2rayN:サブスクリプションの追加とノードの更新
サブスクリプションの操作には、URLの保存と内容の取得という2つの手順があります。グループを作成しただけで更新していない場合、ノード一覧は空のままです。「メイン用」など、見分けやすいグループ名を付けましょう。アクセストークンをノード名やメモに記載するのは避けてください。
- 「サブスクリプショングループ」→「サブスクリプショングループの設定」を開き、新しいグループを追加します。メモ欄に名前、URL欄にサブスクリプションURL全体を入力して保存します。
- メイン画面に戻り、対象のグループを選択して「サブスクリプショングループ」→「現在のサブスクリプションを更新(プロキシ経由なし)」を実行します。メニュー名はバージョンによって多少異なりますが、保存したグループが更新対象になっていることを確認してください。
- 状態表示やログで、ダウンロードと解析の結果を確認します。サブスクリプションのインターフェースにアクセスするために既存のプロキシが必要で、利用可能なノードがある場合は、「現在のサブスクリプションを更新(プロキシ経由)」を試してください。
- 更新後、ノード数、所属グループ、ノード名を確認し、1つのノードを使用するサーバーに設定します。「サブスクリプションの更新に成功」と表示されても、すべてのノードが接続できるとは限りません。
v2rayNG:スマートフォンへのインポートとサブスクリプショングループ
v2rayNGで単一ノードをインポートする場合は、通常、メイン画面右上の「+」から操作します。初回の接続時には、AndroidからVPN接続の許可を求められます。これは接続時に必要なシステム権限で、ノードのインポートが成功したかどうかとは別の手順です。
- クリップボード:共有リンク全体をコピーしてv2rayNGを開き、「+」→「クリップボードからインポート」をタップします。リストにノードが追加されたことを確認し、使用するノードを選択してください。
- QRコード:「+」→「QRコードをスキャン」をタップし、案内に従ってカメラの使用を許可します。別の画面に表示されたQRコードをスキャンしてください。使用中のバージョンに画像読み取り機能がある場合は、端末に保存したQRコード画像も選択できます。
- サブスクリプション:サイドメニューから「サブスクリプショングループの設定」を開き、新規追加をタップします。ノード名とサブスクリプションURLを入力して保存します。メイン画面に戻り、右上のメニューから「サブスクリプションを更新」を実行してください。現在のグループとすべてのグループを選べる場合は、対象に応じて選択します。
- 接続:リストにノードが表示されたことを確認し、ノードを1つ選んで接続ボタンをタップします。システムの許可を承認してから、実際にアクセスできるかテストしてください。スマートフォンの省電力設定でバックグラウンド動作が制限される場合があります。接続が頻繁に切れる場合は、バッテリーやバックグラウンドの制限を確認しましょう。
PCとスマートフォンで同じサブスクリプションを設定
PC:v2rayN
- サブスクリプショングループの設定にURLを保存する。
- 更新後、ノードと通信設定を確認する。
- デスクトップアプリの用途に応じてシステムプロキシを設定する。
Android:v2rayNG
- サブスクリプションを個別に追加して更新する。
- 必要な設定項目に対応したXrayコアを使用する。
- 接続時にシステムのVPN権限を許可する。
各端末で設定を個別に保存・更新するため、選択中のノード、ルーティング、更新時刻は自動で同期されません。サブスクリプション提供元の端末数や同時接続に関する制限も確認してください。
インポートに失敗する・サブスクリプションが空の場合
トラブルシューティングでは、まずエラーがどの段階で発生しているかを確認します。クリップボードからのインポートに失敗する場合は、テキストの内容と解析への対応状況を確認します。サブスクリプションの更新に失敗する場合は、ネットワークリクエストと応答を確認します。ノードが一覧に登録されているのに使えない場合は、サーバー、通信設定、ルーティング、DNSを確認してください。
貼り付けると「有効な設定がありません」と表示されます。リンクが壊れていますか?
先頭が完全な vmess:// または vless:// になっているか確認し、テキストの前後にある引用符やチャットの番号は削除します。すべてのパラメーターは残してください。コピーしたものがHTTPSのサブスクリプションURLなら、サブスクリプショングループから追加します。テキスト全体が正しくても認識されない場合は、使用中のクライアントがリンク内の通信方式やセキュリティ設定に対応しているか確認してください。
サブスクリプションの更新がタイムアウトします。プロキシを何度も切り替えるべきですか?
まず端末のネットワークとシステム時刻を確認し、サブスクリプションURLの有効期限が切れていないか、トークンが不足していないかを確認します。直接アクセスできない場合は、利用可能なプロキシがすでにあるときに限り、プロキシ経由での更新を試してください。使えるノードがない状態で、失敗した同じプロキシに何度も切り替えてもリクエストは改善しません。提供元にインターフェースの状態や利用可能な接続先を確認しましょう。
更新に成功したと表示されますが、ノードが1つもありません。
検索条件やグループの絞り込みを解除し、現在表示しているグループを確認します。それでも空の場合は、インターフェースの応答が、クライアントに対応したノードサブスクリプション形式か確認してください。ログイン用HTML、認証ページ、別の設定形式ではないかも確認が必要です。HTTPリクエストの成功は応答を受信できたことを示すだけで、解析可能なノードが含まれているとは限りません。
同じQRコードをスマートフォンでは読み込めますが、PCで失敗するのはなぜですか?
まず「QRコードを認識できない」場合と「認識したが内容を解析できない」場合を切り分けます。前者は鮮明さ、表示サイズ、遮りがないかを確認します。後者は両方のクライアントのバージョンと設定項目への対応状況を確認してください。無理にインポートするために security、flow、公開鍵の項目を削除しないでください。接続条件が変わってしまいます。
インポート後に遅延時間が表示されますが、ブラウザーでページを開けません。
測定対象のノードが現在使用中のノードと同じか確認し、システムプロキシまたはスマートフォンのVPNが動作中か確認します。一部の遅延テストはTCP接続だけを確認し、プロトコルのハンドシェイクやウェブページへのアクセスまでは検証しません。実際のリクエストと実行ログも確認し、遅延の数値だけで設定が使えると判断しないでください。
サブスクリプションの更新と認証情報の管理
共有リンク、QRコード、サブスクリプションURLは、いずれも接続に使う認証情報として管理してください。サブスクリプションURLに含まれる長い文字列は、アカウントの識別に使われることがあり、QRコードにUUIDが直接含まれる場合もあります。QRコードのスクリーンショットを公開の掲示板に投稿しても、リンクを公開するより安全とは限りません。診断用のスクリーンショットでは、認証情報、サブスクリプションURL全体、個人のアカウント情報を隠してください。
- 重複登録を避ける:同じURLでグループを何度も作成すると、ノード一覧が煩雑になります。既存のグループを更新し、重複した項目を削除する前に所属先を確認してください。
- 必要なときに更新:初回登録時、提供元から回線の変更が通知されたとき、ノードが明らかに使えなくなったときに更新します。自動更新を有効にするかどうかは、クライアントの機能や提供元の案内に従ってください。短時間に何度もインターフェースへリクエストを送るのは避けましょう。
- 設定の範囲を把握:サブスクリプションで取得できるのはノード情報です。端末に適したルーティング、DNS、アプリごとの設定が含まれるとは限りません。サブスクリプションを変更した後も、これらのローカル設定は個別に確認してください。
- 漏えいした場合:URLが公開された場合は、提供元のアカウントページでサブスクリプショントークンや関連する認証情報を再発行し、各端末に保存した古いURLを置き換えてください。チャット履歴を削除しただけでは、すでにコピーされた認証情報は無効になりません。
設定後は、インポート形式の確認、ノード情報の確認、使用するノードの選択、必要な通信の振り分け機能の有効化、実際のアクセス確認という順序でチェックしましょう。これにより、「入力先を間違えた」「サブスクリプションを取得できない」「ノードに接続できない」を分けて対処できます。
クライアントのダウンロードとインポート手順
PCではv2rayN、Androidではv2rayNG・v2flyNGを確認できます。ノードで必要なプロトコルとコアに応じてクライアントを選び、ガイドに沿ってインポートと接続を設定してください。