適用於 v2rayN、v2rayNG 或 v2flyNG 已顯示執行,但瀏覽器仍逾時、部分網站無法存取或所有請求都失敗的情況。檢查順序固定為本機監聽、流量接管、DNS、路由、節點出口和日誌;每完成一步都進行一次獨立測試,藉此確認故障位於哪一段連線。
先釐清「已連線」代表哪一層
用戶端介面的執行狀態通常只代表核心程序已啟動,或 Android 上的本機網路介面已建立。這不等於遠端節點完成握手,也不等於瀏覽器流量已進入代理。排查時必須將連線拆成五段:應用程式請求、本機代理連接埠、DNS 解析、遠端節點、目標網站。
以 v2rayN 7.14.3 的常見設定為例,本機 SOCKS 連接埠通常是 127.0.0.1:10808,HTTP 連接埠通常是 127.0.0.1:10809。連接埠可在「設定」→「參數設定」→「基礎設定」中調整,因此實際檢測必須以目前用戶端顯示的數值為準,不能只照抄預設值。
先暫時關閉瀏覽器擴充功能中的獨立代理設定,退出其他可能接管系統代理或虛擬網卡的程式,再重新啟動用戶端。這麼做不是直接修復問題,而是減少並行連線,避免一個應用程式使用系統代理、另一個應用程式使用自訂 SOCKS 連接埠,導致測試結果互相矛盾。
結論:執行狀態不能取代請求測試
只要本機連接埠沒有監聽,或瀏覽器沒有將請求送入該連接埠,就還沒開始測試遠端節點是否可用。
第一步:確認本機連接埠與系統代理
在 Windows 上先開啟 PowerShell,檢查 v2rayN 的本機 SOCKS 連接埠是否能建立 TCP 連線。若已修改連接埠,請將命令中的 10808 替換為「參數設定」裡顯示的值。測試成功只代表連接埠正在監聽,不代表遠端出口正常。
Test-NetConnection 127.0.0.1 -Port 10808
結果中的 TcpTestSucceeded 應為 True。如果是 False,先在 v2rayN 主視窗確認已選取一個節點,再執行「伺服器」→「設為作用中伺服器」,接著重新啟動核心。仍然失敗時,直接查看日誌是否有連接埠佔用或設定載入錯誤。
本機連接埠正常後,檢查 v2rayN 的系統代理模式。進行一般瀏覽器測試時,可從系統匣選單選擇「自動設定系統代理」。Windows 的「設定」→「網路和 Internet」→「代理」中,應出現由用戶端寫入的本機代理設定。若退出用戶端後舊代理位址仍然保留,請先關閉系統代理,再重新啟動用戶端。
- 選取一個明確可用的伺服器,設為作用中伺服器。
- 確認本機監聽位址為
127.0.0.1,SOCKS 與 HTTP 連接埠沒有重複。 - 啟用「自動設定系統代理」,完全關閉瀏覽器後再重新開啟。
- 使用沒有獨立代理規則的瀏覽器視窗造訪兩個不同網域,記錄是全部失敗,還是只有特定網域失敗。
第二步:繞過瀏覽器直接測試代理出口
瀏覽器可能保留舊代理設定、DNS 快取或擴充功能規則。為了判斷故障發生在瀏覽器之前還是之後,可以直接向本機代理連接埠發起請求。macOS 與 Linux 可在終端機使用 curl;Windows 安裝對應命令列工具後,也可以執行相同測試。
curl --proxy socks5h://127.0.0.1:10808 https://v2rayroot.com/ -I --connect-timeout 10
socks5h 中的字母 h 表示讓網域名稱透過 SOCKS 連線解析。若回傳 HTTP/2 200、HTTP/1.1 200 或正常的重新導向狀態,代表本機連接埠、節點和遠端 DNS 至少能完成一次完整請求。此時網頁打不開,更可能是瀏覽器代理、快取、擴充功能或系統接管問題。
若命令立即顯示無法連線至 127.0.0.1,故障位於本機監聽。若等待約 10 秒後逾時,本機連接埠通常已接受請求,但遠端節點或目標方向沒有回應。若只有一個網域失敗,則應檢查路由規則、網域解析或目標服務狀態,不要立刻更換所有設定。
| 測試結果 | 連線判斷 | 下一步 |
|---|---|---|
| 拒絕連線至本機連接埠 | 核心未監聽或連接埠填寫錯誤 | 核對 10808、重新啟動核心、檢查連接埠佔用 |
| 10 秒連線逾時 | 節點握手或出口異常 | 切換節點並查看核心日誌 |
| 命令成功、瀏覽器失敗 | 代理核心連線正常 | 重設瀏覽器與系統代理設定 |
| 僅少數網域失敗 | DNS 或分流規則匹配異常 | 暫時使用全域代理進行比對 |
第三步:檢查 DNS 與路由分流
DNS 故障常見表現是節點延遲測試有數值,但輸入網域後網頁一直等待。延遲測試可能直接連線至節點位址,而瀏覽器仍需要解析目標網域。先在系統終端機執行 nslookup v2rayroot.com,確認本機能取得位址;再使用前面的 socks5h 命令,比較本機解析與代理端解析的結果。
如果 IP 位址可以存取而網域無法存取,優先檢查 DNS。v2rayN 7.x 可從「設定」→「參數設定」進入 DNS 相關設定。排查階段不要一次加入多組複雜規則,先還原為用戶端提供的基礎設定,儲存後重新啟動核心。系統端也可以清除 DNS 快取;Windows 使用 ipconfig /flushdns,接著完全退出並重新開啟瀏覽器。
若只有部分網站失敗,請將路由模式暫時切換為全域代理進行比對。全域模式正常、規則模式失敗,表示節點本身大多可用,故障集中在網域規則、IP 規則或直連出口。檢查自訂規則時尤其要注意優先順序:前面的規則會先匹配,一條範圍過大的直連規則可能讓目標請求繞過代理。
- 所有網域失敗:檢查系統 DNS、用戶端 DNS 設定及節點網域是否能解析。
- 網域失敗但 IP 成功:將問題限定在 DNS,暫時不要調整協定參數。
- 全域模式成功:逐條停用自訂路由規則,找出錯誤的直連或封鎖條件。
- 全域模式仍然失敗:繼續檢查節點握手、傳輸層和伺服器出口。
延遲顯示 120 毫秒,為什麼網頁仍然逾時?
延遲測試只能涵蓋特定探測請求。使用 curl --proxy socks5h://127.0.0.1:10808 發起完整 HTTPS 請求,再判斷節點是否真的具備出口能力。
切換至全域代理後恢復正常,應該修改哪裡?
在「設定」→「路由設定」中檢查自訂規則順序,先停用最近新增的網域、GeoIP 或直連規則,每次只恢復一組並重新測試。
更新訂閱後突然所有節點都打不開?
確認作用中伺服器沒有被刪除或替換,重新選取節點並設為作用中伺服器。若節點參數整體變更,更新後必須重新啟動核心才能載入新設定。
Android 上顯示已啟動,應用程式仍然無法連線?
在 v2rayNG 或 v2flyNG 中先關閉分應用程式代理與自訂路由,保留單一節點進行全域測試;確認可用後再恢復應用程式範圍和分流規則。
第四步:從日誌判斷節點、協定與 TLS 故障
本機連接埠和流量接管都正常後,日誌是判斷遠端故障的主要依據。v2rayN 可從主介面的日誌區域查看核心輸出,也可在「設定」→「參數設定」中調整日誌等級。排查時使用 info 通常已足夠;只有資訊不足時才暫時提高詳細程度,完成後恢復,避免大量重複記錄干擾判斷。
VMess、VLESS 的協定名稱本身不能證明設定正確。伺服器位址、連接埠、使用者識別碼、傳輸方式、TLS、SNI、路徑和服務名稱必須與伺服器端一致。訂閱匯入通常會填入這些欄位,手動修改其中一項就可能造成 TCP 已連線,但 TLS 或協定驗證失敗。
錯誤:failed to listen TCP on 127.0.0.1:10808
原因與解法:本機連接埠已被另一個程序佔用——退出重複執行的用戶端,或在「設定」→「參數設定」中改用未佔用的連接埠,儲存後重新啟動核心。
錯誤:failed to find an available destination
原因與解法:出站伺服器位址無法解析或沒有可用目標——核對節點位址拼寫,還原基礎 DNS 設定後重新啟動核心。
錯誤:lookup server.example: no such host
原因與解法:節點網域解析失敗——檢查目前網路的 DNS 可用性,重新更新訂閱,並確認節點位址沒有被手動截斷。
錯誤:TLS handshake timeout
原因與解法:用戶端已嘗試建立 TLS,但未能在規定時間內完成握手——核對伺服器連接埠、SNI、傳輸方式與系統時間,再換用同一訂閱中的另一個節點進行比對。
錯誤:connection reset by peer
原因與解法:連線已抵達遠端,但遭對方主動重設——檢查協定與傳輸參數是否匹配,並測試其他節點,以區分單一節點故障與本機網路限制。
如果同一訂閱中三個節點只有一個失敗,優先判斷為單一節點設定或伺服器狀態問題。如果所有節點都出現完全相同的本機連接埠錯誤,則應先修復本機設定。若所有 TLS 節點都失敗,還要確認系統日期、時區和分鐘數值準確;明顯的時間偏差會導致憑證有效期判斷異常。
結論:相同錯誤決定排查範圍
單一節點報錯就檢查節點參數,所有節點報錯則檢查本機連接埠、DNS 與系統環境;先比較錯誤是否一致,比連續隨機切換節點更容易找出原因。
第五步:按最小設定還原,再逐項加回功能
經過前四步仍無法確認原因時,使用最小設定建立基準。保留一個剛從有效訂閱更新取得的節點,關閉自訂 DNS、路由規則、分應用程式代理和 TUN,只啟用系統代理。重新啟動用戶端後先測試本機連接埠,再執行一個代理請求,最後開啟瀏覽器。
最小設定正常後,按照固定順序恢復功能:先恢復 DNS,再恢復路由分流,接著恢復瀏覽器或應用程式層級規則,最後啟用 TUN。每恢復一項就造訪相同的兩個測試網域,並記錄從哪一步開始失敗。這樣可以將故障鎖定在某個設定層,而不是在數十個參數之間反覆猜測。
在 Android 上使用 v2rayNG 或 v2flyNG 時也遵循相同邏輯:先選擇單一節點並關閉自訂路由,確認一般網頁可存取後,再恢復分應用程式設定。v2rayNG 使用 Xray 核心,v2flyNG 使用 v2fly 核心;兩者匯入同一訂閱後,仍可能因核心支援範圍和具體傳輸參數不同而產生不同結果。
- 重設為單一節點、基礎 DNS、系統代理或預設網路接管。
- 確認
127.0.0.1:10808或目前設定的連接埠可以連線。 - 執行含有
socks5h的請求,確認網域解析與出口同時成功。 - 恢復路由規則,比較全域與規則模式的差異。
- 最後恢復 TUN、分應用程式範圍和其他進階設定。
| 斷點位置 | 典型現象 | 處理重點 |
|---|---|---|
| 本機監聽 | 10808 連線遭拒 | 核心啟動、設定格式、連接埠佔用 |
| 流量接管 | 命令成功但瀏覽器失敗 | 系統代理、瀏覽器擴充功能、舊設定 |
| DNS | IP 可存取但網域失敗 | 解析方式、快取、節點網域 |
| 路由 | 全域正常但規則模式失敗 | 規則優先順序、直連條件、封鎖條件 |
| 節點出口 | 多個目標均握手逾時 | 伺服器狀態、協定參數、TLS 與 SNI |