解决Windows未使用端口被占用问题
本文最后更新于:2022年4月28日 中午
参考文章
问题产生
在无脑跟着网上教材开启Windows的SandBox
的时候开启了Hyper-V的功能,结果尝试在6800
端口运行和往常一样的Aria2
的Docker
容器的时候出现了端口报错的情况,通过netstat
排查也没发现6800
端口被占用了,后面发现应该是Windows的动态端口在开了Hyper-V
之后被修改了
通过以下指令可以分别查看ipv4/ipv6
的tcp/udp
起始端口
1 |
|
在我的情况下,起始端口从原本默认的49152
被修改成了从1024
开始,因此6800
端口无法使用
问题解决
在参考问题中找到了对应的解决方案
如果需要继续使用windows Virtual platform form windows feature
(不确定这里是不是指Hyper-V,所以不翻译了)则
关闭Windows服务上对应的功能,关闭后系统会请求重启
通过以下指令修改动态起始端口
(在使用49152
是Windows默认设置)adb
连WSA
的调试时,发现默认端口为58526
,所以还是用100000
把1
2
3
4netsh int ipv4 set dynamicport tcp start=64536 num=1000
netsh int ipv4 set dynamicport udp start=64536 num=1000
netsh int ipv6 set dynamicport tcp start=64536 num=1000
netsh int ipv6 set dynamicport udp start=64536 num=1000重新启用对应的功能
如果没有Hyper-V使用需求的情况下,可以尝试直接关闭Hyper-V,然后检查起始端口是否恢复,如果没有恢复的再通过上面的指令手动重新设置起始端口即可
解决Windows未使用端口被占用问题
https://halc.top/p/22453a61