選擇核心時,應先確認節點需求,而非只看用哪款用戶端。本文說明用戶端、通訊協定、傳輸方式與安全層的差異,釐清 VLESS 不等於 REALITY、XTLS Vision 不等於一般 TLS,並提供 Android 裝置的選擇建議、桌面端設定檢查方式,以及遷移失敗時的排查順序。使用 VMess 節點的讀者也能據此判斷是否需要更換核心。
一、Xray 與 V2Fly:源自同一專案,設定各有界線
Project V 是理解這個生態系的起點,V2Ray 是其中的核心代理工具,V2Fly 社群則持續維護 V2Ray。Xray-core 從 V2Ray 專案分支而出,之後發展出獨立的功能與設定架構。因此,兩者雖有相近的入站、出站與路由概念,卻不代表任何 JSON 檔案都能直接互換。
用戶端負責節點清單、訂閱更新、介面設定與啟動管理;核心則負責處理連線、協定交握與路由。v2rayNG 使用 Xray 核心,v2flyNG 使用 V2Fly 核心。桌面版 v2rayN 可使用的核心及呼叫方式,取決於發行套件與設定類型;排查時應以啟動記錄顯示的執行檔與版本為準。
- 用戶端名稱:代表操作入口,不能單憑名稱判斷目前執行的是哪個核心。
- 節點協定:例如 VMess 或 VLESS,規範代理連線的協定結構。
- 傳輸方式:例如 TCP 或 WebSocket,決定代理資料如何傳送。
- 安全與流控:TLS、REALITY 與 Vision 屬於不同的設定項目,需分別確認。
二、VLESS、XTLS Vision 與 REALITY 支援比較
VLESS 本身不提供傳輸加密,常見設定會搭配 TLS 或 REALITY 使用。V2Fly 也有 VLESS 實作,因此「看到 VLESS 就一定要用 Xray」並不正確;真正需要進一步確認的是 flow、安全層與傳輸方式的具體組合。也不能因為 Xray 有擴充功能,就推定 V2Fly 也支援同名功能。
| 設定功能 | Xray 核心 | V2Fly 核心 | 選擇依據 |
|---|---|---|---|
| VMess | 支援 | 支援 | 還需確認傳輸方式、TLS 與伺服器參數 |
| 基本 VLESS | 支援 | 有對應實作 | 不能將所有擴充功能組合視為通用設定 |
| XTLS Vision | 支援相應流控 | 不支援 Xray 的 Vision 流控 | 出現 xtls-rprx-vision 時,請選用相容的 Xray 環境 |
| REALITY | 支援 | 不支援 Xray 的 REALITY 設定 | 確認金鑰資料、SNI、shortId 與指紋設定 |
| 路由分流 | 支援規則設定 | 支援規則設定 | 確認設定格式、規則語意與資料檔案 |
XTLS Vision 是一種流控機制,常見設定值為 xtls-rprx-vision。它不是傳輸方式名稱,也不能將節點的 TLS 開關改名為 Vision 來啟用。REALITY 則是 Xray 的安全機制,需要用戶端與伺服器的參數彼此相符;它不是訂閱編碼格式,也不是獨立的用戶端。
一般 TLS 通常仰賴憑證與網域驗證。REALITY 採用不同的交握機制與驗證參數,不能靠關閉憑證驗證取代。伺服器允許的 serverName,必須與用戶端使用的金鑰資料和 shortId 相符;只要有一個欄位不正確,即使連得上連接埠,也不代表代理交握成功。
三、設定方式:先釐清 flow 與 security 的位置
以下提供 Xray 出站設定範例,用來辨識欄位層級,示範 VLESS、Vision 與一般 TLS 的組合。網域使用保留的示例網域,UUID 僅供格式說明,並非可直接使用的節點。實際部署時,必須換成伺服器提供的位址、使用者識別碼與憑證網域,並確認伺服器已啟用對應流控。
{
"outbounds": [
{
"tag": "proxy",
"protocol": "vless",
"settings": {
"vnext": [
{
"address": "example.com",
"port": 443,
"users": [
{
"id": "e1dd2b67-68ca-4c8f-a92b-27eb305d91e7",
"encryption": "none",
"flow": "xtls-rprx-vision"
}
]
}
]
},
"streamSettings": {
"network": "tcp",
"security": "tls",
"tlsSettings": {
"serverName": "example.com"
}
}
}
]
}
範例中的 encryption: "none" 是 VLESS 使用者欄位,不代表整條連線以明文傳輸;外層的 security: "tls" 才負責傳輸安全。flow 位於使用者物件內,security 則位於 streamSettings 內;欄位放錯位置可能導致錯誤,或無法依預期生效。
- 改用 REALITY:不能只將
tls改成reality。還要使用對應的realitySettings,並填入伺服器提供的參數。 - 金鑰欄位:分享連結通常以
pbk傳遞伺服器公鑰資料。不同版本的 Xray JSON 設定可能使用publicKey或password欄位名稱;應依實際核心版本的設定定義產生設定,不要只照抄舊截圖。 - 其他欄位對應:分享連結中的
sni、sid、fp通常分別對應介面中的 serverName、shortId 與指紋選項;匯入後仍應逐項確認。 - 舊設定遷移:舊版 XTLS 設定不能只靠全文取代欄位名稱來遷移至 Vision;傳輸方式、流控與伺服器支援情況都要一併確認。
四、如何選擇 v2rayNG、v2flyNG 與 v2rayN
如果現有訂閱明確包含 VLESS、Vision、REALITY 的組合,Android 裝置建議優先使用搭載 Xray 核心的 v2rayNG。如果現有設定以 V2Fly 架構為基礎,且不依賴這些 Xray 功能,則可使用 v2flyNG。VMess 設定目前運作正常時,無須只因名稱不同就遷移。
Xray 核心環境
建議選用針對本文介紹的 VLESS、Vision 與 REALITY 使用情境,Android 裝置建議選用 v2rayNG;桌面端則在 v2rayN 中確認對應節點實際呼叫的 Xray 核心。
適用情況:伺服器明確要求使用 Xray 擴充功能的節點。
V2Fly 核心環境
Android 裝置使用 v2flyNG,延續現有 V2Fly 設定的使用方式。基本協定能否連線,仍取決於傳輸方式與參數是否相符。
適用情況:已有可用的 V2Fly 設定,且不依賴 Vision 或 REALITY。
檢查方式:分別在桌面與 Android 裝置上驗證
桌面端:v2rayN
- 匯入後確認協定、傳輸方式、安全方式與 flow。
- 啟動連線,查看記錄中的核心名稱與版本。
- 確認系統代理指向目前的本機監聽連接埠。
Android 裝置:依核心選擇
- REALITY 或 Vision 節點請使用 v2rayNG。
- 在 v2flyNG 中確認 V2Fly 設定的匯入結果。
- 允許 VPN 連線後,再確認應用程式代理範圍。
同一份訂閱可供兩端使用,但兩端顯示相同的節點名稱,不代表解析出的欄位與支援能力完全一致。
五、切換核心後無法連線:從連接埠到交握逐層檢查
先分辨「核心未啟動」與「核心已啟動,但遠端連線失敗」。前者應檢查 JSON、欄位支援情況、檔案路徑與本機連接埠是否被占用;後者則應檢查伺服器位址、安全層參數、網路連線與系統時間。若將所有問題都歸因於核心速度,就會忽略真正能修正的設定錯誤。
上述本機位址與連接埠僅用來說明檢查方式,並非所有用戶端的預設值。請先查看目前用戶端顯示的 SOCKS 監聽連接埠;若實際連接埠不是 10808,請修改下方指令。遠端連接埠 443 與本機代理連接埠屬於兩段不同的連線,不可互換。
curl --proxy socks5h://127.0.0.1:10808 https://example.com/
- 檢查本機監聽:若立即顯示無法連線至本機代理,請先確認核心已成功啟動、連接埠設定一致,並關閉占用同一連接埠的舊執行個體。
- 檢查匯入結果:比對原始節點參數,確認 UUID、伺服器連接埠、flow、SNI 與 REALITY 參數。Base64 只是一種編碼方式,無法補上缺少的欄位。
- 檢查遠端交握:若出現 TLS 或驗證錯誤,請確認系統時間、網域與金鑰資料;不要把關閉驗證當成通用解決方法。
- 檢查代理涵蓋範圍:若指令可以連線,但瀏覽器無法連線,請再檢查系統代理、應用程式代理、路由規則與 DNS;此時不宜先更換伺服器協定。
測試核心差異時,應使用相同節點、網路與目標,並選擇相近時段;先關閉 Mux 等額外變因,再觀察記錄與連線結果。節點負載、網路路徑、伺服器限速與目標網站回應都可能影響速度;支援較多協定,不代表任何線路都能有更高的傳輸量。
六、核心選擇常見問題
訂閱上寫著 VLESS,為什麼在 v2flyNG 裡不能用?
先展開節點詳細資料,確認是否還包含 REALITY 或 xtls-rprx-vision。這些擴充功能不等同於基本 VLESS。若節點需要這些功能,請改用 v2rayNG 匯入原始連結,再確認各欄位是否完整。
v2rayN 已更換核心檔案,為什麼啟動時仍然出錯?
先查看啟動記錄,確認實際呼叫的檔案與版本確實已變更,再檢查產生的設定。舊版用戶端可能仍依舊欄位產生 JSON;單獨替換執行檔,不代表用戶端的設定產生器一定與新核心相容。
REALITY 可以連上連接埠,但開啟網頁一直逾時,該怎麼辦?
連接埠可連通,只能表示基本網路連線已建立。請接著檢查 SNI、shortId、金鑰資料、指紋與 flow,再查看遠端交握記錄。若直接代理測試成功、應用程式卻無法使用,請改查系統代理與分流規則。
原本的 VMess 節點運作正常,有必要遷移至 Xray 嗎?
沒有只因協定名稱就必須遷移的理由。請先保留可正常使用的設定;只有在伺服器提供新節點、現有用戶端不支援所需功能,或確認存在相容性問題時,才逐一測試節點並遷移。
最後可將選擇流程歸納為一連串檢查:先確認伺服器需求,再確認用戶端能產生哪些欄位,最後確認實際啟動的核心是否接受這些欄位。將這三個層面分開確認,通常比依用戶端名稱猜測相容性更可靠。