Project Vのモジュール設計
Project Vは、モジュール化されたネットワークプロキシツールを目指して開発され、V2Rayはその中でも広く使われている実装です。設定は、inbounds、outbounds、routing、DNSなどの要素で構成されます。inboundsはローカルアプリからの接続を受け付け、outboundsは接続先やプロキシサーバーへの接続方法を定義し、routingは出口を選択します。この構造により、プロトコルと通信処理を個別に設定できますが、接続全体には複数の要素が関わります。問題を調べる際は、サーバーアドレスだけでなく、ローカルポート、通信パラメーター、ルーティング先も確認してください。
V2FlyとXrayの関係
V2FlyはV2Rayのコミュニティによる保守と実装の発展を引き継ぎ、Xrayは関連コードを基盤として独立して開発されているコアプロジェクトです。技術的な背景は共通していますが、その後の機能や設定項目への対応は完全には一致しません。VMess、VLESSなどのプロトコル名を確認したら、通信方式、安全設定、コアごとの実装要件も確認してください。設定の見た目が似ていても、すべての項目を異なるコア間でそのまま使えるとは限りません。sing-boxにも独自の設定体系があるため、Xrayのルーティング設定をそのまま貼り付けず、対応する構文を確認しましょう。
3つのGUIクライアントの役割
v2rayNはデスクトップ向けで、サーバー管理、サブスクリプショングループ、システムプロキシ、コア関連の設定を提供します。v2rayNGはAndroid向けで、Xrayコアとシステムのネットワークサービスを利用して接続を処理します。v2flyNGは、AndroidでV2Flyコアを使いたい場合の選択肢です。いずれもオープンソースで、ソースコードをコミュニティが確認・改善できます。GUIは手動で設定を書く手間を減らしますが、有効なサーバー情報を用意したり、誤った認証情報やサーバー側の通信設定を自動修正したりするものではありません。
オープンソースライセンスとサービスの提供元
オープンソースライセンスは、コードの使用、改変、再配布に関する条件を定めるもので、プロキシサービスの利用規約とは異なります。クライアント、コア、パッケージに含まれる依存ソフトウェアには、それぞれ別のライセンスが適用される場合があります。再配布する際は、各プロジェクトのライセンスと告知を確認してください。クライアントを無料で使えても、サーバーへの接続情報がクライアントプロジェクトから提供されるわけではありません。サブスクリプションの提供状況、認証情報、利用範囲は、情報の提供元に確認してください。設定を公開する前に、サブスクリプションURL、ユーザーID、パスワードなど、個人のサービスにアクセスできる情報を削除しましょう。
クライアントとコアの更新
GUI、コア、ルールセットの更新は、それぞれ異なる問題に対応します。GUIの更新では操作方法や設定生成の仕組みが変わることがあり、コアの更新ではプロトコル実装やパラメーターの制約が変わる場合があります。ルールセットの更新は、ドメインやアドレスの分類に影響します。更新前に動作する設定を記録し、変更内容を確認してから、更新後に同じ手順で動作を検証してください。設定の解析に失敗したら、ログに示された項目とファイルの場所を優先して確認します。アップグレード、プロトコルの切り替え、ルーティングの変更を同時に行わないでください。一度に一つだけ変更すれば、原因を特定しやすくなります。
接続確認からルーティング確認へ
まずコアが起動することを確認し、次にローカルの待ち受けを調べ、最後にアプリの通信が実際にプロキシを経由しているか確認します。Webページが表示されても、すべてのアプリやリクエストが同じ出口を使っているとは限りません。基本接続ができたら、LANへのアクセス、特定ドメインのルール、DNSの動作を順に確認しましょう。遅延テストは特定の経路を測るもので、実際の通信全体が成功することを保証しません。タイムアウトが続く場合は、システム時刻、ポート、ファイアウォール、認証、通信設定の順に確認し、一度のテスト結果だけでサーバーをすべて削除しないでください。
設定リファレンスの読み進め方
すでに接続できている場合は、outboundsの出力タグとroutingルールの関係から確認してください。ローカル接続を調べる場合は、inboundsの待ち受けアドレス、プロトコル、ポートから始めます。ドメインの名前解決が関係する場合は、dnsとルーティングの名前解決ポリシーを合わせて確認しましょう。policyなどのポリシー項目は、初回起動で必ず変更する必要はありません。明確な目的がある場合にのみ調整してください。設定例は項目同士の関係を説明するものです。統合する前に、使用中のコアの完全な設定構造と照らし合わせ、動作している元の設定を復元用に保存しておきましょう。