· 故障排查 · 約 10 分鐘

V2Ray 節點連線逾時:從本機連接埠到伺服器的逐步排查指南

依序檢查本機連接埠占用、系統代理、訂閱效期、系統時間與傳輸設定,找出 V2Ray 節點連線逾時原因,並提供 v2rayN、v2rayNG 的處理方法。

本文重點

適用於已匯入訂閱,卻看到節點逾時,或客戶端顯示已連線但網頁無法開啟的情況。先確認核心與本機監聽狀態,再確認流量是否進入代理,接著檢查訂閱、系統時間、傳輸參數與伺服器。每次只修改一項,並以相同目標重新測試,避免把本機問題誤判為節點失效。

一、先分清連接埠可連通與代理可用

「逾時」只表示某個步驟未能在指定時間內完成,不能據此判定伺服器已停止運作。瀏覽器的連線通常會經過應用程式代理設定、本機入口連接埠、路由規則、遠端連線、協定交握及目標網站。任何一層出錯,都可能讓頁面一直載入。

TCPing 主要用來檢查 TCP 連接埠能否建立連線;實際連線測試還會經過代理協定和測試網址。前者成功不代表 VMess 或 VLESS 驗證正確;後者失敗也可能只是測試網址無法連線。先記錄問題發生在哪一層,再決定是否更換節點。

10808
本機代理連接埠範例,請以設定頁面為準
443
常見的 TLS 遠端連接埠,並非所有節點都使用
1 項
每輪只變更一項排查條件

二、本機連接埠:確認核心確實正在監聽

能開啟 v2rayN 視窗,不代表核心已正常執行。先到「設定」→「參數設定」查看本機監聽連接埠,再回到主畫面檢查記錄。不同版本的頁面名稱可能略有差異,請以目前介面顯示的 SOCKS、HTTP 或混合監聽類型為準,不要直接照抄其他教學中的連接埠。

以下以 Windows 本機連接埠 10808 為例。在 PowerShell 執行查詢,只有出現相應的監聽記錄,才表示有程式占用該連接埠;還要確認該程式是否為目前執行的核心。

Get-NetTCPConnection -LocalPort 10808 -State Listen |
  Select-Object LocalAddress, LocalPort, OwningProcess

netstat -ano | findstr :10808

如果第一個命令傳回處理程序編號,可使用 Get-Process -Id 進程編號 查看所屬程式。第二個命令也可能顯示連線記錄,請留意 LISTENING 那一行。不要只憑連接埠號碼就結束不明程式;先確認是否重複開啟客戶端,或有上次留下的核心程序。

錯誤:bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.

原因:Windows 上的監聽連接埠已被其他程序占用。解決方法:確認程序所屬後關閉重複執行的程式,或變更客戶端本機連接埠,並同步修改手動代理設定。

錯誤:bind: address already in use

原因:目前的位址與連接埠已有程序在監聽,常見原因是核心重複啟動。解決方法:先停止代理,再關閉重複執行的程序,重新啟動後確認新記錄是否仍出現相同錯誤。

在 Android 上使用 v2rayNG 時,先點選停止,再重新啟動連線,並查看「選單」→「記錄」。若系統跳出 VPN 連線許可提示,必須確認後才能建立流量接管通道。不要同時啟動另一個使用系統 VPN 通道的應用程式,以免彼此取代連線;「通知列有圖示」仍不代表遠端節點可用。

三、代理接管:確認瀏覽器流量是否進入本機入口

確認本機監聽正常後,再檢查系統代理。v2rayN 可在系統匣圖示上按右鍵,進入「系統代理」→「自動設定系統代理」。Windows 也可開啟「設定」→「網路和網際網路」→「Proxy」,確認手動代理的位址和連接埠是否與目前客戶端一致。macOS 則到「系統設定」→「網路」→目前的網路服務→「詳細資訊」→「代理」檢查。

  1. 確認已選取節點

    在 v2rayN 主畫面將要測試的伺服器設為目前使用的伺服器;在 v2rayNG 點選目標設定後重新連線。不要把測速清單中某一列的結果,誤認為目前連線的測試結果。

  2. 確認代理模式

    先用系統代理測試瀏覽器,再考慮使用 TUN。若已啟用 TUN,請先停用以減少變因;使用 v2rayNG 的 VPN 模式時,也要檢查目標應用程式是否列在略過清單中。

  3. 送出單次請求

    清除記錄顯示後,開啟一個固定的 HTTPS 網頁,確認記錄中是否出現相應網域的請求。暫時調高記錄層級有助於排查,完成後請恢復一般層級。

  4. 比對路由出口

    如果請求已進入核心,卻採用直連,請檢查目前的路由。可暫時切換為全域代理模式,重新測試相同網頁;確認後恢復原本的分流規則,不要同時更換節點。

也可以用命令列略過系統代理設定,直接測試本機入口。以下僅適用於 10808 確實提供 SOCKS 服務的情況;若該連接埠僅提供 HTTP,請改用相應的 HTTP 代理參數。Windows 請使用 curl.exe,避免部分 PowerShell 環境中的命令別名影響結果。

curl.exe --proxy socks5h://127.0.0.1:10808 --connect-timeout 10 --max-time 20 -I https://example.com/

結論:明確指定代理後可連線,優先檢查接管設定

如果這個命令能取得 HTTP 回應標頭,但同一網站在瀏覽器中無法開啟,請優先檢查瀏覽器本身的代理、擴充功能設定及系統代理。此時先不要修改 UUID、TLS 或伺服器連接埠。

