本文重點

適用於 v2rayNG 已顯示 VPN 圖示,或 v2rayN 已啟動核心,卻仍無法開啟網頁的情況。先確認本機網路與系統時間,再檢查應用程式流量是否進入用戶端,接著分別驗證 DNS、路由與節點。每次只調整一項設定,並保留一次失敗請求的記錄,比反覆更換整份設定更容易找出原因。

一、先分清「已啟動」與「請求成功」

Android 狀態列出現 VPN 圖示,只代表系統已建立本機 VPN 介面,不代表遠端節點驗證成功。v2rayN 顯示核心正在執行,也僅表示本機程序已啟動。網頁能否開啟,還取決於應用程式是否由代理接管、網域解析、路由選擇、遠端連線,以及目標網站是否回應。

先固定一種測試方式:使用同一個瀏覽器,開啟同一個完整的 HTTPS 網址。再選一個平常能正常瀏覽的網站作為對照。不要同時更換節點、修改 DNS 和瀏覽器設定,否則即使恢復正常,也無法判斷是哪項設定生效。

觀察到的狀況優先檢查項目下一步
所有應用程式都無法連線本機網路、VPN 接管、節點出口停止代理,先確認基本網路正常
只有一個瀏覽器無法連線瀏覽器代理擴充功能、安全 DNS、分應用清單改用另一個瀏覽器開啟相同網址比對
只有部分網域無法連線DNS、網域規則、目標網站限制查看失敗請求的網域與出站
節點測試有結果,網頁仍無法開啟實際應用程式的流量路徑不要把測試結果當成整條連線都正常的證明

二、確認基本網路與系統時間

先停止 v2rayNG 連線,或在 v2rayN 的「系統代理」中選擇「清除系統代理」。如果也啟用了 TUN,請暫時關閉。清除系統代理不會自動停止 TUN 接管。接著開啟平常能瀏覽的網站,確認 Wi-Fi 或行動數據本身可正常使用。

  1. 確認網路連線

    關閉代理後開啟瀏覽器。若公共 Wi-Fi 跳出登入頁面,先完成網路驗證;如果仍無法上網,改用行動數據測試,不要急著修改節點參數。

  2. 校正時間

    Android 通常可在「設定」→「系統」→「日期與時間」開啟自動設定時間。Windows 可在「設定」→「時間與語言」→「日期與時間」開啟自動設定並執行同步;不同手機品牌的選單名稱可能不同。

  3. 重新連線

    返回用戶端,選取原本的節點並重新啟動連線。裝置時間不準可能影響憑證有效期限的判斷,也可能造成 VMess 時間驗證失敗;只調整時區顯示,無法修正實際時間錯誤。

  4. 記錄測試結果

    記下網路類型、節點名稱、失敗網址與請求時間。後續測試都使用相同網址;切換網路後重新連線,避免把舊連線狀態誤認為新網路的測試結果。

三、確認瀏覽器流量有進入用戶端

v2rayNG 必須先取得 Android VPN 權限。如果裝置上有其他工具正在占用系統 VPN 介面,請先停止該工具,再啟動 v2rayNG。v2rayN 則要分清系統代理與 TUN:系統代理只對遵循系統代理設定的應用程式有效,終端機程式通常還需要另外指定代理。

在 v2rayNG 側邊選單中依序進入「設定」→「分應用代理」,檢查開關、清單與模式。若啟用「僅代理選取的應用程式」,就必須選取瀏覽器;若使用繞過模式,被選取的瀏覽器反而不會經過代理。不同版本的模式名稱可能不同,請以介面說明為準。

桌面版也可明確指定本機代理,避開瀏覽器的代理設定進行比對。以下是範例連接埠,不是所有版本的固定預設值。先查看用戶端目前的監聽設定,再將命令中的連接埠改為實際值。

10808
下方 SOCKS 測試範例連接埠
10809
下方 HTTP 測試範例連接埠
443
HTTPS 常見目標連接埠,並非節點固定連接埠
# Windows 終端機;將目標位址換成需要重現問題的網站
curl.exe --proxy socks5h://127.0.0.1:10808 --connect-timeout 10 --max-time 20 -I https://example.com/
curl.exe --proxy http://127.0.0.1:10809 --connect-timeout 10 --max-time 20 -I https://example.com/

socks5h 代表將目標網域交由代理端解析。如果明確指定代理後能取得 HTTP 狀態碼,但瀏覽器仍無法連線,請優先檢查瀏覽器與系統代理接管情況。收到 403 或 405 也代表已有 HTTP 回應,但不表示頁面存取權限正常;部分網站不接受 HEAD 請求,可移除 -I 再試。

四、分別排查節點網域與網站 DNS

DNS 有兩個容易混淆的對象:節點伺服器位址,以及準備瀏覽的網站位址。如果節點位址使用網域名稱,用戶端必須先解析出 IP 位址,才能建立連線。此時若將所有 DNS 請求都送進尚未建立的代理,可能形成依賴迴圈。

