2026-09-15 · 進階原理 · 約 10 分鐘

Xray 核心與 V2Fly 核心差異:VLESS、XTLS Vision、REALITY 支援比較

整理 Project V 生態中兩條核心分支的發展脈絡,比較協定與傳輸功能支援狀況,並說明 v2rayNG 和 v2flyNG 的選擇方式。

本文重點

先確認節點需求,再選擇核心。使用 VLESS、XTLS Vision 與 REALITY 組合時,請選擇支援相應功能的 Xray 版本;使用 VMess、WebSocket 與 TLS 等設定時,則要逐項確認兩端參數。本文適合已匯入訂閱、想確認核心相容性的使用者,重點說明協定分層、Android 用戶端選擇,以及切換核心後的驗證順序。

分清用戶端、核心與 Project V 分支

先分清操作介面與連線引擎。v2rayN、v2rayNG、v2flyNG 都是用戶端,負責儲存節點、管理訂閱群組、產生設定檔及顯示記錄。核心會讀取設定,執行代理協定、DNS 查詢及路由分流。用戶端能辨識訂閱連結,不代表它呼叫的核心一定支援連結中的所有參數。

Project V 是相關工具與協定所屬的專案體系,V2Fly 社群負責維護其中的 V2Ray 核心。Xray-core 於 2020 年從 V2Ray 分支而出,之後獨立發展。兩者仍有部分共通的協定與設定概念,但新功能、欄位格式和發行節奏已不相同。別把它們當成同一個程式的不同介面,也別用「版本號較大」來跨專案比較功能。

釐清 VLESS、Vision 與 REALITY 的用途

「VLESS + TCP + REALITY + Vision」代表一組相互搭配的設定,不是四種可以任意互換的協定名稱。VLESS 負責代理協定層,TCP 表示底層傳輸方式,REALITY 是安全層方案,Vision 則是 Xray 的流量控制方式。把不同層級混成同一個開關,最容易發生訂閱匯入成功、實際交握卻失敗的情況。

名稱主要用途檢查項目
VMess代理協定,包含驗證及相應的資料保護機制UUID、傳輸設定、伺服器相容性;現代設定通常將 alterId 設為 0
VLESS輕量代理協定,本身不提供傳輸加密UUID、加密欄位、安全層與 flow 設定
WebSocket承載代理流量的傳輸方式路徑、Host、反向代理設定,以及是否搭配 TLS
TLS透過憑證驗證等機制建立安全連線SNI、憑證網域、系統時間及憑證鏈
XTLS VisionXray 的流量控制方案,用於特定連線組合xtls-rprx-vision、搭配的傳輸方式及兩端支援狀況
REALITYXray 提供的安全層方案伺服器公鑰參數、serverName、shortId 及用戶端指紋設定

VLESS 的 encryption=none 不代表整條連線必定以明文傳輸:是否受到安全保護,還要查看外層使用 TLS 還是 REALITY。反過來說,也不能因為設定了 VLESS,就認定連線已經加密。部署時應依照伺服器提供的完整組合填寫,而不是只複製 UUID。

Vision 也不是通用的「加速按鈕」。它對承載方式和連線內容有特定要求,不能看到 WebSocket 節點就直接加上 flow=xtls-rprx-vision。REALITY 和 Vision 經常搭配使用,但兩者並非同義詞;啟用其中一項,不代表另一項也已設定。

確認 Xray 與 V2Fly 的支援範圍

選擇核心時,應逐項確認節點實際使用的功能。VMess 及常見的 WebSocket、TLS 設定在兩個專案中都有實作,但這不代表設定檔可以整份直接沿用。尤其是 V2Fly 的不同設定格式、Xray 的擴充欄位,以及新的傳輸選項,都應對照目標版本確認。

節點需求Xray 核心V2Fly 核心選擇依據
VMess支援支援確認驗證方式、傳輸、安全層及版本相容性
WebSocket + TLS支援常見組合支援常見組合確認路徑、Host 與 SNI 等參數一致
基礎 VLESS 設定支援確認目標版本的協定實作與設定格式不能只憑 VLESS 名稱推斷支援 Vision 或 REALITY
XTLS Vision請使用支援該功能的版本不支援 Xray 的 Vision 流量控制節點要求該 flow 時,請使用相應的 Xray 版本
REALITY請使用支援該功能的版本不支援 Xray 的 REALITY 設定無法只靠修改欄位名稱轉換成一般 TLS

基礎 VLESS 的早期實作及不同版本差異,不應簡化成「所有 V2Fly 版本都支援」或「兩個專案的 VLESS 完全相同」。實際選擇時,界線更明確:若節點要求 REALITY 或 xtls-rprx-vision,就依照 Xray 的支援範圍選擇用戶端與核心,而不是試圖讓 V2Fly 忽略這些欄位。

Xray 核心

建議選擇

本文優先推薦用於 VLESS、Vision 與 REALITY 組合。請保留伺服器提供的安全層和 flow 參數,並確認用戶端內建版本能辨識這些設定。

適用情境:節點明確要求 REALITY 或 XTLS Vision。

V2Fly 核心

依照 V2Fly 的設定體系使用已驗證的協定與傳輸組合。既有 VMess 等部署可繼續確認相容性,不必只因分支名稱不同就遷移。

適用情境:伺服器提供 V2Fly 設定,且不依賴 Xray 專屬功能。

檢查訂閱參數與連線埠

更新訂閱只會取得節點資料,不會把不相容的協定轉換成相容協定。檢查 VLESS 節點時,先確認位址、連線埠和 UUID,再檢查傳輸方式、安全層、SNI 與 flow。REALITY 節點還應逐項確認伺服器提供的公鑰參數、shortId 和用戶端指紋;欄位名稱可能因版本而異,請以目前的用戶端介面和核心文件為準。

443
遠端伺服器連線埠範例,請以訂閱中的實際設定為準
10808
本機代理監聽連接埠範例,請以用戶端設定為準

這兩種連接埠用途不同。遠端連接埠用來連線到伺服器,本機監聽連接埠則供瀏覽器或其他程式連線至本機代理。把遠端的 443 改成本機的 10808,無法解決連線失敗;兩個本機程序同時占用相同的監聽連接埠,也可能造成核心啟動失敗。以上數字僅為設定範例,不代表目前裝置的實際值。

  1. 保留原始節點資訊。修改前先保留訂閱群組與節點參數,不要公開包含 token 或 UUID 的完整連結。
  2. 確認安全層設定。伺服器要求 REALITY,就不要在用戶端自行改成 TLS;伺服器要求 TLS,也不要自行填入 REALITY 公鑰。
  3. 確認流量控制設定。只有伺服器設定有要求,且組合受支援時,才填入 xtls-rprx-vision。
  4. 確認傳輸欄位。WebSocket 路徑如 /example-ws 僅為路徑範例,必須換成伺服器提供的實際值;不要因此替 TCP 節點加上路徑。
  5. 執行實際連線延遲測試。記錄測試時間與記錄檔;TCPing 只能確認目標連接埠是否可連通,無法證明驗證與安全交握已成功。

選擇桌面與 Android 的設定方式

桌面端先確認 v2rayN 目前節點使用的核心,再進行測試。若要檢查本機監聽和代理相關參數,請前往「設定」→「參數設定」確認;不同版本的分頁位置可能不同,請以實際介面為準。訂閱群組用於管理來源,更新訂閱則用於刷新節點,這兩項操作都不代表切換核心。

設定方式:依節點特性選擇用戶端

桌面端:v2rayN
  • 若使用 REALITY 或 Vision 節點,請確認實際呼叫的是相容的 Xray 核心。
  • 保留原有訂閱群組,使用同一個節點比較切換前後的結果。
  • 先檢查核心啟動記錄,再檢查系統代理和路由分流。
Android:依核心選擇
  • 需要 Xray 功能時,選擇內建版本符合需求的 v2rayNG。
  • 依照 V2Fly 設定部署時,使用 v2flyNG 並確認欄位相容性。
  • 分別更新訂閱;應用程式分流代理與本機規則須各自設定。

共用訂閱網址不代表本機設定會同步;兩端節點能否一致,取決於訂閱內容、解析能力及更新時間。

遷移時不要同時修改核心、DNS、路由和代理模式。先維持節點不變,確認新核心能啟動並完成實際連線延遲測試,再逐項恢復路由分流。系統代理與 Android 的流量接管方式不同,即使兩端使用相同節點,也不能直接比較所有應用程式的行為。

依據記錄區分相容性錯誤與網路錯誤

先判斷故障發生在哪一層。讀取設定時發生錯誤,優先檢查欄位和核心;連線遠端逾時,優先檢查位址、連接埠和網路;出現交握錯誤,再確認安全層參數。不要一遇到錯誤就重新更新訂閱,這會失去原有的比較條件,也未必能找出真正原因。

能匯入 REALITY 節點,為什麼還是連線失敗?

匯入是由用戶端解析連結,連線則由核心執行。先從啟動記錄確認 Xray 版本和實際呼叫路徑,再核對伺服器公鑰參數、serverName、shortId 與指紋設定。最後執行實際連線延遲測試,不要只看節點是否出現在清單中。

記錄顯示 unknown field,可以刪掉那一行嗎?

先確認設定屬於哪個專案及哪種格式。如果報錯欄位用於 REALITY 或 Vision,刪除它可能改變連線設定,不能當作相容方案。應改用支援該欄位的核心版本,或請伺服器提供另一組完整且相容的節點設定。

把 REALITY 改成 TLS,就能在另一個核心上使用嗎?

不能只修改用戶端。兩種安全層的交握方式與伺服器設定不同。只有伺服器另行設定 TLS 入站,並提供相應的連接埠、憑證網域和驗證資訊,用戶端才能依照該組參數連線。

TCPing 正常,但實際連線延遲測試逾時,該先檢查什麼?

先檢查 UUID、flow、安全層和 SNI,再查看記錄是否出現驗證失敗或交握失敗。如果節點的實際連線延遲正常,但瀏覽器無法連線,則檢查系統代理、本機連接埠與路由規則;也要確認測試目標本身可以連線。

換成 Xray 一定會更快嗎?

不能只看核心名稱判斷。請維持相同網路、相同伺服器和相同測試目標,分別記錄實際連線延遲與請求結果。伺服器負載、線路、DNS 和路由都會影響使用體驗;相容性正常也不代表傳輸速度一定提升。

最後保留一套可重複執行的驗證流程:確認核心啟動成功、節點能完成實際請求,再確認應用程式流量的路由。若需查看操作步驟,請參閱實際連線延遲測試與系統代理設定;若要確認 Android 設定,請參閱Android 使用說明。選擇核心的依據始終是伺服器需求與用戶端實際功能,而不是單一協定標籤。

下載v2rayN