四、訂閱效期:更新成功不代表節點有效

訂閱網址用來分發設定,不是代理伺服器本身。訂閱請求成功,只能表示已取得可解析的內容;流量額度、有效期限、節點遷移及伺服器故障仍會影響連線。反過來說,訂閱更新失敗時,既有節點也可能繼續運作,兩者應分開測試。

五、系統時間與傳輸設定:依記錄逐項核對

系統時間明顯錯誤會影響憑證效期判斷,也可能影響 VMess 的時間驗證。Windows 可在「設定」→「時間與語言」→「日期與時間」開啟自動設定,再執行同步;Android 可在系統設定中搜尋「日期與時間」,並開啟自動設定時間。時區顯示不同不一定代表時鐘錯誤,請確認實際日期和時間是否正確。

接著核對服務提供者提供的完整設定。V2Ray 是協定與代理核心生態中的名稱,v2rayN 則是客戶端,不代表任意核心與傳輸方式都能支援所有節點。v2rayNG 使用 Xray 核心;若在 v2flyNG 中也遇到相同問題,還要依其 v2fly 核心支援的功能核對設定,不能只比對節點名稱。

核對欄位常見不符情況處理方式
位址與遠端連接埠舊網域、遷移前使用的連接埠,或誤將本機連接埠填入遠端欄位使用最新訂閱重新匯入,並比對服務提供者的說明
VMess / VLESS 身分資料UUID 已過期、複製不完整,或選錯協定重新匯入完整設定,不要挪用其他節點的身分欄位
TLS 與 SNI伺服器名稱不符、憑證過期或系統時間錯誤核對 serverName 與憑證網域,並保留憑證驗證
WebSocketpath 或 Host 與伺服器端設定不一致逐字核對路徑、大小寫及 Host,不要自行補上斜線
gRPCserviceName 或傳輸類型錯誤依原始設定還原服務名稱與 TLS 設定
VLESS + REALITY公鑰、shortId、serverName 或 flow 不符核對整組參數及核心支援情況,不要套用一般 TLS 設定

錯誤:x509: certificate has expired or is not yet valid

原因:客戶端時間異常,或伺服器憑證尚未生效/已過期。解決方法:先同步系統時間;若時間正確,請向服務提供者回報憑證問題,不要以關閉驗證作為修復方式。

錯誤:websocket: bad handshake

原因:WebSocket 升級請求未收到預期回應,可能是路徑、Host、反向代理或伺服器設定不符。解決方法:先逐項比對最新訂閱,再請伺服器維護人員檢查轉送設定。

錯誤:i/o timeout

原因:某次網路讀寫逾時,單看這一行無法判定問題出在伺服器、DNS 還是目標網站。解決方法:搭配前後記錄確認目標位址及失敗階段,再改用另一個網路搭配同一節點交叉測試。

六、網路與伺服器:透過交叉測試縮小範圍

完成本機檢查後,再將重點轉向遠端。Windows 可使用以下命令檢查遠端 TCP 連線:將 example.com 換成節點伺服器網域,並將 443 換成設定中的實際遠端連接埠。這只是連線測試範例,不是可用節點。

Resolve-DnsName example.com
Test-NetConnection -ComputerName example.com -Port 443

DNS 能解析,不代表解析結果一定正確;TCP 測試成功也不代表代理驗證已通過。如果記錄明確顯示網域解析失敗,可檢查系統 DNS、客戶端 DNS 及實際使用的解析路徑;不要看到逾時就同時變更 DNS、路由和傳輸協定。

結論:跨裝置、跨網路皆失敗,再交由伺服器端排查

如果最新設定在兩台裝置、兩個獨立網路上都無法使用,而其他節點正常,請提交已遮蔽敏感資訊的記錄,請維護人員檢查監聽連接埠、防火牆、憑證、反向代理及對外網路。反覆重新安裝客戶端,通常無法修復這一層的問題。

七、常見問題與回報清單

TCPing 有結果,為什麼實際連線還是逾時?

TCPing 只能證明連接埠可建立連線。先查看實際連線測試時的核心記錄,再核對協定身分、TLS、傳輸參數及測試網址。使用瀏覽器或明確指定代理的命令連線至另一個固定目標,以分辨是測試目標故障還是節點故障。

v2rayNG 顯示已連線,但所有應用程式都無法上網?

先確認選取的設定,並查看記錄中是否有對外連線錯誤;接著檢查應用程式分流是否排除了目標應用程式。暫時停止其他 VPN 通道應用程式,重新連線,再分別使用 Wi-Fi 和行動數據測試。

必須直接啟用 TUN 才能解決逾時嗎?

不必。TUN 用來接管更多應用程式的流量,無法修復錯誤的 UUID、遠端連接埠或伺服器憑證。先確認本機代理入口及節點可用,再處理不遵循系統代理設定的應用程式。

重新啟動後短暫恢復,過一會兒又斷線怎麼辦?

記錄斷線時間,確認是否與休眠、網路切換、省電限制或重複的核心程序有關。Android 可在「設定」→「應用程式」→「v2rayNG」中檢查電池與背景執行權限,並依裝置系統顯示的選項操作。

向服務提供者回報時,請保留故障時間與時區、客戶端和核心版本、作業系統、網路類型、測試目標,以及故障前後的少量記錄。請勿提交完整訂閱連結、UUID 或含有存取 token 的截圖;伺服器位址和個人 IP 也應依公開範圍遮蔽。

下載客戶端依平台選擇安裝檔