Windows端口莫名不可用问题
在Windows下开发,偶尔会出现端口被占用,却找不到占用端口的程序。这是因为开启Hyper-V后,系统会随机保留部分端口。
在开发过程中,编译web项目提示端口没有权限

用命令查找
netstat -ano | findstr ":8888"
没有输出结果
这是因为在开启Hyper-V后系统会随机保留一些端口
检查保留端口范围:
netsh int ipv4 show dynamicport tcp

查看当前被占用的端口
netsh interface ipv4 show excludedportrange protocol=tcp

发现8888在这个端口范围内,被占用。
若目标端口在保留范围内,需修改动态端口分配:
netsh int ipv4 set dynamicport tcp start=49152 num=16384
netsh int ipv4 set dynamicport udp start=49152 num=16384
netsh int ipv6 set dynamicport udp start=49152 num=16384
netsh int ipv4 set dynamic tcp start=55000 num=10536
netsh int ipv6 set dynamic tcp start=55000 num=10536
重启系统,再次输入上面命令查看保留的端口


这时8888端口可以使用,以后再也不会系统保留了。
其他文章