V2Ray 節點逾時、無法連線:從本機到伺服器的排查順序

V2Ray 節點逾時或無法連線時,依序檢查系統時間、本機代理、傳輸設定與伺服器狀態,快速找出問題所在。

本文速覽

適用於 v2rayN 桌面版,以及 v2rayNG、v2flyNG Android 版的連線逾時排查。先確認測試失敗發生在哪個環節,再檢查時間、本機監聽與請求入口,接著核對伺服器位址、TLS 和傳輸參數,最後確認伺服器監聽與防火牆。每個步驟都保留日誌及重測結果,避免同時修改多項設定而失去判斷依據。

1. 分辨測試逾時與實際連線失敗

清單顯示「逾時」,不代表節點所有功能都無法使用。TCP 連線測試只確認能否建立 TCP 連線;透過代理請求測試網址,還會涉及協定驗證、TLS、網域名稱解析及目標網站回應。先記下使用哪種測試,不要把不同測試的結果視為同一項指標。

應用程式請求本機入口對外連線協定交握目標回應

開始前記下用戶端版本、使用的核心、作業系統、測試時間及一段失敗日誌。v2rayN 介面會隨版本更新;下文的桌面選單名稱以 Windows 傳統介面為例,其他介面請尋找名稱相同的設定項目,不必照抄位置。

2. 先檢查系統時間與基本網路

系統時間明顯錯誤會影響 TLS 憑證有效期限的判斷,也可能導致 VMess 的時間相關驗證失敗。VLESS 不能直接套用 VMess 的時間判斷方式,但若外層使用 TLS,系統時間仍須正確。只修改顯示的時區,無法修正實際時間錯誤。

  1. 同步系統時間

    Windows 開啟「設定」→「時間與語言」→「日期與時間」,啟用「自動設定時間」並選擇「立即同步」。Android 可在系統設定中搜尋「日期與時間」,開啟自動設定時間;不同系統的選單名稱可能略有差異。

  2. 確認網路連線狀態

    暫時中斷代理連線,確認目前網路是否需要登入網頁認證。若遇到公共網路的認證頁面,先完成登入再啟動用戶端;基本網路尚未連線時,不要反覆更新節點。

  3. 單次對照測試

    保持節點與設定不變,只切換一次網路後重新測試。若同一節點在另一個網路可用,優先檢查原網路的 DNS、出口政策或存取限制,不能因此直接判定伺服器故障。

Windows 也可以在終端機查詢時間同步狀態。以下指令只會查看狀態,不會修改節點設定;若顯示時間服務未執行,請回到系統時間設定,檢查服務與同步狀態。

w32tm /query /status

3. 檢查本機監聽與應用程式入口

伺服器尚未收到連線前,本機核心可能就已啟動失敗。v2rayN 傳統介面通常可從「設定」→「參數設定」檢查本機監聽設定,並在主畫面確認系統代理狀態。請以實際介面與啟動日誌為準:部分版本採用混合監聽,不要假設每個版本都各自提供 SOCKS 與 HTTP 連接埠。

127.0.0.1
本機迴路位址
10808
本文 SOCKS 測試範例連接埠
443
後文遠端 TCP 測試範例連接埠

以上兩個連接埠僅供指令範例使用,不代表任何用戶端版本的預設值。執行前先從自己的設定確認協定類型與連接埠。假設本機 SOCKS 監聽位址確實為 127.0.0.1:10808,可先在 Windows 查詢監聽狀態,再明確指定代理傳送請求:

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

第一個指令在 PowerShell 中執行;若找不到監聽項目,應先檢查核心啟動日誌與本機連接埠,而非排查遠端憑證。第二個指令中的 example.com 是範例目標,實際排查時可換成已確認可用的 HTTPS 網站。socks5h 表示將目標網域交由代理端解析;10 秒與 20 秒是這次指令明確設定的逾時上限,不是測速結果。

判斷:明確指定代理後可連線,先修復應用程式入口

若指令收到 HTTP 回應,但瀏覽器仍無法開啟相同目標,優先檢查系統代理、瀏覽器獨立代理與路由規則。HTTP 403 等狀態也表示已收到回應,不應與連線逾時混為一談。

4. 核對伺服器位址、DNS 與連接埠

這裡檢查的是「節點伺服器網域能否解析」,不是瀏覽器最後造訪的網站能否解析。兩者可能採用不同的解析路徑。伺服器位址拼錯、網域記錄過期,或只回傳目前網路無法連線的 IPv6 位址,都可能造成節點逾時。

檢查項目具體操作結果判讀
伺服器位址對照節點來源,檢查網域拼字、空格及連接埠位址欄通常不應包含完整網頁 URL 或傳輸路徑
網域解析使用 Resolve-DnsName 查詢節點網域,比較 A 與 AAAA 記錄系統解析成功,不代表核心使用的解析路徑也一定成功
遠端 TCP使用 Test-NetConnection 測試實際節點位址與連接埠僅適用於 TCP 連線檢查,無法證明協定交握或 UDP 可用
網路對照同一裝置、同一設定,切換網路後重新測試只變更網路這個變數,避免同時更改 DNS 與傳輸參數

