Windows端口占用排查
一、前言日常开发、调试服务时经常会遇到端口被占用、服务启动失败的问题尤其是 8080、8083 这类常用 Web 端口。本文完整记录一次 Windows 系统下端口占用排查、进程溯源、服务定位的实操全过程包含完整命令、执行结果、进程分析方便后续自查复盘同时分享通用的端口排查思路。适用场景Windows 系统端口占用排查、陌生端口进程溯源、后台常驻端口排查、开发环境端口冲突解决。用到核心命令netstat -ano、netstat -aon | findstr 端口号、tasklist | findstr PID二、整体排查思路Windows 端口排查通用流程固定三步适配所有端口查看所有网络连接通过netstat -ano查看系统所有监听、已建立、等待状态的端口及对应 PID。过滤目标端口通过findstr精准筛选需要排查的端口8080/8083。PID 溯源进程通过 PID 匹配具体进程名称、程序判断是否为系统进程、开发程序或陌生后台进程。三、排查实操3.1查看系统全部网络连接打开 CMD管理员/普通权限均可执行如下命令查看系统所有 TCP/UDP 端口连接、状态、PIDnetstat -ano参数说明-a显示所有连接和侦听端口-n以数字形式显示地址和端口不解析域名速度更快-o显示每个连接对应的进程 PID执行结果关键信息梳理系统存在大量常驻监听端口135、445、3306、5432、902、1883 等对应数据库、系统服务、虚拟机服务等存在大量8083/18083端口监听和临时连接存在端口复用、大量 TIME_WAIT 状态连接本地回环地址 127.0.0.1 存在大量开发服务本地连接网络交互活跃外网地址存在多个 ESTABLISHED 已建立连接为程序外网通信链路3.2排查指定端口8080执行端口过滤命令单独筛选 8080 端口连接netstat -aon | findstr 8080命令执行结果TCP 192.168.3.30:50102 157.148.62.239:8080 ESTABLISHED 2476结果分析本机 50102 端口与外网157.148.62.239:8080建立长连接ESTABLISHED该连接所属进程 PID2476。无本地 8080 端口监听仅为客户端主动向外发起的 8080 端口请求不存在本地 8080 端口被占用问题。3.3排查指定端口80838083 为本次重点排查端口执行过滤命令netstat -aon | findstr 8083核心执行结果精简关键信息TCP 0.0.0.0:8083 0.0.0.0:0 LISTENING 8048 TCP 0.0.0.0:8083 0.0.0.0:0 LISTENING 6412 TCP 0.0.0.0:18083 0.0.0.0:0 LISTENING 6412 TCP [::]:8083 [::]:0 LISTENING 8048端口状态解读LISTENING端口处于监听状态正在等待客户端连接为常驻占用状态TIME_WAIT大量临时关闭的连接为正常网络释放状态无需处理核心问题8083 端口被PID 8048、6412两个进程同时监听存在端口复用四、PID进程溯源通过上述步骤得到占用端口的核心 PID8048、6412下一步匹配对应进程名称。执行进程查询命令tasklist | findstr 8048五、通用排查命令备忘# 查看所有端口连接 netstat -ano # 过滤指定端口替换端口号即可 netstat -aon | findstr 8080 netstat -aon | findstr 8083 # 根据PID查询进程 tasklist | findstr PID值 # 强制结束指定PID进程 taskkill /F /PID PID值