美文网首页
windows系统保留端口,导致端口被占用,通过netstat找

windows系统保留端口,导致端口被占用,通过netstat找

作者: Liekkasz | 来源:发表于2021-09-18 12:05 被阅读0次

1. 背景

最近心痒升级了系统到windows 11,感觉真的很香,接着使用新系统的机会,也接触了一波wsl2(Windows 10已有,但是一直没有使用过),为此也开启了Hyper-V,没想到却出现了一些端口占用的提示,搞得tomcat无法运行了,一波折腾,最终查明了原因并顺利解决。

2. 问题

使用IDEA启动tomcat,总是提示1099端口被占用,大致提示如下:

Error running **: Address localhost:1099 is already in use

3. 处理方案

按照一般处理方法,首先在终端下通过指令查找1099端口的使用情况,结果却发现并未找使用。

netstat -ano | findstr "1099"

一番资料搜集,发现当我们开启Hyper-V后,系统默认会分配给一些保留端口供Hyper-V使用,碰巧1099就被保留了!!!

那么我们只需要让系统不要保留1099端口即可(其他类似问题,也可以用相同方式处理)。

# 禁用Hyper-V
dism.exe /Online /Disable-Feature:Microsoft-Hyper-V

# 添加例外端口
netsh int ipv4 add excludedportrange protocol=tcp startport=1099 numberofports=1

# 启动Hyper-V
dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All

4. 总结

如果碰到类似的端口占用问题,在netstat找不到的情况下,不妨也考虑考虑系统保留的可能性,采用相同的方式,即可顺利解决。

顺便记录下常用操作,方便查阅。

# 禁用Hyper-V
dism.exe /Online /Disable-Feature:Microsoft-Hyper-V

# 启动Hyper-V
dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All

# 显示动态端口范围
netsh int ipv4 show dynamicport tcp
# 显示例外端口范围
netsh interface ipv4 show excludedportrange protocol=tcp

# 设置动态端口TCP范围
netsh int ipv4 set dynamicport tcp start=1024 num=13977
# 设置动态端口UDP范围
netsh int ipv4 set dynamicport udp start=1024 num=13977

# 添加例外端口
netsh int ipv4 add excludedportrange protocol=tcp startport=1099 numberofports=1

相关文章

网友评论

      本文标题:windows系统保留端口,导致端口被占用,通过netstat找

      本文链接:https://www.haomeiwen.com/subject/hunegltx.html