我在 Windows 10 机器(版本 1803)上使用 WSL 进行一些节点开发。不可避免的是,在启动 WSL 的几个小时内,系统上的所有端口都绑定了。此时,没有新的网络连接打开,我实际上失去了网络访问权限,直到我重新启动。
netstat -qn |findstr BOUND
这将显示所有绑定到最大数量的 TCP 端口,例如:
TCP 0.0.0.0:60755 0.0.0.0:0 BOUND
我尝试使用 ipconfig 重置 Windows 端适配器,终止所有 WSL 进程,以及执行其他一些操作,但都无法解除端口绑定。我希望能够使用我的计算机而不必每隔几个小时重新启动一次。
我能够找到一个信息有限的未解决的问题:https://github.com/Microsoft/WSL/issues/2523 但没有解决方案或解决方法。
任何重置 WSL 或打开端口的方法都将不胜感激!
答案1
临时修复:使用任务管理器“结束进程树”来结束adb
、wslhost.exe
和wslbridge.exe
。但是,这会终止 WSL 以及在 WSL 上运行的任何东西。
永久修复:这似乎是 GitHub 上描述的一个已知 WSL 错误这里和这里, 和微软在 Build 18890 中修复了此问题。但是,截至 2019 年 5 月,Build 18890 远远领先于 Windows 的稳定版本,因此您需要注册 Windows Insider 计划才能获取它。