Xray 核心與 V2Fly 核心差異:REALITY、XTLS Vision 與設定相容性

比較 Xray 與 V2Fly 核心的分支沿革、REALITY 和 XTLS Vision 支援情況,並整理 v2rayNG、v2flyNG 的核心選擇與設定遷移重點。

本文重點

先依節點參數選擇核心,再確認用戶端能否正確產生設定。使用 REALITY 或 xtls-rprx-vision 的節點,應選擇支援相應功能的 Xray 核心;既有 VMess、WebSocket 或 TLS 節點,則須逐項核對傳輸與安全參數。本文適合準備在桌面與 Android 之間遷移訂閱的使用者,說明哪些設定可沿用、哪些必須重新確認。

分清用戶端、核心與節點協定

v2rayN 是桌面用戶端,負責訂閱管理、編輯節點、設定系統代理及管理核心程序。Xray 與 V2Fly 則是實際處理代理流量的核心。安裝某個用戶端,不代表目前連線一定由特定核心處理;請以執行記錄中的核心名稱、版本與啟動結果為準。

V2Fly 社群負責維護 V2Ray 專案。Xray 源自 V2Ray 專案分支,之後在傳輸、安全機制與設定欄位方面各自發展。兩者雖有共同源頭,但不代表新功能會同步推出,也不能假設完整 JSON 設定檔可直接互換。

Android 版 v2rayNG 使用 Xray 核心,v2flyNG 則使用 V2Fly 核心。桌面端使用 v2rayN 時,還須確認目前版本提供哪些核心選項,以及該節點實際呼叫哪個核心。介面能儲存節點,只代表輸入內容通過介面檢查,不代表核心已成功建立連線。

比較 REALITY、XTLS Vision 與常見協定

REALITY 與 XTLS Vision 解決的問題不同。REALITY 是 Xray 提供的傳輸安全機制;Vision 則是以 xtls-rprx-vision 表示的流量控制模式,常見於 VLESS 設定。兩者經常搭配使用,但並非同一個選項;符合條件的 TLS 設定也能使用 Vision。

檢查項目Xray 核心V2Fly 核心遷移時的處理方式
VMess支援,但仍須符合傳輸參數支援,但仍須符合傳輸參數核對 UUID、安全選項、傳輸方式與 TLS
VLESS支援,常搭配 REALITY 或 Vision已有 VLESS 實作,但不代表支援 Xray 的所有擴充功能仍須檢查 security 與 flow,不能只看 VLESS 名稱
REALITY使用支援該功能的版本處理無法直接使用 Xray 的 REALITY 設定沿用 Xray,或向服務商索取其他類型的節點設定
xtls-rprx-vision使用支援該流量控制模式的版本處理不能直接以同名的 Xray 流量控制模式遷移核對伺服器端需求,不能只刪除 flow 欄位
WebSocket + TLS支援常見組合支援常見組合核對路徑、Host、SNI 與憑證驗證

REALITY 用戶端通常需要伺服器提供的公鑰相關參數、serverName、shortId,以及用戶端指紋等設定。伺服器私鑰不可放入用戶端。分享連結、用戶端表單與核心 JSON 的欄位名稱可能不同;請依目前版本的欄位說明填寫,不要直接照抄欄位名稱。

依節點需求選擇 Xray 或 V2Fly

如果訂閱已包含 REALITY 或 Vision 節點,優先選擇支援這些功能的 Xray 用戶端。如果既有設定長期在 V2Fly 環境中穩定運作,且使用雙方都支援的協定與傳輸方式,可以保留原有環境,先驗證再遷移。選擇核心不是比較速度排名,實際體驗也會受到線路壅塞、伺服器負載與本地網路影響。

Xray 核心

建議選擇

適用於需要 REALITY、xtls-rprx-vision 的節點。選擇前請確認用戶端內建版本與表單支援情況,避免核心支援該功能,介面卻無法完整匯入相關欄位。

適用情境:含 REALITY 或 Vision 的訂閱、桌面端搭配 v2rayNG 使用

V2Fly 核心

適用於已確認可用的 V2Fly 設定與 VMess 等常見節點。保留既有路由與 DNS 方案時,仍須確認設定格式與目前版本相符。

適用情境:已有 V2Fly 設定、使用 v2flyNG,且節點參數相符的環境

不要把「新核心」理解成「所有舊節點都能原樣匯入」。用戶端的訂閱解析器也會轉換資料:同一條分享連結可能被不同用戶端解析成不同欄位,部分擴充參數也可能遭忽略。切換用戶端後,先開啟節點編輯頁逐項確認,比反覆更新訂閱更容易找出問題。

遷移設定時檢查五組欄位

