Project V 生態解析:V2Fly、Xray 核心與 v2rayN/v2rayNG 的關係

認識 Project V 的起源、V2Fly 與 Xray 核心的差異,以及 v2rayN、v2rayNG、v2flyNG 各自採用的核心與支援平台。

本文摘要

Project V 是一套專案體系,V2Fly 與 Xray 代表不同的核心發展路線,而 v2rayN、v2rayNG、v2flyNG 則是供使用者操作的用戶端。本文適合正在挑選下載檔案、確認節點相容性,或排查「匯入成功卻無法連線」問題的使用者。先釐清專案、核心、用戶端與協定的關係,再依平台及伺服器設定做選擇。

Project V、V2Ray、V2Fly:先釐清專案與實作

Project V 最初以模組化網路代理工具為核心發展,V2Ray 是其中最常被提及的核心實作。它不只處理單一代理協定,也包含入站、出站、路由、DNS 等功能。因此,日常所說的「V2Ray 節點」通常只是概括稱呼,不能據此判定節點一定使用 VMess,也無法推斷用戶端執行的是 V2Fly 核心。

V2Fly 是延續 V2Ray 開發的社群專案,其核心程式通常仍以 V2Ray 為名。Xray 則是從 V2Ray 程式碼分支發展而來,形成獨立演進的 Xray-core。兩者有共同的發展脈絡,但並非同一程式的兩種名稱,也沒有必須依序安裝的相依關係。

釐清這四個層次後,「使用 v2rayN、匯入 VLESS 節點,再由 Xray 建立連線」就不再矛盾:這三個名稱分別指介面、協定與執行程式。排查問題時,也應分別記錄這三項,而不是只說「V2Ray 連不上」。

V2Fly 與 Xray:共同基礎,不同功能界線

兩條路線都具備多協定代理、路由與 DNS 等基礎功能,但具體傳輸方式、設定欄位及擴充功能會隨版本而異。不能把「某個核心支援 VLESS」直接解讀成「支援所有 VLESS 組合」。真正需要確認的是協定、傳輸方式、安全層與擴充參數的完整組合。

比較項目V2Fly / V2RayXray-core
專案關係延續 V2Ray 的社群開發路線從 V2Ray 分支發展,獨立演進
基本職責入站、出站、DNS、路由與協定處理入站、出站、DNS、路由與協定處理
設定相容性以對應版本的 V2Ray 設定規範為準設定基礎相同,但擴充欄位不一定能互換
典型限制不能將 Xray 專屬功能視為通用功能REALITY、XTLS Vision 等設定須符合相應實作與版本
本文對應的 Android 用戶端v2flyNGv2rayNG

例如,伺服器要求使用 VLESS、REALITY 與 xtls-rprx-vision 時,應確認用戶端實際呼叫的核心支援這組設定,並核對公鑰、短 ID、伺服器名稱與 flow。只在協定下拉選單中改選 VLESS,或只更換程式檔名,都無法補足這些條件。

結論:依節點參數選擇核心

先確認伺服器要求的協定、傳輸方式與安全層,再檢查核心的支援範圍;不要只憑用戶端名稱中有「v2ray」就判斷相容性。若需要 Xray 特有功能,應優先確認實際執行的是相符版本的 Xray。

三款用戶端:平台與核心關係比較

用戶端提供圖形介面,核心負責實際連線。升級用戶端可能更新介面及設定產生邏輯;升級核心則可能改變協定實作或設定驗證規則。兩者的版本應分開確認,不能只用一個「最新版」概括。

用戶端適用平台核心關係選擇重點
v2rayNWindows、macOS、Linux桌面用戶端,可呼叫 Xray、sing-box 等核心;可用選項依版本與發行套件而定先選擇作業系統與處理器架構,再核對協定對應的核心設定
v2rayNGAndroid使用 Xray 核心若需要 Xray 支援的協定與擴充功能,請確認內建核心版本
v2flyNGAndroid使用 V2Fly 的 V2Ray 核心採用 V2Fly 路線時,確認節點所需的傳輸方式與安全層是否支援

v2rayN 並非 V2Fly 核心的別稱,也不能因為它支援多種核心,就認定每個發行套件都包含所有可選程式。桌面版與傳統介面的支援範圍、設定位置可能不同;實際執行的核心應以參數設定及啟動記錄為準。sing-box 是另一種核心實作,並非 V2Fly 與 Xray 之間的版本升級關係。

v2rayNG 與 v2flyNG 名稱相近,但並不是只換圖示的同一個安裝套件。兩者都面向 Android,採用的核心路線不同;即使都能匯入同一條分享連結,對傳輸擴充功能及設定欄位的支援仍可能有差異。切換用戶端前,請先保留原始節點資訊,避免將匯入轉換後的參數誤認為伺服器原始設定。

在 v2rayN 確認實際執行的核心

