v2rayN(PC)/ v2rayNG(Android)

サブスクリプション登録と接続方法

「サブスクリプション登録 → プロキシモード選択 → 接続 → 動作確認」の順に進めます。まずノードを1つ正常に動作させてから、ルーティングなどの設定を調整してください。

サブスクリプショングループ システムプロキシ ルーティング確認

事前準備:クライアントとサブスクリプションを用意

クライアントをまだインストールしていない場合は、クライアントのダウンロードページから使用するOSに合ったインストーラーを入手してください。PCではv2rayN、Androidではv2rayNGを使います。このページでは、クライアントを起動できる状態から、初回利用の手順を説明します。既存の設定がある場合は、変更前にグループ名、ノード名、ルーティング名を控えておくと、元の設定を見失わずに済みます。

クライアントと接続サービスは別のものです。ソフトウェアをインストールした後、利用権限のあるサブスクリプションURL、または完全なノード共有リンクを自分で用意する必要があります。サブスクリプションURLからノード一覧を取得・更新し、ノードリンクには個別の接続情報が含まれます。当サイトではクライアントの入手先と操作方法を案内していますが、サブスクリプションアカウントは提供していません。通常の案内ページやログインページのURLをサブスクリプションURLとして使わないでください。また、アクセス情報を含むサブスクリプションURLを公開の掲示板などに投稿しないでください。

今回の作業では、プロキシクライアントを1つだけ使ってください。ほかのVPNや通信制御ツールを使用中の場合は、権限や通信経路の競合を避けるため、一時停止します。システム時刻の自動同期を有効にし、プロキシを有効にする前から通常のローカルネットワークに接続できることも確認してください。準備ができたら、以下のサブスクリプショングループ設定に進みます。最初からJSONを編集したり、TUNを有効にしたりする必要はありません。

手順1:サブスクリプションを登録してノードを更新

v2rayN:グループを追加して更新する

v2rayNのメインウィンドウを開き、「サブスクリプショングループ」メニューから「サブスクリプショングループ設定」を選び、新しいグループを追加します。グループの備考は自分で見分けるためのものです。「普段使い」など、覚えやすい名前を付けてください。サブスクリプションURL欄には、サービス提供元から受け取った完全なURLを貼り付けます。先頭や末尾に空白がないか、URL内のパラメーターが欠けていないかを確認して保存してください。この時点では更新先を登録しただけなので、ノード一覧にすぐ変化がなくても登録失敗とは限りません。

メインウィンドウに戻り、先ほど追加したグループを選んで、サブスクリプションメニューから更新を実行します。「現在のサブスクリプションを更新」と「すべてのサブスクリプションを更新」がある場合、初回は現在のグループだけを更新すると結果を確認しやすくなります。まだ接続可能なノードがない場合は、まず「プロキシを経由しない」方法で更新します。URLへのアクセスに既存のプロキシが必要な場合は、未取得のノードで更新を試みるのではなく、動作確認済みの別の設定を使ってください。

更新後、現在のグループにノード名、プロトコル、アドレスなどが表示されているか確認します。「完了」という通知だけで判断せず、実際に選択できるノードが一覧にあることを確かめてください。一覧が空の場合は、下部のログまたはログウィンドウで更新結果を確認します。タイムアウト、サブスクリプション内容の解析失敗、アカウントの利用期限切れはそれぞれ別の問題です。表示された内容に応じて対処し、同じグループを何度も追加して解決しようとしないでください。

v2rayNG:サブスクリプションを保存して一覧を更新

v2rayNGのサイドメニューから「サブスクリプショングループ設定」を開き、追加ボタンをタップして備考とサブスクリプションURLを入力し、保存します。メイン画面に戻ったら右上のメニューを開き、「サブスクリプションを更新」または「現在のグループを更新」といった項目を選びます。更新が完了したら、該当グループにノードが表示されるか確認してください。設定画面にURLが表示されていても、それは保存済みというだけで、更新が完了したことにはなりません。

vmess://、vless://、trojan://で始まる単一の共有リンクを受け取った場合は、サブスクリプションURL欄に入力しないでください。リンクをコピーし、メイン画面の追加メニューから「クリップボードからインポート」などの項目を選びます。QRコードがある場合は、スキャン機能を使ってください。単一のリンクは通常、サブスクリプション更新に合わせて自動更新されません。後で設定が変わった場合は、提供元の案内に従って再インポートまたは設定変更が必要です。

この段階では、いったん次の2点を確認してください。現在表示しているグループが正しいこと、一覧に選択可能なノードが1つ以上あることです。ノード名は提供元が自由に付けたものなので、名前だけでは回線が使えるかどうか判断できません。次に、通信をクライアントへ取り込む方法とルーティングを設定し、その後ノードを選んで接続します。

手順2:プロキシモードとルーティングを選ぶ

「プロキシモード」は2つの意味で使われることがあるため、まず区別しましょう。1つ目は通信の入口です。アプリからのリクエストを、システムプロキシまたはシステムVPN経由でクライアントに渡します。2つ目はルーティングです。クライアントが受け取ったリクエストを、直接接続するか、プロキシノード経由にするか、遮断するかを決めます。ルーティングのプリセットを選んでも、ブラウザーの通信が自動的にシステムからクライアントへ届くとは限りません。反対に、システムプロキシを有効にしても、すべての通信がリモートノードを経由するわけではありません。

v2rayN:初回はシステムプロキシを使う

v2rayNのメインウィンドウ下部またはタスクトレイメニューから「システムプロキシ」を探し、「システムプロキシを自動設定」など、システムプロキシを設定する項目を選びます。表示名はPCのOSやバージョンによって異なります。ここでは、システムプロキシ設定に従うアプリからクライアントのローカル接続先へ通信できる状態にします。「システムプロキシを解除」と表示されている場合は、これらのアプリが接続先を自動使用しないようにする操作です。リモートの接続先を選ぶボタンではありません。

ルーティングは、まずクライアントに用意されているプリセットを選びます。LANを経由しない設定、地域別の振り分け、全通信をプロキシ経由にする設定などがあります。普段使いでは妥当な初期設定を維持し、ドメインルール、DNS、ルールの順番を同時に変更する必要はありません。特定のWebサイトが直接接続に振り分けられているか一時的に確認したい場合は、全通信をプロキシ経由にして比較テストを行い、終了後は元のルールに戻してください。診断用の設定をそのまま常用しないようにしましょう。

システムプロキシが使われるのは、その設定を参照するアプリです。コマンドラインツール、一部のゲーム、独自のプロキシ設定があるソフトは従わない場合があります。初回確認ではシステムプロキシを利用するブラウザーを使い、あらゆる問題を解決しようとしてすぐにTUNを有効にしないでください。TUNでは仮想ネットワークインターフェース、権限、ルーティングの制御が関係するため、通常の接続が動作すると確認してから個別に設定します。より詳しい設定構造は、JSONマニュアルのroutingに関する説明をご覧ください。

v2rayNG:ルーティングとアプリごとの対象範囲を確認

v2rayNGの設定またはルーティング設定を開き、まず初期設定を維持したまま、「選択したアプリのみプロキシを使用」や「選択したアプリを除外」といったアプリ別ルールが意図せず有効になっていないか確認します。この2つは動作が異なります。前者では、選択していないブラウザーがプロキシに入らない場合があります。後者では、選択したブラウザーが直接接続される場合があります。初回で判断に迷う場合は、まずアプリ別の絞り込みを無効にし、動作確認後にアプリを1つずつ追加してください。

Androidの接続ボタンを押すと、システムVPNインターフェースが起動します。ルーティングのプリセットは、そのインターフェースに入った通信をどう処理するか決めるものです。システムのステータスバーにVPNマークが表示されても、すべてのリクエストがリモートノードを使うとは限りません。ルールによって直接接続に振り分けられた通信は、そのまま接続されます。ここでは現在のルーティングプリセット名を控え、ほかの設定は変更せず、最後の手順で結果を比較できるようにしておきます。

手順3:ノードを選択して接続

v2rayN:使用するノードを設定してプロキシを確認

ノード一覧に戻り、サービス状態が正常で、設定内容がそろっているノードを選びます。v2rayNでは右クリックメニューの「アクティブサーバーに設定」などを選んで有効にできます。ショートカットキーが表示されている場合は、そのバージョンの案内に従ってください。行を選択しただけの状態と、アクティブノードに設定した状態を混同しないようにしましょう。操作後は、アクティブ表示やステータスバーで現在使用中のノードを確認します。

速度テストに対応したバージョンでは、接続テストや遅延テストを実行できます。ただし、結果はあくまで目安です。テスト対象や方法が現在の回線に合わず、失敗する場合があります。テスト結果が表示されても、実際のWebページに接続できることの代わりにはなりません。初回は設定内容が明確で、サービス提供元が有効と確認しているノードを選びます。最初からすべてのノードを選んで何度もテストすると、テスト通信と通常のアクセスがログに混在するため避けてください。

アクティブノードを設定すると、通常はクライアントのコアが起動するか、設定が再読み込みされます。続いて、手順2で準備したシステムプロキシが有効になっていることと、ログに起動エラーがないことを確認してください。ローカルポートが使用中と表示された場合は、ほかのプロキシソフトを終了してから再試行します。設定の解析エラーや項目エラーが出た場合は、登録したノードの提供元と形式を確認してください。内容が不明なエラーを回避するために、セキュリティソフトを無効にしたり、待ち受け範囲を広げたりしないでください。コアが正常に動作していない場合、ブラウザーを更新しても接続問題は解決しません。

v2rayNG:ノードを選んでVPN接続を許可

