2026-09-11 · 故障排除 · 約 9 分鐘

v2rayN 本機連接埠遭占用:10808 衝突排查與監聽連接埠變更

使用系統命令找出占用 10808、10809 的程序,再到 v2rayN 參數設定變更本機 SOCKS 與 HTTP 連接埠,並同步更新系統代理。

本文重點

適用於 Windows 上 v2rayN 顯示監聽失敗,或啟動後瀏覽器無法連線至本機代理的情況。先從記錄確認出錯的連接埠,再查出對應的監聽程序;若能關閉重複執行的執行個體,就釋出連接埠,否則改用確認閒置的連接埠。最後更新系統代理和應用程式內的代理設定,避免核心已恢復,應用程式卻仍連到舊位址。

一、先確認是本機監聽失敗,別急著換節點

在 v2rayN 主畫面的記錄區查看這次啟動資訊,留意 listen、bind 和 127.0.0.1:10808。如果核心尚未成功建立本機入口,請求就無法送達節點。這時更新訂閱,或變更 VLESS、VMess 的伺服器連接埠,都無法排除電腦上的監聽衝突。

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

原因與解法:這是 Windows 常見的位址占用錯誤,對應錯誤碼 10048。先查出記錄所指連接埠的監聽 PID,再決定要結束重複執行的程序,或變更本機入口。

錯誤:bind: An attempt was made to access a socket in a way forbidden by its access permissions.

原因與解法:常見於錯誤碼 10013,可能與連接埠保留範圍或安全性原則有關,並不代表已有程式正在監聽。若查不到 PID,請接著檢查排除的連接埠範圍,不要反覆結束程序。

錯誤:No connection could be made because the target machine actively refused it.

原因與解法:應用程式連線的位址上沒有可用的監聽服務,也可能仍指向變更前的舊連接埠。先確認核心已成功啟動,再核對應用程式實際使用的代理位址。

錯誤訊息會因系統語言和核心版本而異,判斷時請以本機位址、連接埠和錯誤含義為準。127.0.0.1 是電腦本身的回送位址,不是訂閱伺服器位址;0.0.0.0 則代表監聽所有 IPv4 網路介面,其連接埠占用也可能影響回送位址的監聽。

二、確認 10808 和 10809 在目前設定中的用途

開啟「設定」→「參數設定」,查看本機監聽相關欄位。傳統雙入口設定通常將 SOCKS 設為 10808、HTTP 設為 10809;使用混合入口的設定則可讓 HTTP 和 SOCKS 共用一個連接埠。不要只憑舊教學就認定電腦上一定要同時有兩個監聽連接埠。

10808
常見的 SOCKS 或混合入口連接埠
10809
傳統雙入口常用的 HTTP 連接埠
11808
本文替換範例;使用前請先檢查占用情況
瀏覽器請求 本機代理入口 路由規則 遠端節點

本機連接埠只決定應用程式如何連入用戶端。路由分流決定連入後使用哪個出口,遠端節點連接埠則決定核心要連到哪裡。三者不可混為一談。本文的 11808、11809 只是候選連接埠,不能保證一定閒置。

三、使用 netstat 找出占用連接埠的 PID

在 Windows「開始」功能表搜尋「終端機」,開啟 PowerShell 或命令提示字元,先執行以下兩個命令。一般權限通常可以查看連線記錄;若要查看受保護程序的資訊,再改用系統管理員終端機。

netstat -ano -p tcp | findstr ":10808"
netstat -ano -p tcp | findstr ":10809"

優先查看本機位址欄和 LISTENING 狀態。以下僅為格式範例,並非目前電腦的實際結果。最後一欄 6420 是 PID,同一個程序可能同時建立 IPv4 和 IPv6 監聽。

TCP    127.0.0.1:10808    0.0.0.0:0    LISTENING    6420
TCP    [::1]:10808        [::]:0       LISTENING    6420

將查到的實際 PID 帶入下一個命令。若結果只有 ESTABLISHED 或 TIME_WAIT,不要直接把其中的 PID 當成監聽衝突來源;也要確認比對的是本機連接埠,而非遠端連線位址。

tasklist /FI "PID eq 6420"
  1. 如果看到另一個 v2rayN 執行個體:查看系統匣和工作管理員,優先從舊執行個體的系統匣選單中選擇結束。
  2. 如果看到代理核心程序:先確認所屬用戶端和檔案位置,避免關閉目前正常運作的執行個體。
  3. 如果看到其他應用程式或系統服務:先確認用途;若仍需要使用,請保留該服務並變更 v2rayN 本機連接埠。
  4. 如果看到不熟悉的程序:在工作管理員的「詳細資料」中依 PID 找出程序,查看「開啟檔案位置」,不要只憑名稱猜測。

四、關閉重複執行的執行個體,或變更本機監聽連接埠