遷移時建議先匯入單一節點,確認可用後再匯入整組訂閱。完整設定除了遠端連線,也包含本機監聽、DNS、路由與出站標籤。只遷移節點資訊通常更容易控制變因;直接覆寫完整 JSON,可能同時改變應用程式的接入方式與分流結果。

  1. 記錄目前環境。在用戶端記錄中確認核心名稱與版本,並備份原始設定。v2rayN 可先開啟「設定」→「參數設定」,檢查本機監聽相關設定;不同版本的分頁名稱可能不同,請以目前介面為準。
  2. 核對遠端身分。確認伺服器位址、連接埠、UUID 或密碼。連接埠由伺服器端指定,不能因為另一個節點使用 443,就把目前節點也改成 443。
  3. 核對傳輸欄位。WebSocket 的 path 與 Host、TLS 的 serverName,以及 REALITY 參數都必須符合伺服器端設定。Host 與 serverName 用途不同,即使值相同,也不能合併成同一個欄位。
  4. 核對安全設定與流量控制。確認選用 TLS 或 REALITY,以及是否需要 xtls-rprx-vision。匯入後看到 VLESS 標籤,不代表這些附加條件都已完整保留。
  5. 重新建立本機策略。重新檢查 DNS、路由順序、出站標籤與系統代理。若引用了不存在的 outboundTag,可能導致設定無法啟動,或分流結果不如預期。

V2Fly 有不同的設定格式與發展路線,Xray 也會調整欄位與驗證規則。因此,「都是 JSON」不代表結構相同。遇到未知欄位、無效傳輸或不支援的 flow 錯誤時,先確認讀取設定的核心與格式,再依錯誤欄位處理,不要一次刪除所有報錯項目。

443
遠端 TLS 連接埠範例,實際設定以節點為準
10808
本機 SOCKS 監聽範例,請自行確認
10809
本機 HTTP 監聽範例,並非所有版本的預設值

這三個數字代表不同用途,並非建議照抄的設定。遠端連接埠用於連線至伺服器,本機連接埠則供應用程式接入代理。例如,瀏覽器若指向本機 HTTP 連接埠,核心就必須確實提供該監聽服務;若目前使用混合連接埠,請依實際監聽類型設定,不要照搬舊用戶端的連接埠紀錄。

規劃桌面與 Android 的訂閱使用方式

同一條訂閱可以包含多種協定。桌面端匯入成功,不代表 Android 端支援其中每一項。服務商也可能依用戶端類型回傳不同內容,因此即使兩端的節點名稱相同,仍須確認協定、傳輸方式與安全欄位是否一致。

設定方案:依核心能力區分可用節點

桌面端:v2rayN
  • 使用 REALITY 或 Vision 時,確認實際呼叫的是 Xray。
  • 先測試單一節點,再確認系統代理與路由。
  • 保留原設定備份,並另外記下本機監聽連接埠。
Android 端:v2rayNG 或 v2flyNG
  • 需要 Xray 功能時,選用 v2rayNG。
  • 使用 v2flyNG 時,請選擇與 V2Fly 相容的節點。
  • 首次連線時先確認系統 VPN 權限,再測試應用程式能否連線。

共用訂閱不代表共用所有執行設定;節點參數、DNS、路由與系統接入方式都應分別確認。

Mac 的系統代理主要影響遵循系統代理設定的應用程式;Android 用戶端通常透過系統 VPN 介面接管流量。兩者的流量入口不同,不能以 Android 能開啟網頁,作為 Mac 系統代理設定正確的證明。排查時先確認核心已啟動,再確認應用程式流量是否進入核心。

排查匯入成功但無法連線

依序檢查「設定能否啟動 → 遠端交握是否成功 → 應用程式流量是否進入代理」。每次只修改一組參數,並保留第一筆具體錯誤訊息。節點清單中的測試結果只涵蓋特定測試目標,無法取代瀏覽器、DNS 與路由的完整驗證。

REALITY 節點可以匯入 v2flyNG,為什麼還是連不上?

匯入器可能只儲存了部分欄位。開啟節點編輯頁,檢查安全類型與 flow;如果伺服器要求 REALITY 或 Vision,請改用支援相應功能的 v2rayNG,或向服務商索取適用於 V2Fly 的節點。不要只把安全類型改成 TLS 後再次嘗試。

換成 Xray 後,原本的 WebSocket 節點為什麼失效?

先確認記錄是否顯示核心已成功啟動,再核對 WebSocket 路徑、Host、TLS serverName 與遠端連接埠。如果記錄指出本機連接埠已被占用,先停止另一個代理程序;如果是交握錯誤,先還原原本的節點參數,不要同時調整 DNS 與路由。

記錄顯示啟動成功,Mac 瀏覽器卻無法開啟網頁?

確認 v2rayN 的系統代理狀態,並在「設定」→「參數設定」查看實際監聽連接埠。接著前往 macOS「系統設定」→「網路」→目前的網路服務→「詳細資訊」→「代理伺服器」,核對代理位址與連接埠。若用戶端使用自動代理設定,也要確認該設定已生效。

哪種核心延遲較低?需要反覆切換測試嗎?

先選擇雙方都支援的同一節點、同一傳輸方式與同一測試目標,在相近時段重複測試,再觀察實際網頁載入與持續傳輸表現。不同地區節點之間的測試結果,不能用來判斷核心速度。既有設定穩定且功能符合需求時,不必只為了一次延遲數據而遷移。

查看用戶端下載