v2rayNGのメイン画面で使用するノードをタップし、選択マークがその項目に付いていることを確認してから接続ボタンを押します。初回起動時は、AndroidからVPN接続のリクエストが表示されます。リクエスト元が起動したばかりのv2rayNGであることを確認して、接続を許可してください。以前にキャンセルした場合は、クライアントに戻ってもう一度接続をタップすればよく、サブスクリプションの削除や再インストールは不要です。

接続後は、ボタンの表示、実行中の通知、システムのVPNマークを確認し、クライアントのログも確認します。別のVPNが実行中という通知が出た場合は、既存の接続を停止してからv2rayNGを再起動してください。通常のAndroid端末では、2つのVPNアプリがそれぞれ想定どおり同時に通信を制御することはできません。切り替えて使うときは、バックグラウンドに残っているアプリではなく、どちらが接続を担っているか確認してください。

次の手順でブラウザーを開く間は、クライアントをバックグラウンドで動作させてください。接続開始後、画面ロックやアプリ切り替えですぐ停止する場合は、v2rayNGのバックグラウンド実行やバッテリー制限の設定を確認します。必要に応じてバックグラウンド動作を許可すればよく、最初からすべての省電力設定を変更する必要はありません。ここまでの目標は、コアが起動し、ノードが選択され、通信の入口が開いていることです。「実行中」の表示だけで、リモートネットワークも正常だと判断しないでください。

手順4:プロキシの動作を確認

まず、普段から直接アクセスできるWebページを開き、接続操作によって通常のネットワークが使えなくなっていないことを確認します。次に、現在のルールではプロキシ経由になるはずのページを開いてください。どちらも同じブラウザーとネットワークを使い、無線ネットワークとノードを同時に切り替えないようにします。ページが表示されるかだけでなく、想定したルーティングとログも確認し、通信が意図した経路を通っているか確かめてください。

プロキシを管理する拡張機能をデスクトップブラウザーにインストールしている場合は、拡張機能をシステム設定の使用に切り替えるか、一時停止してからページを開き直してください。ブラウザー独自のプロキシ設定が、v2rayNのシステムプロキシ設定より優先されることがあります。コマンドラインツールも独自のプロキシ環境変数を使う場合があるため、「ブラウザーは使えるが、コマンドラインツールは使えない」だけではノードの故障とは限りません。まずブラウザーで動作を確認し、その後、必要に応じてアプリごとのプロキシ設定を確認すると、原因を絞り込みやすくなります。

クライアントのログに戻り、先ほどページを開いたときに新しい接続記録が追加されたか、記録のアウトバウンドタグやルーティング先を確認します。ログの項目はコア、ログレベル、クライアントのバージョンによって異なります。詳しいアクセス記録が見えなくても、通信が取り込まれていないとは限りません。まずエラーを確認し、必要な場合だけログの詳細度を一時的に上げて再現テストを行い、その後は元の設定に戻してください。ログを共有する前に、サブスクリプションURL、アカウント情報、リモート接続情報を隠してください。

より明確に比較するには、いったん接続を停止し、テストページを閉じて開き直します。再接続後に同じアクセスを試してください。確立済みの長時間接続やブラウザーのキャッシュを使い回さないようにしましょう。出口IPアドレスの確認だけでは判断できない場合があります。調査に使うページが現在のルールで直接接続に振り分けられていれば、出口IPが変わらなくてもクライアント全体が動作していないとは限りません。まず、そのリクエストがどのルールに一致する想定か確認してください。

ログにドメイン名の解決失敗が表示された場合は、まず通常のネットワークが使えることを確認し、DNS設定を手動で変更していないか調べます。リモート接続のタイムアウトが表示された場合は、ノードのアドレス、ポート、サービスの稼働状況を確認してください。ハンドシェイクまたは認証に失敗した場合は、サブスクリプションの期限、端末の時刻、ノード設定の不足を確認します。タイムアウトが表示されたからといって、プロトコル、トランスポート、安全性の設定をすぐに変更しないでください。通常、これらの設定はサーバー側と一致させる必要があり、むやみに変更すると原因の特定が難しくなります。

動作確認ができたら、今回使えたグループ、ノード、プロキシの入口、ルーティングプリセットを控え、普段使いのルールに戻します。その後、アプリ別プロキシやルールを調整するときは、この動作確認済みの状態から1項目ずつ変更してください。サブスクリプション更新は通常、ノード一覧を更新する操作であり、クライアントアプリの更新とは異なります。クライアントを更新する場合は、クライアントのページからOSに合ったものを選んでください。2つの作業を分けると、変更後に問題が起きても原因を特定しやすくなります。

このページの4つの手順を終えた後は、普段の利用ではサブスクリプションを更新し、ノードを選んで接続するだけで済むことがほとんどです。インバウンド、アウトバウンド、DNS、ルールの照合順序をカスタマイズする場合は、JSON設定マニュアルを項目ごとに確認してください。操作の順番を忘れた場合は、このページ上部の手順一覧に戻ればよく、通常の接続のために設定全体を書き直す必要はありません。