記hyper-v導致的privoxy error(fatal error: can't bind to 127.0.0.1:1081(error number:0)),附解決方法


今天安裝docker,啟用hyper-v后,開始發現發現代理報錯,提示無法bind 1081端口

查詢解決方法一 管理員運行cmd

netsh winsock reset

無效

使用netstat -ano | findstr "1081"也沒有任何輸出

方法二

改本地監聽端口為任一一個非保留端口,最好大一點,我改了23456,發現問題解決。下面命令這套可以發現確實端口被保留了。

簡單分析原因,具體可以點參考鏈接進行了解

netsh interface ipv4 show excludedportrange protocol=tcp

協議 tcp 端口排除范圍

開始端口 結束端口


  1024        1123
  1124        1223
  1224        1323
  1328        1427
  1431        1530
  1566        1665
  2030        2129
  2180        2279
  2280        2379
  2380        2479
  2480        2579
  2580        2679
  2938        3037
  3038        3137
 23458       23458
 50000       50059     *
    • 管理的端口排除。

在一個ss項目的issue評論里翻到這個解釋和普適的解決

這種情況其實是因為win10保留動態端口的端口號范圍和你設定的端口出現了沖突(內核系統級沖突,普通工具是看不到的), 所以我們要修改動態端口的許可范圍, 上調到比如從30000這種不常用端口開始.
使用管理員權限cmd執行如下指令 然后必須重啟一次電腦即可 解決沖突問題
netsh int ipv4 set dynamicport tcp start=30000 num=20000

參考

  1. issue評論
  2. issue評論2
  3. 一篇分析和解決的知乎文章


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM