選擇核心時,應先確認節點需要的協定、傳輸方式與安全層,而非只看客戶端名稱。本文適合想在 v2rayN 切換核心,或比較 v2rayNG 與 v2flyNG 的使用者:先分清 VLESS、Vision 和 REALITY,再核對設定欄位、資源檔案與本機連接埠,最後透過設定檢查和連線記錄確認切換結果。
發展脈絡:客戶端、核心與節點設定的關係
V2Fly 是以 V2Ray 為基礎持續開發的社群專案,其核心程式通常稱為 V2Fly-core。Xray-core 於 2020 年從 V2Ray 的程式碼分支發展而來,之後形成獨立的功能演進與發行節奏。兩者源自相同基礎,因此不少設定結構相似,但新功能、預設行為與欄位名稱不一定相同。
v2rayN 是桌面客戶端,負責訂閱管理、編輯節點、產生設定並啟動所選核心;實際建立代理連線的是核心程序。Android 版 v2rayNG 使用 Xray 核心,v2flyNG 則使用 V2Fly 核心。客戶端名稱相似,不代表支援的節點功能完全相同。
訂閱中的分享連結也不是可直接交由任意核心執行的完整設定。客戶端必須先將節點參數轉換成相應核心的出站物件,再補上本機入站、DNS 與路由。訂閱能成功匯入,只代表客戶端辨識了連結格式;能否啟動並完成握手,仍須分別檢查產生的設定與伺服器端要求。
功能比較:VLESS、XTLS Vision 與 REALITY 分屬不同層
VLESS 是代理協定,Vision 是 Xray 中搭配 VLESS 使用的流控方案,REALITY 則屬於連線安全層。常見的「VLESS + TCP + REALITY + Vision」實際上組合了四種設定。REALITY 不是 VLESS 的另一個名稱;節點使用 VLESS,也不代表一定得用 Xray。
| 功能或設定 | Xray-core | V2Fly-core | 切換時的判斷方式 |
|---|---|---|---|
| VMess、VLESS 基礎協定 | 支援 | 支援 | 仍須確認傳輸方式與安全層 |
| Trojan、Shadowsocks | 支援 | 支援 | 須逐項確認加密方式與擴充功能 |
| 常見的 TCP、WebSocket 與 TLS | 支援 | 支援 | 路徑、請求標頭、SNI 等仍須一致 |
| XTLS Vision | 支援 | 不支援 Xray 的 Vision flow | 確認 flow |
| REALITY | 支援 | 不支援 Xray 的 REALITY | 確認 security 與金鑰參數 |
| DNS 與路由 | 有各自的實作與擴充功能 | 有各自的實作與擴充功能 | 不能只換出站節點就算完成遷移 |
Vision 通常會在使用者物件中設定 flow: "xtls-rprx-vision",而不是把 security 設為「Vision」。REALITY 通常則設定為 streamSettings.security: "reality",並搭配相應的 realitySettings。常見的 Vision 組合會搭配 TLS 或 REALITY;不要任意在 WebSocket 節點上加入 Vision flow。
判斷方式:先找出無法替代的欄位,再決定是否更換核心
如果伺服器端要求 REALITY 或 xtls-rprx-vision,就應選用支援這些功能的 Xray;不要刪除欄位,讓設定勉強啟動。刪除客戶端欄位不會連帶改變伺服器端的握手要求。
設定相容性:逐項核對流控、安全層與傳輸方式
以下兩張卡片是參數核對範例,並非完整的連線設定。第一組說明 Xray 功能節點的關鍵設定;第二組則列出兩種核心常見的共通項目。伺服器位址、身分資訊與安全參數應以實際伺服器設定或訂閱內容為準,不要只憑節點名稱推測。
VLESS + REALITY + Vision
- 協定
vless- 傳輸方式
- TCP,欄位名稱依核心版本而異
- 安全層
reality- Flow
xtls-rprx-vision- 伺服器連接埠
- 443,僅供範例
保留伺服器端提供的 SNI、指紋、金鑰參數與 shortId,交由支援此組合的 Xray 處理。
VMess + WebSocket + TLS
- 協定
vmess- 傳輸方式
ws- 安全層
tls- WebSocket 路徑
/ws,僅供範例- VMess 設定
alterId: 0,使用 AEAD
兩種核心都具備相應功能;路徑、Host、SNI 必須與伺服器設定一致,才能建立連線。
- 使用者物件:確認
id、flow與協定專用欄位。VLESS 的encryption: "none"不代表整條連線沒有安全層,TLS 或 REALITY 位於另一層。 - REALITY 參數:確認
serverName、fingerprint、shortId與伺服器端提供的金鑰參數。不同 Xray 版本對欄位名稱及別名的支援可能不同;舊設定中的publicKey等寫法應依實際執行版本確認,不要直接套用到 V2Fly。 - 傳輸物件:確認
network與相應的設定物件。新版 Xray 文件或產生的設定中可能會出現raw等名稱,不能假設 V2Fly 接受相同寫法;也別遺漏 WebSocket 路徑與請求標頭。 - 安全性檢查:一般 TLS 節點須確認憑證網域與 SNI。不要把略過憑證驗證當成通用的遷移步驟;這無法修正協定不相容,還會改變安全性界線。
舊教學中單獨稱為「XTLS」的設定,可能指早期方案,並不等同於目前的 Vision。遷移時應確認實際的 flow 值與安全層,避免將舊設定原封不動複製到新版。升級客戶端後,也要確認實際啟動的核心版本,而不只是記下客戶端版本號。
v2rayN 切換核心:先備份,再進行最小化測試
v2rayN 各版本的選單名稱與核心選項位置可能不同。操作時,先在「設定」→「參數設定」中尋找核心相關選項;若目前版本依節點類型提供核心選擇,請以該版本介面中的「Core 類型」或類似欄位為準。不要先把所有協定都切換到同一核心,再同時修改 DNS、路由與系統代理。
- 記錄目前狀態。備份現有客戶端設定,記下客戶端版本、記錄中的核心版本、選取的節點、本機監聽位址與連接埠。含有敏感資訊的訂閱網址請只保存在本機。
- 選擇兩邊都支援的節點。優先使用兩種核心皆支援的節點,例如 VMess + WebSocket + TLS,進行驗證。若手上只有 REALITY 節點,就沒有可用來測試 V2Fly 的等效條件。
- 一次只改一項。變更相應協定的核心選項,停止後重新啟動連線。先確認新程序已啟動,再從記錄確認實際使用的核心,避免舊程序仍占用連接埠。
- 檢查本機代理入口。保持應用程式的代理類型與連接埠不變,實際開啟網頁測試。延遲測試能顯示數值,不代表瀏覽器的系統代理入口設定正確。
- 逐步恢復功能。基本連線成功後,再恢復自訂路由、DNS 與其他進階設定。每次恢復一項就重新測試,方便找出相容性問題。
上述數字用來區分本機入口與遠端出口,不代表客戶端的固定預設值。實際連接埠以目前設定為準;也必須一併確認本機監聽類型是 HTTP、SOCKS 或混合模式。遠端使用 443,不代表瀏覽器應將系統代理指向本機的 443。
啟動與連線問題排除:設定檢查通過不代表握手成功
手動維護完整設定時,可先使用核心內建的設定檢查功能。以下分別列出 Xray 與 V2Fly v5 常見的命令列用法;client.json 指已儲存在本機的完整設定檔。其他版本請先執行說明命令確認參數;若要離線檢查客戶端自動產生的暫存檔,請先複製備份。
xray version
xray run -test -config client.json
v2ray version
v2ray test -c client.json
設定檢查可以找出語法錯誤、部分無效欄位與不支援的組合,但無法證明遠端伺服器可連線,也無法確認身分資訊正確。核心啟動後,還須實際發起連線,觀察出站握手與請求是否完成。下表依故障階段分類,避免把所有問題都歸為「節點失效」。
| 現象 | 優先檢查項目 | 下一步 |
|---|---|---|
| 載入設定後立即結束 | 欄位型別、協定名稱、flow 與安全層 | 查看第一筆設定錯誤,確認目前核心支援的範圍 |
| 提示連接埠已被占用 | 舊核心程序或重複執行的客戶端 | 停止重複的執行個體,確認監聽連接埠後重新啟動 |
| 啟動正常但握手失敗 | SNI、身分資訊、REALITY 參數與系統時間 | 逐項比對原始節點,不要先修改路由 |
| 基本節點可用,部分網域連不上 | DNS 策略、路由規則與資料檔案 | 暫時使用基本路由進行驗證,再逐條恢復規則 |
| 客戶端測試成功,瀏覽器卻無法連線 | 系統代理與瀏覽器獨立代理設定 | 確認應用程式連線到目前的本機監聽連接埠 |
路由中的 geosite: 與 geoip: 也依賴資料檔案的內容與載入路徑。兩種核心都認得某種規則語法,不代表本機資料中一定有相應分類。遷移時也應一併核對 domainStrategy、DNS 伺服器、出站標籤與最終兜底規則,否則可能出現「核心能啟動,但分流結果不同」的情況。
常見問題:核心選擇與效能判斷
把 REALITY 節點改成一般 TLS,就能交給 V2Fly 使用嗎?
只修改客戶端設定並不夠。一般 TLS 與 REALITY 的握手條件不同,必須由伺服器端提供相應入口與參數。請取得確實支援目標核心的節點設定再匯入測試,不要只把 security 改名。
v2rayNG 匯出的節點,為什麼匯入 v2flyNG 後無法連線?
先展開節點詳細資訊,確認安全層是否為 REALITY、流控是否為 Vision,以及傳輸方式是否屬於兩種核心的共通支援範圍。若使用 Xray 專屬功能,請改用支援該組合的客戶端;若沒有,則確認匯入後的路徑、SNI 與連接埠是否保留。
換成 Xray 就一定比較快嗎?
不能直接這樣推論。比較時應使用同一台伺服器、相同線路、測試目標與代理入口;先暖機,再進行至少 3 輪、時間相同的下載測試,同時觀察 CPU 使用率、重傳與失敗次數。不同協定節點的測試結果,不能直接歸因於核心。
可以同時啟動兩種核心進行測試嗎?
可以,但本機監聽連接埠必須不同,而且系統代理只能明確指向其中一個入口。較容易重現的方式是依序測試:先停止其中一個核心,確認連接埠已釋出,再啟動另一個,並維持其他設定不變。
選擇依據:優先考量伺服器支援能力,再看設定是否可重現
需要 REALITY 或 Vision 時,選擇 Xray;使用兩種核心都支援的協定組合時,則依實際版本的設定檢查結果、連線狀況與維護需求決定。保留一份已驗證的設定,比同時調整核心、節點與路由更有助於穩定排除問題。