本文適合需要選擇用戶端、確認訂閱相容性,或遷移伺服器設定的使用者。重點是:一般 VMess、VLESS、WebSocket 與 TLS 設定在兩條核心分支間有很大重疊,但 XTLS Vision、REALITY 及部分擴充欄位屬於 Xray 路線;讀完後可依節點協定、用戶端類型與日誌結果判斷應使用的核心。
兩條核心分支的關係與定位
V2Fly 核心通常指 v2ray-core 的社群延續版本,負責解析入站、出站、路由、DNS、傳輸層與策略設定。Xray-core 則從早期 v2ray-core 程式碼基礎發展為獨立分支,保留許多相近的設定結構,同時持續擴充 VLESS、XTLS、REALITY 等能力。兩者不是同一程式的兩種介面主題,也不能只修改用戶端名稱來切換。
桌面與 Android 用戶端主要負責訂閱管理、節點編輯、系統代理控制與日誌顯示,真正建立連線並執行路由的是核心。同一組伺服器位址、連接埠與使用者識別資料交給不同核心後能否連線,還取決於協定欄位、傳輸方式、安全層與核心版本是否相符。
上述版本號用於說明本文核對設定時採用的世代,不代表下載中心顯示的最新版本。核心更新可能新增欄位、淘汰舊別名或調整驗證規則;遷移設定時應先確認實際執行版本,再檢查日誌中的版本首行。
Xray 核心
推薦涵蓋常用 VMess、VLESS、Trojan、SOCKS 與 HTTP 出站,並提供 XTLS Vision、REALITY 等 Xray 路線功能。
適合:VLESS Vision、REALITY 節點與日常主要設定
V2Fly 核心
延續 v2ray-core 設定體系,適合一般 VMess、VLESS、WebSocket、gRPC、TLS 與既有路由設定。
適合:標準協定節點、既有 V2Fly 伺服器與設定維護
結論:先辨識節點安全層,再考慮核心偏好
分享連結或訂閱中出現 security=reality、flow=xtls-rprx-vision 時,應使用 Xray 核心;只有 VMess 或標準 VLESS 搭配 TLS、WebSocket、gRPC 時,才屬於兩者可能相容的範圍。
XTLS Vision 與 REALITY 為何構成主要差異
XTLS 是 Xray 路線中的傳輸最佳化體系,目前節點設定較常見的是 VLESS 搭配 xtls-rprx-vision 流控。用戶端與伺服器端必須同時理解對應的 flow 值;若伺服器端要求 Vision,而用戶端核心忽略或不認得該欄位,連線通常會在握手階段失敗,不會自動降級為一般 TLS。
REALITY 是 Xray 的安全與握手方案。一個可用的用戶端設定通常需要伺服器位址、連接埠、使用者識別資料、serverName、公鑰、shortId、fingerprint 等資訊。訂閱缺少公鑰或 shortId 不相符時,即使位址與連接埠能建立 TCP 連線,核心仍會拒絕後續握手。
| 功能或設定 | Xray-core | V2Fly 核心 | 遷移判斷 |
|---|---|---|---|
| VMess + WebSocket + TLS | 支援 | 支援 | 重點核對路徑、Host 與 TLS 名稱 |
| 標準 VLESS + TLS | 支援 | 支援 | 仍需核對傳輸層欄位與伺服器版本 |
| VLESS + XTLS Vision | 支援 | 不要按 Xray Vision 設定處理 | 保留 Xray 核心 |
| VLESS + REALITY | 支援 | 不相容於這組 Xray 欄位 | 無法直接改名轉換 |
| 網域與 IP 路由規則 | 支援 | 支援 | 檢查規則資源與欄位名稱 |
一段典型的 Xray REALITY 出站片段
{
"protocol": "vless",
"settings": {
"vnext": [
{
"address": "198.51.100.20",
"port": 443,
"users": [
{
"id": "11111111-2222-3333-4444-555555555555",
"encryption": "none",
"flow": "xtls-rprx-vision"
}
]
}
]
},
"streamSettings": {
"network": "tcp",
"security": "reality",
"realitySettings": {
"serverName": "www.example.com",
"fingerprint": "chrome",
"publicKey": "範例公鑰僅用於說明欄位位置",
"shortId": "6ba85179e30d4fc2"
}
}
}
這段程式碼僅用於辨認欄位層級,位址、使用者識別資料與公鑰都不是可連線節點。將它交給不支援 REALITY 的核心時,常見結果是設定解析錯誤、未知安全類型或啟動失敗。正確做法是換回相符的 Xray 核心,而不是刪除錯誤欄位後繼續連線。
協定相同不代表設定可以原樣互換
Xray 與 V2Fly 共用許多歷史設定概念,例如 inbounds、outbounds、routing、dns 與 policy。基礎 VMess 出站通常容易遷移,但完整設定仍可能引用分支專屬欄位、規則資源、傳輸參數或實驗功能。核心能讀取 JSON,只能證明語法與欄位驗證通過,不能證明流量已按預期分流。
訂閱情境還多一層用戶端轉換。訂閱內容可能是分享連結清單,也可能是伺服器產生的結構化資料;v2rayN、v2rayNG 與 v2flyNG 會先解析訂閱,再產生核心需要的執行設定。因此,同一份訂閱在兩個用戶端中顯示相同節點名稱,最後產生的 JSON 仍可能不同。
兩類節點的核心配置
包含 Xray 專用欄位
- 桌面端使用 v2rayN 的 Xray 核心
- Android 端使用搭載 Xray 核心的 v2rayNG
- 保留 flow、publicKey、shortId 與 fingerprint
- 伺服器端與用戶端同時升級後,再啟用新欄位
標準 VMess 或 VLESS
- 依伺服器端實際核心選擇用戶端
- 核對 WebSocket 路徑、Host 與連接埠
- 核對 TLS 的 serverName 與系統時間
- 遷移後重新測試 DNS 與路由分流
協定名稱只是第一層條件,安全層、傳輸層與流控欄位全部相符後,設定才具備遷移條件。
遷移設定的檢查順序
- 確認節點協定是 VMess、VLESS 或其他類型,不要只根據節點備註判斷。
- 檢查 security、flow、network、serverName、Host、path 等關鍵欄位。
- 確認目標用戶端實際呼叫的核心與版本,記錄啟動日誌首行。
- 先建立單一節點連線,再測試網域解析、直連規則與代理規則。
- 最後匯入完整訂閱,避免大量節點掩蓋單一設定錯誤。
結論:遷移測試要同時觀察連線與路由
瀏覽器能開啟一個網頁不代表遷移完成。至少應測試一個代理網域、一個直連網域與一次 DNS 查詢,並確認日誌中的出站標籤與預期規則一致。
v2rayN、v2rayNG 與 v2flyNG 分別使用什麼核心
v2rayN 是桌面用戶端,目前通常以 Xray 核心處理 VLESS、Vision 與 REALITY 節點。用戶端負責節點清單、訂閱更新、系統代理與路由設定,核心程序負責實際連線。排查時應區分「用戶端介面版本」與「核心版本」,兩者不是同一個版本號。
v2rayNG 是 Android 用戶端,搭載 Xray 核心,適合與桌面端共用包含 REALITY 或 Vision 節點的訂閱。v2flyNG 則面向 V2Fly 核心設定,更適合明確使用 V2Fly 伺服器、標準 VMess/VLESS 與既有 v2ray-core 設定體系的環境。
- v2rayN:進入「設定」→「參數設定」→「Core 基礎設定」檢查核心路徑與日誌等級;本機混合代理常見連接埠為 10808,實際值以目前設定為準。
- v2rayNG:進入「設定」→「進階設定」檢查本機代理連接埠、DNS 與日誌選項;啟用節點後從日誌頁確認 Xray 版本與握手錯誤。
- v2flyNG:用於執行由 V2Fly 核心產生的設定;匯入前應確認訂閱沒有 REALITY、Vision 等 Xray 專用參數。
訂閱中同時有一般節點和 REALITY 節點,應該選哪個核心?
優先使用 Xray 核心。它可以處理一般 VMess、標準 VLESS 以及 Xray 專用節點,避免切換到 V2Fly 後遺失 REALITY 和 Vision 設定。
同一個 VMess 節點在兩個核心中都能連線,速度會固定不同嗎?
不會。速度還會受到伺服器負載、線路丟包、壅塞控制、TLS、傳輸層與本機網路影響。應在相同時段、相同節點與相同路由規則下重複測試至少三次。
v2flyNG 能直接匯入含 REALITY 的訂閱嗎?
訂閱解析器可能會顯示節點,但 V2Fly 核心無法據此執行 Xray REALITY 設定。應改用 v2rayNG,並重新匯入原始訂閱以保留完整欄位。
更換核心後網頁打不開,先看哪裡?
先確認核心程序已啟動,再核對本機 SOCKS 或 HTTP 連接埠是否仍為 10808、10809。接著檢查系統代理連接埠,以及日誌中的設定解析、DNS、握手錯誤。
只複製伺服器位址和使用者識別資料可以遷移 VLESS 嗎?
不夠。還要複製連接埠、傳輸方式、安全層、serverName、flow、路徑、Host,以及 REALITY 情境中的公鑰、shortId 和 fingerprint。
依節點類型選擇核心並排查連線
如果訂閱明確包含 VLESS、REALITY、Vision,桌面端選擇 v2rayN、Android 端選擇 v2rayNG,通常是最直接的組合。若伺服器端明確執行 V2Fly,節點使用標準 VMess 或 VLESS,且已有經驗證的路由設定,則可使用 v2flyNG 維持相同的核心體系。
不要只憑「節點逾時」判斷協定不相容。逾時也可能來自位址無法連線、連接埠遭封鎖、系統時間錯誤、DNS 回應異常或伺服器未執行。核心不相容更常見的訊號是 unknown field、unsupported security、failed to parse config、invalid flow 等設定或握手錯誤。
| 日誌現象 | 優先檢查 | 處理方式 |
|---|---|---|
| unknown field 或 unsupported security | 核心分支與設定欄位 | 確認是否將 REALITY 設定交給 V2Fly |
| invalid flow | flow 值與協定組合 | 核對是否為 VLESS 與 xtls-rprx-vision |
| connection refused | 伺服器連接埠與程序 | 確認位址、連接埠及伺服器監聽狀態 |
| context deadline exceeded | 線路、DNS 與握手參數 | 分別測試位址可達性與 serverName |
| 本機連接埠占用 | 10808、10809 等監聽連接埠 | 關閉重複核心程序或調整用戶端連接埠 |
五步完成用戶端核對
- 完全停止目前連線,確認舊核心程序已退出。
- 開啟用戶端設定,記錄核心名稱、核心版本、本機 SOCKS 連接埠與 HTTP 連接埠。
- 只選擇一個節點啟動,查看日誌是否完成設定載入與本機監聽。
- 開啟系統代理後存取目標網域,核對日誌中命中的路由規則與出站標籤。
- 單一節點驗證通過後,再恢復訂閱自動更新與完整路由規則。
核心選擇的最終判斷
Xray 與 V2Fly 的共通部分足以涵蓋大量基礎代理設定,但兩者已是獨立演進的核心。Xray 的主要辨識點是 VLESS、XTLS Vision 與 REALITY 的組合;V2Fly 的價值則在於延續自身設定體系與伺服器部署路徑。不存在將所有節點統一改寫成某種 JSON 後就必然相容的規則。
對一般使用者而言,最可靠的判斷順序是節點欄位、用戶端核心、伺服器端實作、執行日誌。桌面使用 v2rayN、Android 使用 v2rayNG 時,可涵蓋 Xray 專用節點;明確維護 V2Fly 環境時,再使用 v2flyNG。更換核心後必須重新檢查訂閱、DNS、路由與本機代理連接埠。
- 看到 reality 或 xtls-rprx-vision:選擇 Xray。
- 使用標準 VMess、VLESS、WebSocket、gRPC、TLS:兩者可能相容,但仍需核對完整欄位。
- 設定解析失敗:先查看核心版本與未知欄位,不要先修改伺服器位址。
- 連線成功但分流異常:檢查路由規則、DNS 與用戶端產生的最終設定。