2026-06-14 · 故障排除 · 約 10 分鐘

V2Ray 連線出現 TLS 憑證錯誤?系統時間不同步與 SNI 設定排查清單

TLS 交握失敗與憑證錯誤,多半源於系統時間偏差、SNI 與憑證網域不符,或 allowInsecure 設定不當。本文依錯誤類型提供排查順序,並說明 TLS 各項設定的正確填法。

本文速覽

適合處理 v2rayN、v2rayNG 與 v2flyNG 中出現的 TLS 交握失敗、憑證過期、網域不符及連線被關閉問題。先校準系統時間,再核對節點位址、SNI 與傳輸層設定,最後搭配核心日誌判斷是本機設定、網路攔截,還是伺服器憑證異常。

先依 TLS 交握順序定位故障階段

TLS 位於傳輸連線之上。用戶端先解析伺服器位址並建立 TCP 連線,接著傳送包含通訊協定版本、加密套件與 SNI 的 ClientHello。伺服器回傳憑證後,Xray 或 V2Fly 核心會檢查憑證有效期限、簽發鏈與網域。任何一項檢查失敗,VMess 或 VLESS 的驗證資料都尚未進入正常交換階段,因此更換 UUID、alterId 或路由規則通常無法解決憑證錯誤。

解析位址建立連線傳送 SNI接收憑證驗證憑證通訊協定驗證

排查時先保存一份完整的核心日誌,不要只看介面上的「連線失敗」。v2rayN 可從主視窗底部的日誌區,或「說明」→「檢視日誌」檢查近期輸出;v2rayNG 可開啟左上角選單中的「日誌」查看核心錯誤。不同核心版本的用詞可能略有差異,但 x509、certificate、handshake、server name 等關鍵字已足以判斷故障方向。

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

原因與解法:本機時間超出憑證有效期間,或伺服器憑證確實已過期。先自動同步日期、時間與時區,再重新連線;若多台裝置同時發生錯誤,請聯絡設定提供者更新憑證。

錯誤:x509: certificate is valid for another domain, not current domain

原因與解法:SNI 指定的網域不在憑證的主體別名中。將 TLS 的 serverName 改為憑證涵蓋的網域,不要直接照填伺服器 IP。

錯誤:remote error: tls: handshake failure

原因與解法:伺服器拒絕交握,常見原因包括 SNI、連接埠、TLS 開關或傳輸方式不一致。逐項比對伺服器設定,確認沒有混用 WS、gRPC、TCP 等傳輸參數。

錯誤:tls: failed to verify certificate

原因與解法:憑證鏈、網域或有效期限驗證未通過。優先修正時間與 SNI,不要把關閉憑證驗證當成一般處理方式。

校準系統時間、時區與網路時間

憑證包含明確的生效時間與失效時間,驗證時會使用裝置目前的時鐘。系統時間即使只差幾分鐘,也可能讓剛簽發或剛續期的憑證落在「尚未生效」區間。休眠後時鐘漂移、雙系統寫入不同的時鐘標準、虛擬機器暫停後恢復,以及路由器阻擋時間同步,都可能觸發這類錯誤。

UTC±0
憑證時間基準
443
常見 TLS 連接埠
10808
v2rayN 常見本機代理連接埠
10809
舊設定常見 HTTP 連接埠