先在系統匣選單中將系統代理設為「清除系統代理」,避免調整期間應用程式持續連線到失效的入口。如果確認只是誤開了兩個執行個體,結束多餘的執行個體後重新啟動保留的用戶端即可,不一定要更換連接埠。

  1. 記下原設定值

    前往「設定」→「參數設定」,記下目前的本機監聽連接埠、是否允許區域網路連線,以及使用獨立入口或混合入口。欄位名稱可能因版本而異,請以目前介面為準。

  2. 查詢候選連接埠

    依照上一節的方法查詢 11808;若目前設定有獨立的 HTTP 入口,也要查詢 11809。若有監聽記錄,就換一組候選值,不要占用其他服務的連接埠。

  3. 變更本機入口

    在「設定」→「參數設定」的本機監聽設定中,將 SOCKS 連接埠改為 11808;若有獨立的 HTTP 連接埠欄位,則改為 11809。若介面只有混合入口,只要將該入口改為 11808,不必另外尋找或新增 11809。

  4. 儲存並重新啟動

    按一下「確定」儲存,並依介面提示重新啟動核心;若仍顯示舊值,請結束 v2rayN 後再重新開啟。接著查看記錄,確認新的本機位址沒有再次出現 bind 錯誤。

  5. 確認新的監聽狀態

    重新查詢 11808 和實際設定的 HTTP 入口。監聽 PID 應屬於目前執行的用戶端核心;舊連接埠已消失,並不代表新連接埠已成功啟動。

netstat -ano -p tcp | findstr ":11808"
netstat -ano -p tcp | findstr ":11809"

若使用自訂設定檔,監聽位址通常由設定中的 inbounds 決定,介面上的連接埠不一定會覆寫該檔案。請先備份,再檢查實際載入設定中的 listen、port 和 protocol,避免只修改介面設定,執行時卻仍載入舊連接埠。

五、同步更新系統代理與應用程式內的代理設定

核心開始監聽新連接埠後,在 v2rayN 系統匣選單的「系統代理」中選擇「自動設定系統代理」。接著前往 Windows「設定」→「網路和網際網路」→「Proxy」查看生效的位址。請勿將「自動設定系統代理」誤解為所有應用程式都會自動更新手動代理設定。

使用位置雙入口範例混合入口範例檢查重點
Windows 系統代理127.0.0.1:11809127.0.0.1:11808應指向支援 HTTP 代理的入口
應用程式手動設定 SOCKS5127.0.0.1:11808127.0.0.1:11808同時核對主機、連接埠與代理協定
應用程式手動設定 HTTP127.0.0.1:11809127.0.0.1:11808不可指向僅支援 SOCKS 的入口
終端機環境變數依 HTTP 或 SOCKS 類型填寫依應用程式支援的代理類型填寫已開啟的終端機可能仍保留舊值

如果瀏覽器使用獨立代理設定,請在瀏覽器內同步變更。命令列程式也不一定會讀取 Windows 系統代理:請檢查現有的 HTTP_PROXY、HTTPS_PROXY 和 ALL_PROXY 環境變數,尤其留意值中是否仍包含 10808 或 10809。變更使用者環境變數後,請開啟新的終端機再測試。

結論:監聽恢復後,優先檢查舊連接埠的設定

若部分應用程式已恢復,只有某個應用程式仍顯示連線遭拒,請先檢查該應用程式的手動代理設定和程序環境,不要立刻再次更換連接埠。讓應用程式改用已確認正在監聽的新入口,通常比重設整套訂閱設定更直接。

六、查不到監聽程序時,檢查保留連接埠與啟動方式

若連接埠查詢沒有結果,卻持續出現權限相關錯誤,請在系統管理員終端機中檢查 Windows 的 TCP 排除連接埠範圍。虛擬化、容器或系統網路元件可能會使用這些範圍,一般的監聽查詢不一定會顯示占用它們的 PID。

netsh interface ipv4 show excludedportrange protocol=tcp
netsh interface ipv6 show excludedportrange protocol=tcp

變更本機連接埠通常不需要新增防火牆輸入規則。若僅供本機使用,維持回送位址監聽即可;將監聽位址改為 0.0.0.0 無法排除連接埠衝突,反而可能讓區域網路中的裝置也能連上代理入口。只有確實需要共用時,才另外評估存取範圍和防火牆規則。

七、依三個層級確認修復完成

先檢查本機 TCP 入口,再檢查應用程式代理設定,最後才確認節點連線。以下 PowerShell 命令僅用來驗證本機連接埠是否能建立 TCP 連線,無法證明遠端節點、DNS 或路由分流都正常。

Test-NetConnection -ComputerName 127.0.0.1 -Port 11808
  1. 本機層:結果中的 TcpTestSucceeded 為 True,記錄中沒有新的監聽錯誤,且 PID 對應到正確的核心程序。
  2. 應用程式層:系統代理和手動代理都指向新連接埠;將測試中的應用程式完全結束後重新開啟,以排除舊程序保留設定的情況。
  3. 對外連線層:使用原本要連線的網頁或服務進行測試。若本機入口正常,但記錄開始出現遠端連線逾時,請接著檢查節點位址、訂閱是否有效及網路狀況。

Android 版 v2rayNG 使用 Xray 核心,但其 VPN 授權與分應用程式代理和 Windows 系統代理設定無關。本文命令適用於 Windows 版 v2rayN,不應直接套用到手機。排查桌面版問題時也不必修改手機設定,除非手機確實透過區域網路連線至這台電腦的代理入口。

下載用戶端v2rayNG / v2rayN