V2Ray 顯示已連線卻無法上網:節點、DNS 與路由規則疑難排解

v2rayN 顯示連線成功但網頁打不開?依序檢查節點、系統時間、DNS、路由規則與本機連接埠。

本文重點

「已連線」通常只表示核心已啟動或代理介面已建立,不代表目標網站已可連線。本文以 Windows 上的 v2rayN 為主要操作環境,先確認節點與系統時間,再分別檢查 DNS、路由及本機監聽問題;Android 使用者也可依照相同順序排查。每次只變更一個項目,並以同一個網址重新測試,避免把暫時恢復誤判為設定正確。

一、先分清核心啟動與網頁請求成功

先保留目前設定,記下選用的節點、代理模式、測試網址與失敗時間。開啟用戶端記錄檔,再重新整理一次網頁。查看記錄檔是否出現新的連線,比狀態列顯示「執行中」更能判斷請求進行到哪個階段。此時不要同時更新訂閱、更換 DNS 和啟用 TUN,否則即使恢復正常,也難以找出原因。

v2rayN 是用來設定與管理的用戶端,實際連線由選用的核心處理;V2Ray 與 Xray 並非狀態按鈕的名稱。Android 上的 v2rayNG 使用 Xray 核心,v2flyNG 則使用 v2fly 核心。即使 VPN 介面已建立,仍可能在節點驗證、DNS 解析或對外連線階段失敗。

畫面顯示代表的狀況下一步
核心執行中程序已啟動,不代表請求成功重新整理網頁並查看新增記錄
節點顯示延遲數值某項探測收到回應繼續測試實際 HTTPS 請求
瀏覽器顯示代理連線失敗可能無法連上本機代理入口確認監聽位址與連接埠
只有部分網站無法開啟可能與網域規則、DNS 解析或目標網站有關查看失敗網域對應的對外連線記錄

二、檢查節點:連接埠可連線不代表驗證成功

先關閉代理,開啟一個目前網路原本就能瀏覽的網站,確認本機網路正常。接著啟用代理,以同一個 HTTPS 網址測試目前節點及另一個已知可用的節點。只有換用第二個節點後恢復,才優先懷疑第一個節點的設定或伺服器,而不是重新安裝用戶端。

  1. 確認目前使用的節點

    在 v2rayN 主畫面確認實際啟用的伺服器。只選取某一列不一定代表已設為作用中的伺服器;依目前版本的操作方式設為作用中的伺服器後,再查看記錄檔。

  2. 核對連線設定欄位

    開啟伺服器編輯視窗,依訂閱來源核對位址、連接埠、驗證資訊、傳輸方式與 TLS 設定。使用 WebSocket 時,也要核對路徑與 Host;不要把 Host 和 TLS 的 serverName 當成同一個欄位任意替換。

  3. 與另一個節點比較

    保持路由、DNS 與代理模式不變,只切換節點後重試。若所有節點都失敗,接著檢查系統時間與本機代理接管;若只有單一節點失敗,請更新對應訂閱或聯絡服務提供者。

  4. 確認核心支援該設定

    載入設定時若出現錯誤,請確認目前使用的核心是否支援該協定與傳輸方式的組合。VMess 與 VLESS 名稱相近,但驗證方式與設定欄位不可互換;也不要手動將節點參數改成另一種協定。

延遲測試可能只檢查 TCP 連線,部分測試則會發出 HTTP 請求,實際意義取決於所選的測試功能。即使節點連接埠可連線,TLS 交握、使用者驗證或伺服器對外連線仍可能失敗。訂閱更新成功也只表示已取得設定,不能證明設定中的每個節點都可用。

三、校正系統時間,再檢查 TLS 與驗證記錄

先校正電腦的實際時間,再處理憑證或驗證錯誤。Windows 11 可前往「設定」→「時間與語言」→「日期與時間」,開啟「自動設定時間」,再按一下「立即同步」。確認日期、年份與時區;只變更顯示時區,不一定能修正系統時鐘的誤差。同步後重新啟動核心,再發出一次請求。

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

原因與處理方式:本機時間錯誤,或伺服器憑證有效期限異常——先同步系統時間;若問題仍然發生,請核對記錄檔中的憑證時間並聯絡服務提供者處理,不要以略過憑證驗證取代修復。

錯誤:tls: handshake failure

原因與處理方式:TLS 交握遭對端拒絕,可能與 serverName、協定參數或伺服器設定有關——還原訂閱提供的原始參數,並搭配伺服器記錄檔進一步排查;不能只憑這一行就判定是 DNS 問題。

四、分別檢查系統 DNS 與代理核心 DNS

先判斷解析失敗的是哪個網域:節點伺服器的網域,還是要瀏覽的網站網域。前者無法解析會導致通道無法建立;後者則可能只影響部分請求。Windows 的 nslookup 可用來檢查系統端的解析,但結果不代表核心設定的遠端 DNS 或瀏覽器的加密 DNS 也正常。

nslookup example.com

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

以上是診斷範例,不是速度測試結果。先確認 10808 是目前實際監聽的 SOCKS 或混合連接埠,再執行第二個指令;網址請替換成實際無法瀏覽的網站,測試結果才有參考價值。socks5h 會將網域交由代理端解析,socks5 通常則由 curl 在本機解析;兩者結果不同,表示需要進一步檢查解析路徑,但仍須搭配記錄檔判斷。

錯誤:no such host

