v2rayN 已連線卻無法上網:系統代理、路由、DNS 與時間檢查指南

依序檢查系統代理模式、本機連接埠、路由預設、DNS、系統時間與節點狀態,找出 v2rayN 顯示已連線卻無法上網的原因。

本文重點

適用於 v2rayN 已啟動核心、節點顯示延遲數值,網頁卻仍無法瀏覽的情況。先確認瀏覽器是否將要求送到本機連接埠,再檢查路由、網域解析、系統時間與遠端節點。透過明確指定代理的測試,以及相同目標的結果比對,可分辨入口與出口故障,避免一次修改多項設定而難以判斷原因。

一、先釐清「核心已啟動」不等於「網頁可瀏覽」

v2rayN 是用來管理設定並啟動代理核心的用戶端。介面顯示核心已啟動,通常只代表本機程序成功啟動;節點清單顯示延遲,也只表示當下的測試有結果。瀏覽器要求還必須經過本機入口、路由選擇、節點連線及目標網站回應,任何一個環節出錯,都可能讓網頁一直載入。

以下以 Windows 桌面環境為例。不同版本的設定分類可能有所調整,請先在「說明」→「關於」記下版本,再依設定名稱尋找。連接埠範例統一使用 127.0.0.1:10808,並非所有版本都固定使用此值;舊設定可能另有 HTTP 連接埠 10809,請以「設定」→「參數設定」中的本機監聽設定及啟動記錄為準。

介面顯示與實際可確認的範圍
觀察到的狀態可確認事項仍須檢查
核心啟動成功程序已啟動並讀取設定監聽連接埠、系統代理與出口連線
TCP 延遲有數值測試當下可連線至伺服器連接埠協定交握、驗證、TLS 與網站回應
真實連線測試成功指定的測試要求已完成瀏覽器入口、其他網站及分流規則
瀏覽器顯示代理錯誤瀏覽器嘗試使用代理但連線失敗實際代理位址、連接埠與程序狀態

排查時固定使用一個節點、一個測試網站和一種網路,並記錄修改前後的錯誤。先不要同時啟用 TUN、修改 DNS、切換核心及更新訂閱,否則即使問題排除,也難以判斷是哪個步驟生效。

二、系統代理:確認瀏覽器要求有送進用戶端

系統代理決定應用程式如何連到 v2rayN,路由則決定流量進入後如何轉送。選取節點不代表所有應用程式都會自動使用該節點;有些應用程式會遵循 Windows 系統代理,有些則須個別設定。為縮小問題範圍,可先暫停 TUN 模式,只測試一般系統代理路徑,測試後再還原原設定。

  1. 啟用系統代理

    在主介面底部或系統匣選單開啟「系統代理」→「自動設定系統代理」。先不要使用 PAC 模式,以免網站規則影響入口判斷。

  2. 確認系統代理入口

    前往 Windows「設定」→「網路和網際網路」→「Proxy」→「手動設定 Proxy」,查看用戶端寫入的位址與連接埠,確認是否與本機 HTTP 或混合監聽連接埠一致。

  3. 排除瀏覽器代理設定覆寫

    暫時停用會修改代理設定的瀏覽器擴充功能;若瀏覽器有獨立代理設定,請改為使用系統代理。關閉後重新開啟瀏覽器,再瀏覽原本的測試網站。

  4. 執行明確指定代理的測試

    在 PowerShell 中執行下方指令。此指令會明確指定 HTTP 代理,不受瀏覽器是否讀取系統設定影響;若本機連接埠僅提供 SOCKS,請改用後文的 SOCKS 測試。

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

example.com 是測試目標範例,也可替換成目前無法開啟的網站。--noproxy "" 用來排除本次呼叫受到代理略過清單影響;收到 HTTP 狀態碼,代表至少取得了 HTTP 回應,不表示網站所有資源都能正常載入。若代理本身傳回錯誤頁,還須搭配回應內容與核心記錄判斷。

判斷:明確指定代理後測試成功,先修正瀏覽器入口

使用相同節點與目標時,命令列透過代理能取得目標回應,但瀏覽器仍失敗,請優先檢查系統代理、瀏覽器獨立代理設定與擴充功能,不要先更換節點或重設 DNS。