PowerShell 可透過互動輸入,避免誤把範例網域當成實際節點。此處的 443 僅適用於遠端確實在該連接埠監聽的節點;若實際連接埠不同,請修改指令中的數值。

$server = Read-Host "輸入節點伺服器網域"
Resolve-DnsName $server
Test-NetConnection -ComputerName $server -Port 443

TcpTestSucceeded : True 只表示可以連上該位址的 TCP 連接埠。若節點使用 CDN,這可能只證明已連線至 CDN 邊緣節點,尚未驗證來源伺服器。Ping 失敗也不能單獨判定節點離線,因為網路設備可能不回應 ICMP。

5. TCP 可連線後,檢查 TLS 與傳輸參數

TCP 連線成功但代理請求仍失敗時,應轉而檢查協定驗證與交握參數。優先依據可信的原始節點資訊重新核對,不要憑經驗將所有節點改成相同的傳輸方式。v2rayNG 使用 Xray 核心,v2flyNG 使用 v2fly 核心;設定能否運作取決於特定協定、功能與核心版本,不能只憑成功匯入就判定相容。

錯誤:connection refused

原因:連線遭到主動拒絕,常見原因是目標連接埠沒有監聽,或防火牆主動拒絕連線。解法:先從日誌確認位址屬於本機還是遠端,再分別檢查本機核心或遠端監聽狀態,不能直接歸因於節點已到期。

錯誤:i/o timeout

原因:某次網路讀寫未能在期限內完成,可能發生於連線、交握或讀取回應的階段。解法:查看前後日誌,確認逾時對象,再進行連接埠測試及網路對照;只看這一行無法判定問題出在哪一端。

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

原因:目前時間不在憑證有效期限內,可能是本機時間錯誤,也可能是伺服器憑證已過期。解法:先同步系統時間;若仍失敗,請服務維護者檢查憑證有效期限與部署狀況。

錯誤:websocket: bad handshake

原因:WebSocket 升級未收到預期回應,常見原因是路徑、Host 或反向代理設定不相符。解法:對照節點欄位檢查入口,並請伺服器端確認請求是否進入正確的轉送位置。

以上是日誌中可能出現的錯誤片段,實際完整訊息會依核心與版本而異。暫時提高日誌詳細程度後,只重現一次故障並保存相關時段的記錄;完成後恢復原本的日誌層級,避免長期產生大量記錄。

6. 最後檢查伺服器監聽與轉送鏈

若沒有伺服器管理權限,只要將用戶端版本、故障時間、錯誤片段及不同網路的測試結果提供給維護者即可。排查時不要索取或傳送管理密碼。若有 Linux 伺服器管理權限,再依序檢查監聽、程序日誌、主機防火牆及雲端入站規則。

sudo ss -lntp
sudo ss -lnup

第一個指令查看 TCP 監聽,第二個查看 UDP 監聽。請核對設定實際使用的協定與連接埠,不必要求每個節點同時監聽 TCP 與 UDP。若前方有反向代理,對外連接埠可能由反向代理程序監聽,而核心只監聽本機內部連接埠;這種架構本身並無異常。

  1. 確認監聽位置:核對監聽位址是迴路位址還是對外位址,以及連接埠是否與用戶端一致;使用容器部署時,也要檢查連接埠對應與協定類型。
  2. 查看相關日誌:使用實際服務名稱查看服務狀態與近期日誌,確認是否因設定載入失敗而仍由舊程序執行。用戶端重新測試時,查看相同時間範圍內是否有連線或交握記錄。
  3. 確認兩層規則:分別檢查主機防火牆與雲端安全性群組,只開放實際需要的協定與連接埠,不要為了排查而直接關閉整套防火牆。
  4. 檢查轉送鏈後段:若入口收到請求,卻回傳 502、504 或交握失敗,請繼續檢查反向代理到核心的連線、路徑比對、憑證及上游目標的連線狀況。

判斷:入口已收到請求,接著檢查轉送鏈後段

若入口日誌在相同時間記錄到請求,接下來應追查驗證、反向代理與對外連線,而不是繼續隨機更換本機監聽連接埠。入口沒有日誌也不能單獨證明流量未抵達,還須確認日誌層級及記錄位置。

7. 使用相同條件重測並整理結果

每完成一項修改,就使用相同節點、目標及測試方式重新測試。單純延長逾時時間只會增加等待上限,無法修復錯誤的連接埠或 TLS 參數。若小型請求成功,但下載或特定網站失敗,再將問題範圍縮小至目標網站、路由、DNS 或路徑 MTU,不要立刻重新安裝用戶端。

排查完成的標準,是請求能沿相同路徑穩定收到回應,而不只是清單中的延遲數字恢復正常。若之後再次逾時,沿用這份記錄比重新嘗試所有設定更容易找出原因。

下載v2rayN