Windows 依序開啟「設定」→「時間與語言」→「日期與時間」,啟用自動設定時間與自動設定時區,再執行立即同步。macOS 可在「系統設定」→「一般」→「日期與時間」中啟用自動設定。Android 進入系統「設定」→「系統」→「日期與時間」,同時開啟網路提供的時間與時區。Linux 應確認系統時間、時區及時間同步服務都運作正常。

  1. 記錄原始錯誤

    中斷目前連線,清除日誌顯示後重新連線一次,保留包含 x509、TLS 與目標網域的完整錯誤行。

  2. 核對日期與時區

    檢查年份、月份、日期、時、分與時區。只調整時鐘而未修正時區,重新啟動後仍可能再次偏移。

  3. 執行時間同步

    啟用系統自動設定時間,並手動觸發一次同步。若同步失敗,先切換到能正常存取網路時間服務的連線。

  4. 重新啟動用戶端

    完全結束 v2rayN、v2rayNG 或 v2flyNG,再重新啟動核心,避免舊連線繼續沿用先前的交握狀態。

  5. 交叉驗證裝置

    在另一台時間準確的裝置上測試相同設定。若只有單台裝置失敗,優先繼續檢查該裝置的時間與憑證環境。

核對伺服器位址、SNI 與憑證網域

伺服器位址負責將連線送往目標主機,SNI 則在 TLS 交握階段告知伺服器應回傳哪一張憑證。兩者可以相同,也可以不同。例如伺服器位址可能是 IP,而 SNI 必須填寫憑證涵蓋的網域。若將 IP 同時填入 SNI,通常會出現網域不符錯誤,因為公開憑證一般只涵蓋網域。

檢查憑證網域時,要區分主網域與子網域。憑證涵蓋 example.net,不代表一定涵蓋 edge.example.net;通配符憑證涵蓋一級子網域時,也不會自動涵蓋更深層級。節點提供的 host、SNI、serverName 與偽裝網域可能各自負責不同用途,不應因文字相似就全部填成同一個值。

設定項目 用途 正確填寫原則 常見錯誤
位址 用於 DNS 解析並建立連線 填寫節點提供的網域或 IP 貼上協定前綴、路徑或多餘空格
連接埠 指定遠端服務的監聽位置 與伺服器實際監聽的連接埠一致 誤填成本機代理連接埠 10808
SNI 選擇 TLS 憑證與虛擬主機 填寫憑證涵蓋且伺服器要求的網域 填寫 IP 或無關網域
Host 用於 HTTP、WS 或其他傳輸層請求 依節點說明填寫,不要強行與 SNI 合併 將完整網址連同路徑一併填入
傳輸安全 決定是否啟用 TLS 或相應的安全層 與伺服器部署方式完全一致 伺服器已啟用 TLS,用戶端卻選擇 none

錯誤:x509: cannot validate certificate for an IP because it does not contain any IP SANs

原因與解法:用戶端以 IP 驗證憑證,但憑證未包含該 IP。保留 IP 作為連線位址,並在 SNI 或 serverName 中填寫憑證對應的網域。

錯誤:EOF 或 connection closed by peer

原因與解法:遠端在交握期間直接關閉連線。先確認連接埠與 TLS 開關,再檢查 SNI、傳輸方式,以及網路是否將連線送到錯誤的服務。

訂閱節點中的 TLS 欄位通常由訂閱內容產生。手動修改後再次更新訂閱,修改內容可能會被覆蓋。若同一群組內所有節點都出現相同錯誤,應先更新訂閱並確認內容是否已修正;若只有一個節點失敗,則較可能是該節點的憑證、網域或伺服器監聽設定異常。

正確理解 allowInsecure 的用途

allowInsecure 控制用戶端是否略過部分憑證驗證。正常連線至公開服務時應保持關閉,讓核心繼續檢查憑證鏈、有效期限與網域。啟用後即使連線暫時恢復,也只能表示問題位於憑證驗證環節,不能證明 SNI、憑證部署或系統時間已設定正確。

REALITY 設定也可能出現與 serverName 相關的問題,但其安全層參數不能直接套用一般 TLS 節點的設定。VLESS 只是代理協定,TLS、XTLS Vision 或 REALITY 屬於傳輸安全設定;排查時應先確認節點採用哪一種安全方式,再檢查對應欄位。不要將一般 TLS 的憑證處理方式機械套用到不同安全層。

維持嚴格驗證修正系統時間匹配 SNI核對憑證鏈重新交握