三、本機連接埠:確認監聽程序與代理類型

本機連線遭拒,通常表示流量尚未抵達遠端。常見原因包括核心已退出、連接埠填錯,或連接埠遭其他程序占用。Windows 上可先檢查監聽狀態,再確認程序;不要只看到程序編號就直接結束工作。

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

# 將上一個指令輸出的 OwningProcess 編號代入查詢
Get-Process -Id 1234

1234 僅示範程序編號的填法,實際請使用上一個指令傳回的值。若沒有監聽記錄,請先查看 v2rayN 記錄,確認啟動失敗原因;若連接埠遭其他程式占用,優先正常關閉衝突程式,或在「設定」→「參數設定」中調整本機監聽連接埠,再重新套用系統代理。

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

原因:Windows 上相同的監聽位址與連接埠已遭占用,核心無法繫結。

解決方式:查詢占用中的程序,關閉重複執行的用戶端,或更換監聽連接埠並同步更新系統代理。

錯誤:ERR_PROXY_CONNECTION_FAILED

原因:瀏覽器無法連線至設定的代理,可能是連接埠沒有監聽,或代理位址已失效。

解決方式:確認 Windows 代理中的位址與連接埠,再以明確指定代理的指令測試;先處理本機入口,不必急著更換協定。

四、路由預設:確認要求是否走預期的出口

確認本機入口可用後,再檢查要求被分配到哪裡。路由規則通常依序比對,由第一條符合的規則決定出口;自訂規則可能讓特定網域直連,也可能將流量送往封鎖出口。切換「繞過」類預設後只有部分網站無法使用,尤其應檢查規則,而不是一概歸咎於節點。

不要只看到「全域」兩個字,就認定所有流量都已接管:通常只有進入核心的要求會受影響,未使用系統代理的應用程式仍可能直接連線。網域規則與 IP 規則的效果也會受核心的 domainStrategy 等設定影響;排查時先保留預設策略,避免為了解決單一網站問題而改變整套路由行為。

五、DNS:分辨本機、核心與節點位址的解析問題

DNS 故障不只包括「網站網域解析失敗」。如果節點伺服器使用網域名稱,建立連線前也必須先解析;瀏覽器安全 DNS、系統解析器與核心 DNS 設定則可能採用不同路徑。清除 Windows 快取只會影響相關的本機快取,無法同時清除瀏覽器與代理端的所有解析結果。

# 檢查系統解析路徑,不能取代核心 DNS 檢查
Resolve-DnsName example.com

# 透過 SOCKS 將目標網域交由代理端解析
curl.exe --noproxy "" --proxy socks5h://127.0.0.1:10808 --connect-timeout 10 --max-time 20 -I https://example.com/

# 比對:由本機解析目標網域,再透過 SOCKS 連線
curl.exe --noproxy "" --proxy socks5://127.0.0.1:10808 --connect-timeout 10 --max-time 20 -I https://example.com/

# 修改相關設定後,視需要清除 Windows DNS 快取
ipconfig /flushdns

以上兩個 SOCKS 指令要求連接埠支援 SOCKS。socks5h 會將目標網域交由代理端解析,socks5 則由本機先行解析;前者成功、後者失敗時,應優先檢查本機解析路徑。不過,兩個指令也可能因網域與 IP 符合不同路由而產生差異,因此還須參考記錄,不能只根據一次測試下結論。

錯誤:Could not resolve host

原因:curl 使用的解析路徑無法取得目標位址;僅憑這項錯誤,無法判定節點協定有問題。

解決方式:先執行系統解析查詢,再比對兩種 SOCKS 測試,找出問題出在本機或代理端的解析。

錯誤:no such host

原因:記錄中對應的網域解析失敗,可能是節點伺服器的網域,也可能是目標網站的網域。

解決方式:先查看錯誤附近的完整網域,再檢查節點位址是否拼寫正確,以及實際使用的 DNS 設定;不要直接將網域換成臨時查詢到的 IP。

若只有瀏覽器無法使用,可在瀏覽器設定中搜尋「安全 DNS」,記下原設定後暫時關閉,進行比對測試。若節點網域解析失敗,應先修復建立代理所需的基礎解析路徑,避免依賴尚未建立的代理連線來解析節點。

