v2rayN 顯示已連線卻無法上網:系統代理、路由與 DNS 排查指南

依序檢查系統代理、本機連接埠、路由規則、DNS 設定與節點狀態,逐項排除無法上網的原因。

本文快速導覽

適合 v2rayN 已啟動、已選取節點,卻仍無法開啟網頁的桌面使用者。先確認瀏覽器請求是否進入本機核心,再檢查路由分流、網域解析與遠端連線。每次只調整一項設定,並用同一網址重新測試;透過連接埠檢查、命令列請求與日誌比對,判斷是系統代理未生效、核心未啟動,還是節點無法使用,不必反覆重新安裝用戶端。

一、確認系統代理,不要只看連線狀態

先確認「系統代理」是否設為「自動設定系統代理」。用戶端正在執行、畫面顯示節點名稱,甚至延遲測試有結果,都不代表瀏覽器已使用代理。v2rayN 是設定與管理介面;實際接收本機請求並連線到遠端伺服器的是核心。排查時要同時確認應用程式的連線入口與核心狀態。

以下選單名稱以常見的繁體中文介面為準。不同桌面版本的選項位置可能不同;若在底部選單找不到,請在工作列通知區域的 v2rayN 圖示上按右鍵,尋找相同名稱的選項。先記下原有設定,暫時關閉 TUN 模式,只檢查系統代理這條路徑,避免兩種流量接管方式互相干擾。

  1. 測試直接連線

    在 v2rayN 的「系統代理」選擇「清除系統代理」,再開啟平時可直接瀏覽的網站。若此時仍無法連線,請先檢查電腦網路、Wi-Fi 認證或上游網路。

  2. 設定使用中的節點

    在主畫面選取目標節點,按右鍵選擇「設為活動伺服器」。等待核心啟動;若底部日誌馬上出現啟動失敗訊息,請先依下一節檢查連接埠。

  3. 啟用系統代理

    點選「系統代理」→「自動設定系統代理」。在 Windows「設定」→「網路和網際網路」→「代理伺服器」中,確認代理位址指向本機,且連接埠與用戶端的入站設定一致。

  4. 排除其他代理設定

    檢查瀏覽器擴充功能與瀏覽器本身的代理設定。若有另外指定代理,先停用該設定,再完全關閉並重新開啟瀏覽器,以相同網址重新測試。

二、檢查本機連接埠與核心是否正在監聽

系統代理設定的連接埠必須與核心實際監聽的連接埠一致。在 v2rayN 開啟「設定」→「參數設定」,找到本機入站的監聽位址、連接埠與協定類型。不同版本可能將相關設定放在「Core:基礎設定」或入站設定分頁。請勿將遠端節點的伺服器連接埠填入系統代理。

127.0.0.1
本機迴路位址,不是遠端節點位址
10808
以下命令中的本機連接埠僅為範例,請以實際設定為準
443
HTTPS 常用的目標連接埠,不是固定的入站連接埠

以下命令適用於 Windows PowerShell。假設用戶端的 HTTP 或混合入站連接埠為 10808;若實際設定不同,請先替換命令中的數字。若只有 SOCKS 入站,請勿直接使用這裡的 HTTP 代理測試。

Test-NetConnection 127.0.0.1 -Port 10808
netstat -ano | findstr ":10808"
curl.exe -I --connect-timeout 10 --max-time 20 -x http://127.0.0.1:10808 https://www.example.com/

判斷方式:命令可連線,優先檢查應用程式入口

若明確指定本機代理的請求成功,但瀏覽器開啟相同網址仍失敗,請先確認瀏覽器代理、系統代理與擴充功能設定。此時反覆更換訂閱或 DNS,通常無法解決連線入口設定不一致的問題。

三、檢查路由分流是否選錯出口

確認本機連接埠正常後,再檢查「路由」。路由分流是指核心依照規則,將請求送往代理、直連或阻擋出口。瀏覽器請求進入核心,不代表一定會經過所選節點;自訂規則也可能讓特定網域改走直連或遭到阻擋。

  1. 記下目前的路由設定名稱。若介面提供「全域」或「全域代理」預設設定,可暫時切換後,以相同的故障網址重新測試。這裡調整的是路由,不是切換成 TUN 模式。
  2. 若全域代理可以正常連線、原模式卻不行,請切回原設定,檢查目標網域是否符合自訂直連、阻擋或範圍過大的網域後綴規則。
  3. 若日誌支援顯示路由資訊,請依請求時間找到目標網域,確認實際使用的出站標籤。若日誌沒有相關欄位,請勿只憑清單上的節點名稱判斷流量出口。
  4. 修正規則後切回原模式,再測試一個預期直連的網站與一個預期走代理的網站,確認沒有把局部故障變成新的分流錯誤。

四、釐清系統 DNS、核心 DNS 與節點網域解析

