可通过netstat -a、-ano、-anb命令及资源监视器、powershell等五种方法全面查看win10网络连接与端口状态:-a显示所有连接和监听端口;-ano附加进程pid;-anb显示程序名(需管理员权限);资源监视器提供图形化实时筛选;powershell支持结构化查询与导出。

如果您需要全面了解 Windows 10 系统当前所有网络连接与端口状态,包括活动连接、监听端口及非监听的已建立连接,则可通过内置命令工具快速获取。以下是执行该操作的具体步骤:
一、使用 netstat -a 查看全部网络连接与端口状态
netstat -a 命令用于显示所有活动的 TCP 和 UDP 连接,以及本机正在监听的端口(TCP 和 UDP 协议),不包含进程 ID(PID)信息,适用于初步掌握整体网络连接概况。
1、按下 Win + R 组合键,打开“运行”对话框。
2、输入 cmd 并按回车,启动命令提示符。
3、在命令提示符中输入 netstat -a 并回车执行。
4、观察输出结果中的 Proto(协议)、Local Address(本地地址与端口)、Foreign Address(远程地址与端口)及 State(连接状态,如 LISTENING、ESTABLISHED、TIME_WAIT 等)字段。
二、使用 netstat -ano 查看连接+进程标识符
netstat -ano 在 -a 基础上增加 -n(以数字形式显示地址和端口号)与 -o(显示拥有连接或监听端口的进程 ID),可直接定位到具体占用程序,是排查端口冲突与异常连接的核心方法。
1、在已打开的命令提示符中,输入 netstat -ano 并回车。
2、查找 State 列为 LISTENING 的 TCP 行,其 Local Address 中冒号后数字即为监听端口号;UDP 行若 Foreign Address 显示 *:*,则表示该端口处于监听状态。
3、记录目标连接或端口所在行末尾的 PID 数值,用于后续识别对应进程。
三、使用 netstat -anb 查看连接+可执行文件名
netstat -anb 可显示每个连接所对应的可执行文件名称(需管理员权限),省去通过 PID 查询 tasklist 的步骤,但部分系统服务可能因权限限制无法显示完整路径。
1、右键点击“开始”按钮,选择 Windows PowerShell(管理员) 或 命令提示符(管理员) 启动。
2、输入 netstat -anb 并回车执行。
3、等待输出完成,注意观察每段连接下方紧邻的 [程序名.exe] 行,该行为实际占用该连接或端口的可执行文件。
4、若提示“拒绝访问”,说明当前账户无权读取某些系统进程的映像路径,可改用其他方法交叉验证。
四、使用资源监视器图形化查看实时连接详情
资源监视器提供免命令行的可视化界面,支持按协议、端口、进程名称实时筛选,并显示 CPU、磁盘、网络等上下文资源占用,适合快速定位高活跃连接或可疑通信。
1、按下 Ctrl + Shift + Esc 打开任务管理器。
2、切换至 性能 选项卡,点击底部 打开资源监视器 链接。
3、在资源监视器窗口中,切换到 网络 选项卡。
4、展开 TCP 连接 区域,查看“本地地址”“远程地址”“端口”“进程”等列,滚动或在右上角搜索框输入端口号快速定位。
五、使用 PowerShell 获取结构化连接对象
PowerShell 的 Get-NetTCPConnection 与 Get-NetUDPConnection cmdlet 返回结构化对象,支持管道筛选与属性提取,可精准导出端口、协议、状态、进程名等组合信息,避免人工解析文本输出。
1、以管理员身份运行 Windows PowerShell。
2、输入以下命令查看所有 TCP 监听连接及其对应进程名:Get-NetTCPConnection -State Listen | ForEach-Object { $p = $_.OwningProcess; [PSCustomObject]@{Port=$_.LocalPort; ProcessName=(Get-Process -Id $p -ErrorAction SilentlyContinue).Name; State=$_.State} }
3、如需查看所有已建立的 TCP 连接,将 -State Listen 替换为 -State Established。
4、对 UDP 连接执行类似操作:Get-NetUDPConnection | ForEach-Object { $p = $_.OwningProcess; [PSCustomObject]@{Port=$_.LocalPort; ProcessName=(Get-Process -Id $p -ErrorAction SilentlyContinue).Name} }