六、系統時間與節點:排除交握及伺服器故障

系統日期嚴重錯誤會影響 TLS 憑證有效期的判定,部分協定驗證也與時間有關。Windows 時間設定顯示的時區名稱並非唯一判斷依據,關鍵是系統實際時間是否準確。請先同步時間,再處理憑證錯誤;不要以略過憑證驗證取代修復。

  1. 同步系統時間

    前往 Windows「設定」→「時間與語言」→「日期與時間」,開啟「自動設定時間」,確認時區後按一下「立即同步」。若同步失敗,請先檢查基礎網路與時間服務。

  2. 確認節點欄位

    開啟目前節點的編輯視窗,依照服務提供者的設定核對伺服器位址、連接埠、使用者識別碼、傳輸類型、TLS 伺服器名稱,以及所用協定要求的參數。不要混用不同節點的欄位。

  3. 與其他節點比對

    保持系統代理、路由與 DNS 不變,只切換到同一訂閱中的另一個已知可用節點。若只有原節點失敗,再檢查服務提供者的到期時間、可用流量與線路狀態。

  4. 切換網路

    若仍無法判斷,可改用手機熱點,重新測試相同節點與目標。若不同網路的結果明顯不同,請檢查目前網路的存取限制、入口網站驗證或連線品質。

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

原因:本機時間不準確,或對端提供的憑證確實不在有效期限內。

解決方式:同步系統時間後重試;若錯誤仍出現,請確認節點 TLS 名稱,並請服務提供者檢查憑證部署。

錯誤:i/o timeout

原因:某個網路操作未能在時限內完成,可能發生於連線、交握或讀取回應階段。

解決方式:依據錯誤前後的目標位址判斷發生階段,再比對更換節點與網路的結果;不要將逾時直接視為 DNS 解析失敗。

若使用 VLESS 與 REALITY,所選用戶端核心必須支援相應設定,並正確填入服務提供者提供的公鑰、伺服器名稱與短識別碼等欄位。不要因為同屬 V2Ray 生態系,就假設不同核心的支援完全相同。TCP 連接埠可連線,也不代表交握參數正確。

判斷:只更換節點就恢復,保留本機設定

相同入口與目標下,更換節點後能穩定取得回應時,請先保留現有本機設定,集中檢查原節點參數、服務狀態與線路,不要同時修改連接埠與 DNS。

七、常見問題與還原檢查

節點顯示 80ms 延遲,為什麼網頁還是無法開啟?

80ms 只是延遲數值的範例,不能證明網頁一定能正常使用。先確認使用的是 TCP 延遲測試還是真實連線測試,再透過明確指定代理的方式瀏覽目前無法開啟的網站,同時查看核心記錄是否收到要求。

退出 v2rayN 後,一般網頁也無法開啟?

可能是系統仍保留指向本機連接埠的代理設定。重新執行用戶端,在「系統代理」中選擇「清除系統代理」;也可前往 Windows「網路和網際網路」→「Proxy」,關閉殘留的手動代理,再確認能否直接連線。

只有一個網站無法開啟,需要重新安裝用戶端嗎?

先用相同節點瀏覽另一個 HTTPS 網站,再檢查該網域符合的路由規則、解析結果與回應狀態。若收到 403 或 429,表示已有 HTTP 回應,應進一步檢查網站存取政策或流量限制,不必先重新安裝。

啟用 TUN 後就恢復,還需要修正系統代理嗎?

兩種入口的連線路徑不同,TUN 可用不代表系統代理設定正確。若日常使用系統代理,請暫停 TUN 後重新測試連接埠與明確指定代理;若決定使用 TUN,也應避免同時啟用其他流量接管程式。

排查完成後,請還原暫時修改的路由、瀏覽器 DNS 與記錄層級,並移除不再需要的測試設定。若問題仍未解決,請整理用戶端與核心版本、故障時間、代理入口連接埠、測試目標及已去識別化的錯誤片段。分享截圖前,請遮住訂閱網址、節點憑證與個人網路資訊;這些資料比一句「顯示已連線」更有助於找出問題。

v2rayN 下載