DNS 會將網域名稱轉換為 IP 位址。至少要區分兩種名稱:遠端節點伺服器的網域,以及要開啟的網站網域。前者解析失敗時,核心可能無法建立節點連線;後者失敗則可能只影響特定網站。系統 DNS 與核心 DNS 使用的設定也不一定相同。

在 Windows 可先執行以下兩個命令,查看系統解析結果並清除系統快取。第二個命令只會清除本機的系統 DNS 快取,不會重設核心設定,也不會自動清除瀏覽器自己的解析快取。

Resolve-DnsName www.example.com
ipconfig /flushdns

若已確認有 SOCKS 入站,也可以使用以下方式讓 SOCKS 代理接收目標網域,並由代理連線處理解析。命令中的 10808 仍須與實際的 SOCKS 或混合入站連接埠一致。可將結果與系統直接解析的結果互相比對,但無法單憑這項測試判定所有解析程序的位置。

curl.exe -I --connect-timeout 10 --max-time 20 --socks5-hostname 127.0.0.1:10808 https://www.example.com/

五、依照日誌原文判斷節點與交握故障

確認連線入口、連接埠、路由與 DNS 後,再驗證節點。先查看用戶端底部的日誌或「日誌」頁面,記下請求發生的時間,再重現一次故障。以下是可能出現的錯誤片段;具體內容會因核心與系統而異,請勿只看最後一個單字就下結論。

錯誤:bind: address already in use

原因與解法:核心要監聽的本機位址或連接埠已被占用。使用連接埠查詢確認是哪個程序,關閉重複執行的用戶端,或變更本機入站連接埠,然後重新套用系統代理。

錯誤:connection refused

原因與解法:目標端點拒絕連線。先確認錯誤指向本機還是遠端:本機位址應檢查監聽狀態;遠端位址則應確認節點連接埠與服務狀態,不能一概當成 DNS 問題。

錯誤:lookup …: no such host

原因與解法:某個網域未能取得可用的解析結果。省略部分是實際查詢的網域;先確認它是節點網域還是網站網域,再檢查拼字、DNS 設定與解析器是否可連線。

錯誤:i/o timeout

原因與解法:網路連線的某個階段逾時。根據前面的目標位址判斷是 DNS、遠端連線,還是讀取回應逾時,再換另一個已知可用的節點比對;不能只憑這一行就認定帳號已失效。

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

原因與解法:憑證有效期間檢查失敗,可能與本機時間或伺服器憑證有關。先在系統「日期與時間」設定中校正時間;若時間正確但仍失敗,請聯絡服務提供者確認憑證,切勿停用憑證驗證。

切換節點時,維持相同的路由與測試網址,只更換使用中的節點。有 TCP 延遲結果,通常只代表某次連接埠連線有回應,無法證明協定驗證、TLS 交握與網頁請求都成功。使用用戶端提供的可用性或實際連線測試時,也要留意測試目標可能與實際瀏覽的網站不同。

六、常見狀況與修復後檢查

延遲只有幾十毫秒,為什麼網頁還是打不開?

延遲測試不一定包含完整的網頁請求。先執行明確指定本機代理的命令,再查看同一時間的日誌。若連接埠可連線但交握失敗,請確認協定參數、系統時間與節點狀態,不要繼續只依延遲排序。

只有一個網站打不開,需要重新安裝嗎?

先不要重新安裝。維持目前使用的節點,測試另一個網站;再暫時切換至全域代理,重新測試原本的網站。若其他網站正常,請優先檢查目標網站狀態、網域規則、DNS,以及網站對連線出口的限制。

瀏覽器可以上網,其他應用程式卻不行?

先查看該應用程式的網路設定,尋找「使用系統代理」或獨立代理選項。若支援手動設定代理,請填入本機位址與實際入站連接埠,並選擇相符的 HTTP 或 SOCKS 類型。命令列工具也可能需要個別設定,不能假設它們都會使用系統代理。

關閉用戶端後,一般網站也打不開了?

重新開啟 v2rayN,選擇「系統代理」→「清除系統代理」,再關閉用戶端。若用戶端無法啟動,請到系統網路設定檢查手動代理是否仍指向已停止的本機連接埠;修改前先記下原值,避免覆蓋公司或學校網路要求的代理設定。

排查完成後,應保留哪些設定?

保留已確認有效的修正,還原暫時變更的路由與日誌層級,撤銷無效的 DNS 修改。若先前使用 TUN 模式,請先確認系統代理路徑正常,再單獨恢復 TUN 並測試,避免同時接管流量造成干擾。

修復完成後,使用相同的瀏覽器重新開啟原本無法瀏覽的網址,再測試一個預期直連的網站。若還需要協助,請整理用戶端與核心版本、系統類型、故障時間、測試方式及對應錯誤行。分享前請遮蔽訂閱網址、使用者識別資訊與驗證參數。請勿公開整份訂閱或完整設定檔來尋求排查建議。

下載v2rayN