以下以中文版 v2rayN 作為操作參考。不同桌面發行版的標籤可能略有差異,「Core 類型」也可能顯示為「Core 類型設定」。先檢查設定,再以重新啟動後的記錄交叉確認,比根據程式目錄中的檔名猜測更可靠。

  1. 確認版本

    開啟「說明」→「關於」,記下用戶端版本;再查看主介面記錄中的核心啟動資訊,記下核心名稱與版本。分享排障資訊時,兩項都要提供。

  2. 檢查對應設定

    前往「設定」→「參數設定」→「Core 類型」,查看目前協定所選用的核心。若該版本沒有這個設定項目,請勿照抄其他版本的截圖,改從啟動記錄確認。

  3. 核對節點設定

    在節點清單中選取目標節點,按右鍵進入「編輯伺服器」,逐項核對協定、連接埠、傳輸方式、TLS 或 REALITY 參數。介面顯示匯入成功,只代表已建立記錄,不代表核心已接受這些參數。

  4. 重新連線

    儲存設定後,在目標節點上按右鍵並選擇「設為活動伺服器」,讓目前設定重新生效;查看記錄是否出現不支援欄位、核心啟動失敗或位址遭占用,再測試連線。

核心仍在執行時,請勿任意替換核心執行檔。介面產生設定的方式必須與核心接受的格式相符。若更新後出現設定解析錯誤,請先還原可用的完整用戶端組合,再逐項找出差異;這比連續替換多個核心檔案更容易重現問題。

連接埠、系統代理與路由:不是同一個開關

核心成功啟動後,應用程式的流量仍須導入用戶端。桌面環境常見方式是使用系統代理,或由應用程式手動指定本機代理;TUN 則會使用虛擬網路介面並接管路由。Android 用戶端通常透過系統 VPN 授權導入流量,但這項授權並不代表節點使用特定協定。

10808
本機 SOCKS/混合入口範例連接埠
10809
獨立 HTTP 入口範例連接埠
443
遠端 TLS 服務常見連接埠

以上為連接埠用途範例,不代表所有版本都應照填為預設值。部分版本使用混合入站,讓 HTTP 與 SOCKS 共用同一個連接埠;另一些設定則分開監聽。請從「設定」→「參數設定」中的本機監聽選項讀取實際值,並與記錄核對。遠端連接埠由伺服器決定,不能因為看到 TLS 就擅自改成 443。

訂閱可匯入卻無法連線:分層排查

訂閱是一種設定發佈方式,不是新的代理協定。一次更新可以取得多個不同協定的節點,但無法讓用戶端自動具備原本缺少的核心功能。無論透過 QR Code、剪貼簿或訂閱匯入,最後都要經過用戶端解析、產生設定及核心執行等步驟。

同一份訂閱,為什麼兩個用戶端的結果不同?

先比對同一節點的協定、傳輸方式、安全層與擴充參數,再分別查看啟動記錄。若其中一端缺少 REALITY 公鑰或 flow,請從原始連結重新匯入並檢查編輯頁面;不要只比較節點名稱。

換成 Xray 就一定能連線嗎?

先確認節點確實需要 Xray 支援的功能,再檢查位址、連接埠、認證資訊、伺服器名稱與裝置時間。核心相容性只解決實作能力問題;伺服器無法連線、憑證不符或認證資訊失效,仍會造成連線失敗。

延遲測得到,網頁還是無法開啟?

先確認測試類型:TCP 連接埠可連通,不代表完整代理請求成功。檢查系統代理指向的本機連接埠,再進行實際連線測試;並查看記錄,確認請求是否進入核心,以及由哪條路由規則處理。

更新用戶端後,需要重新新增訂閱嗎?

通常不需要。先確認原有訂閱群組及節點仍在,再檢查更新後的核心選擇、本機監聽與路由設定。若確實需要重新匯入,請先備份設定;提供記錄前,務必刪除完整訂閱網址及身分認證資訊。

選擇順序:平台、設定、核心、驗證

日常使用不必先替兩種核心排出固定優劣。桌面使用者可先依作業系統與處理器架構選擇 v2rayN;Android 使用者則依節點需求比較 v2rayNG 與 v2flyNG。優先符合伺服器的協定組合,再考量用戶端的訂閱管理、路由編輯與使用習慣。

  1. 確認執行平台:Windows、macOS、Linux 或 Android,並選擇相符的處理器架構。
  2. 取得完整設定需求:協定、位址、連接埠、傳輸方式、安全層及必要的擴充欄位。
  3. 確認用戶端與實際核心版本,確保目前的組合能辨識這些設定。
  4. 匯入後檢查記錄,再確認本機入口、系統代理與實際網頁請求。

若要進一步了解協定與安全層的差異,請參閱協定詳解;若遇到選單、訂閱更新或分流設定問題,請前往使用文件。記下「用戶端版本、核心版本、協定組合、錯誤記錄」四項資訊,通常比反覆更換用戶端更有助於找出問題。

下載v2rayN