另一種情況是節點可以連線,但網站網域解析失敗。瀏覽器的安全 DNS、Android 的私人 DNS,以及用戶端的 DNS 規則,可能採用不同的解析路徑。Android 通常可在「設定」→「網路和網際網路」→「私人 DNS」查看目前狀態;部分品牌的選項可能位於「連線與分享」中。

錯誤片段:no such host

原因與處理方式:相關網域沒有解析到可用位址。先查看記錄中的實際主機名稱,確認拼字與 DNS 是否可連線;如果是節點網域,請確認解析不依賴尚未建立的代理。

錯誤片段:connection refused

原因與處理方式:目標位址拒絕了連線。如果目標是 127.0.0.1,請檢查本機監聽連接埠與核心狀態;如果目標是遠端節點,請核對訂閱中的連接埠並確認服務正在運作。

錯誤片段:i/o timeout

原因與處理方式:操作未能在期限內完成,單憑這則訊息無法判定是 DNS 故障。請根據前後的目標位址與操作階段,分別驗證網路、解析與遠端連線。

五、檢查路由順序與分流規則命中情況

如果只有部分網站無法連線,先確認它們實際使用哪個出站。V2Ray/Xray 的路由規則會依序比對,前面的規則命中後,後面的規則通常不會再決定該連線的路徑。如果範圍過廣的直連規則排在前面,原本預計透過代理連線的網站就可能改走直連。

v2rayNG 可從側邊選單進入「路由設定」,檢查目前的規則與模式;v2rayN 則可在「設定」→「路由設定」中確認使用的規則集。介面中的模式名稱可能因版本而異,重點是確認測試請求實際使用的出站,而不只是查看模式名稱。

  1. 先儲存目前的路由設定,或截圖記錄目前模式,以便還原。
  2. 暫時切換至會將一般網站流量送往代理的測試模式,同時保留區域網路所需的直連規則。
  3. 重新建立連線,再開啟原本無法瀏覽的網站,避免沿用舊連線影響判斷。
  4. 如果恢復瀏覽,請切回自訂規則,依序檢查網域、IP、出站標籤與規則資料庫。

geosite:cn 是網域集合條件,geoip:private 是私有位址集合條件,兩者並不相同。引用規則資料庫時,檔案不存在或集合名稱錯誤都可能造成載入失敗,請以啟動記錄為準。也不要想當然地認為,同一條規則中的網域條件與 IP 條件只要符合其中一項就會命中。

結論:測試模式可正常連線後,優先修正規則

同一個節點、同一個網路,只有切換路由模式才能開啟原本的網站,就先比較兩組規則的命中差異。此時反覆更換 TLS 或傳輸參數,通常只會擴大排查範圍。

六、最後檢查節點與伺服器參數

確認流量已進入用戶端且 DNS 有解析結果,卻仍無法建立遠端連線時,再檢查節點本身。先更新訂閱,確認目前選取的項目沒有被舊設定取代。訂閱更新只代表已取得設定,不表示伺服器一定在線,也不代表帳戶額度仍可使用。

進行兩組比對即可:同一個網路改用另一個已知可用的節點;同一個節點改用另一種本機網路。如果其他節點可正常使用,只有這個節點一直失敗,請優先檢查節點設定、伺服器狀態與帳戶;如果所有節點只在某個 Wi-Fi 下失敗,則優先檢查該網路的限制與解析路徑。比對結果只能提供排查線索,不能單靠一次測試就下定論。

七、還原設定與常見問題

找出原因後,逐項還原比對時使用的臨時設定。尤其是全域代理模式、私人 DNS 和瀏覽器安全 DNS,不應在測試後繼續維持變更。先確認原本失敗的網址已恢復,再測試一個直連網站與需要使用的區域網路服務,避免修好一處卻改變另一處的連線路徑。

有延遲數字,為什麼還是無法開啟網頁?

先確認執行的是連接埠測試,還是真正的請求測試。連接埠可連線,不代表驗證、DNS 和目標網站都正常;即使請求測試成功,也只能證明該測試路徑可用。接著用瀏覽器開啟同一個網址,並確認流量是否進入代理。

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

在 v2rayNG 檢查分應用代理的清單與模式;在 v2rayN 確認該應用程式是否遵循系統代理。不要因為瀏覽器連線成功,就認定所有應用程式都已由代理接管;有需要時再依照教學設定 TUN 並個別驗證。

鎖定螢幕後無法連線,重新開啟用戶端就正常?

檢查 Android「設定」→「應用程式」→「v2rayNG」→「電池」中的背景活動限制,實際選項位置可能因裝置而異。允許必要的背景執行後,鎖定螢幕再測試;如果只在切換網路後發生,也要檢查是否有重新連線。

設定已經改亂了,需要直接重新安裝嗎?

先備份訂閱群組與自訂規則,還原一份已知可用的基本設定,再選一個節點進行測試。重新安裝無法修復遠端服務中斷,還可能遺失排查所需的設定與記錄,不應作為第一步。