现象:

我在使用win10进行Java开发时使用到了8080端口,之前(1-2个月之前)使用一直没问题,今天突然发现程序报错端口被占用,可是我用命令找不到任何占用进程,重启系统也无效。更换端口8081依然被占用。10000以下的端口都不能使用。

  1. // 查询端口被占用命令
  2. netstat -aon|findstr 8080

image.png

解决方法:

Windows中的tcp协议动态端口占用,可以使用以下命令查询tcp协议动态端口占用范围。

netsh int ipv4 show dynamicport tcp

image.png
使用以下命令修改动态端口占用范围(需要使用管理员身份运行):

netsh int ipv4 set dynamicport tcp start=1024 num=1000

image.png
再次查询动态占用端口范围:

image.png

参考文档: 微软官方说明