原因與處理方式:目前的解析路徑無法取得該主機的有效解析結果——先確認錯誤所指的網域,再檢查拼寫、DNS 回應與解析設定;這不代表所有網路連線都已中斷。

五、檢查路由:請求是否送往錯誤的出口

先暫時切換為全域代理路由進行比較,再還原原本的分流設定。此處的「全域」指路由策略,不代表已啟用系統代理或 TUN:應用程式必須先將請求交給核心,核心中的路由規則才會生效。未由系統代理接管的應用程式,不會因切換核心路由而自動改走代理。

在 v2rayN 中記下目前的路由方案,再切換至目前版本提供的全域代理方案,測試同一個網址。若全域代理正常、分流失敗,請優先查看網域規則、IP 規則與預設出口。不同版本與核心的介面名稱可能不同,請以實際出口記錄為準,不要只看方案名稱。

測試結果優先檢查項目處理方式
全域代理正常,分流失敗規則順序、網域比對、預設出口確認失敗請求實際使用的出口,縮小自訂規則的適用範圍
分流時目標網站走直連直連網域或 IP 規則範圍過大修正對應規則,再測試相關子網域
目標網站遭到阻擋阻擋規則或規則集比對錯誤只調整誤判的項目,保留其他有效規則
兩種路由方式都失敗節點、DNS、本機監聽與應用程式接管回頭查看失敗記錄,不要繼續增加路由例外

結論:先透過切換路由確認問題,再修改分流設定

若全域代理與分流都無法完成同一個 HTTPS 請求,先停止新增網域規則;改用明確指定代理的請求,驗證本機入口與節點,縮小問題範圍後再還原分流設定。

六、確認本機連接埠與系統代理入口

最後確認本機連接埠確實正在監聽,以及瀏覽器是否指向該連接埠。v2rayN 的連接埠可自行修改,舊設定與不同版本也可能不一樣;以下數值僅供排查參考,務必替換成用戶端目前顯示的實際值。不要將節點伺服器的連接埠填入 Windows 本機代理設定。

10808
本機 SOCKS 或混合連接埠範例
127.0.0.1
本機迴圈位址,不是節點位址
443
HTTPS 常用目標連接埠

在 Windows PowerShell 中執行以下兩個指令。第一個指令可查看監聽中的連接埠與所屬程序編號;第二個指令則檢查 HTTPS 請求能否透過該代理入口送出。若只監聽 SOCKS,請勿將其當成一般 HTTP 代理填入系統設定;混合連接埠是否同時支援兩種協定,請以目前的核心設定為準。

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

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

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

原因與處理方式:監聽位址與連接埠已被占用——依程序編號確認所屬程式,關閉重複執行的用戶端,或更換本機連接埠並同步更新應用程式代理設定;不要直接結束不熟悉的系統程序。

錯誤:Failed to connect to 127.0.0.1 port 10808

原因與處理方式:請求無法連上指定的本機入口——確認核心是否已啟動、實際連接埠是否一致,以及監聽位址是否包含迴圈位址,再排查遠端節點問題。

若明確指定代理的指令執行成功,但瀏覽器仍無法連線,請前往 Windows 11「設定」→「網路和網際網路」→「Proxy」,核對目前設定的本機 HTTP 或混合入口。使用 v2rayN 系統匣選單中的「系統代理」→「自動設定系統代理」後,請返回系統設定確認結果;實際選單名稱依安裝版本而異。瀏覽器代理擴充功能可能會覆寫系統設定,測試時請暫時停用相關擴充功能。

七、常見問題與恢復後檢查

延遲測試有數值,為什麼網頁還是打不開?

延遲探測與完整網頁請求並非同一個流程。保持使用同一個節點,以包含 --proxy 的 curl 指令請求實際無法瀏覽的網址,並查看相應時間的核心記錄。取得 HTTP 狀態碼代表已收到 HTTP 回應,但仍須依目標網站規則判斷 403、405 等狀態碼。

手機使用同一份訂閱可以連線,電腦卻不行,需要重裝嗎?

先確認兩台裝置選用的是同一個節點,再讓電腦與手機連上同一個網路進行比較。訂閱相同不代表作用中的節點、核心功能與 DNS 設定也相同。電腦端請優先檢查本機監聽與明確指定代理的請求,保留記錄檔後再考慮重建設定。

Android 顯示 VPN 已連線,但所有應用程式都無法開啟網頁?

在 v2rayNG 或 v2flyNG 中確認目前使用的節點,再檢查分應用程式代理是否排除了瀏覽器。暫時關閉分應用程式篩選進行比較,並查看核心錯誤記錄。VPN 圖示只代表介面已建立,不能證明遠端驗證與 DNS 請求成功。

關閉用戶端後,一般網頁也打不開了,該怎麼辦?

先重新開啟 v2rayN,透過系統匣中的「系統代理」選單清除系統代理,再結束程式。也可前往 Windows「設定」→「網路和網際網路」→「Proxy」,關閉排查期間設定的手動代理或設定指令碼;由單位管理的設定請勿自行修改。若曾使用 TUN,也要確認用戶端已正常停止接管。

恢復連線後,請逐項將暫時使用的全域代理、除錯記錄與測試用 DNS 還原為預定設定;每還原一項就測試一次。簡單記下「故障現象—變更項目—重測結果」,比留下多條來源不明的例外規則更有幫助。

下載v2rayN