在 v2rayN、v2rayNG 與 v2flyNG 中逐項複查

桌面版與 Android 版的介面名稱有所不同,但需要核對的欄位相同:位址、連接埠、傳輸協定、傳輸安全、SNI、Host、路徑及核心日誌。先複製原始設定作為備份,每次只修改一項並重新測試,才能判斷究竟是哪個欄位造成變化。

  1. 檢查核心設定

    在 v2rayN 中開啟「設定」→「參數設定」→「Core 類型」,確認節點由預期的核心處理。一般 Xray 設定不要誤切換至不相容的核心。

  2. 編輯節點欄位

    雙擊 v2rayN 節點進入編輯介面,依序檢查位址、連接埠、傳輸協定、TLS、安全類型與 SNI。不要在位址欄中加入 https:// 前綴。

  3. 檢查 Android 設定

    在 v2rayNG 或 v2flyNG 的設定清單中點選目標設定並進入編輯,核對「偽裝網域」「SNI」或同義欄位,儲存後重新啟動連線。

  4. 更新訂閱內容

    開啟訂閱群組並執行更新,再比較失敗節點的欄位是否發生變化。訂閱更新失敗與節點 TLS 失敗屬於不同的連線流程,應分別查看日誌。

  5. 關閉舊連線

    停止用戶端代理,等待舊連線釋放後再啟動。桌面版也要確認系統代理指向目前的本機監聽連接埠,而不是已結束的舊執行個體。

  6. 比較其他節點

    測試同一訂閱中的另一個節點。若所有節點都失敗,請檢查本機環境;若只有單一節點失敗,則重點檢查該節點的憑證與伺服器設定。

路由分流通常不會改變遠端憑證內容,但可能決定連線從哪個出站發起。若規則將節點網域送往不可用的代理出站,可能表現為逾時或連線關閉。為排除分流影響,可暫時切換至直接且明確的測試規則;確認 TLS 恢復後,再還原原有路由設定並逐條檢查命中日誌。

常見問題與最終排查清單

完成時間、SNI 與憑證驗證檢查後仍然失敗的連線,應繼續從網路層與伺服器端排查。DNS 污染可能將網域解析到錯誤位址,透明代理可能改寫連線路徑,伺服器反向代理也可能未載入續期後的憑證。此時需要結合解析結果、連接埠與伺服器日誌判斷,不要繼續反覆修改 UUID。

手機可以連線,電腦卻一直提示憑證時間錯誤?

優先檢查電腦的年份、時區與自動時間同步。同步完成後完全結束 v2rayN,再啟動核心進行測試;不要只中斷節點後立即重新連線。

SNI 留空可以讓用戶端自動判斷嗎?

當連線位址就是憑證網域時,部分設定可以使用位址作為預設 serverName;若位址是 IP、前置網域或特殊部署入口,則應依節點說明明確填寫 SNI。

更新訂閱後所有節點同時交握失敗怎麼辦?

先確認系統時間,再查看訂閱是否變更了傳輸安全、SNI 或連接埠。若多台裝置在同一時間出現相同錯誤,通常需要設定提供者檢查憑證與伺服器部署。

啟用 allowInsecure 後可以使用,能一直開著嗎?

不建議。它只適合作為短時間的定位手段。應恢復嚴格驗證,並修正網域匹配、憑證鏈或時間問題。

TLS 錯誤與 VMess、VLESS 金鑰有關嗎?

憑證驗證發生在代理協定驗證之前。若日誌明確指向 x509、certificate 或 server name,請先處理 TLS;交握成功後再檢查 UUID、加密方式與流控參數。

排查順序應保持穩定:先讀取日誌,再同步時間,接著核對位址、連接埠、SNI 與傳輸安全,最後檢查憑證鏈及伺服器狀態。依此順序處理,可避免將憑證故障誤判為節點驗證、系統代理或路由規則問題,也能減少無效的批次修改。

下載用戶端 查看四大平台的安裝入口