快速发现Windows系统监听或开放端口
Netstat命令基础
Netstat命令主要用于 显示协议统计信息和当前 TCP/IP 网络连接。
其格式如下:
NETSTAT [-a] [-b] [-e] [-n] [-o] [-p proto] [-r] [-s] [-v] [interval]
下面简单说明各个参数的含义:
-a 显示所有连接和监听端口。
-b 显示包含于创建每个连接或监听端口的可执行组件。在某些情况下已知可执行组件拥有多个独立组件,并且在这些情况下包含于创建连接或监听端口的组件序列被显示。这种情况下,可执行组件名在底部的 [] 中,顶部是其调用的组件,等等,直到 TCP/IP 部分。注意此选项可能需要很长时间,如果没有足够权限可能失败。
-e 显示以太网统计信息。此选项可以与 -s选项组合使用。
-n 以数字形式显示地址和端口号。
-o 显示与每个连接相关的所属进程 ID。
-p proto 显示 proto 指定的协议的连接;proto 可以是下列协议之一: TCP、UDP、TCPv6 或UDPv6。如果与 -s 选项一起使用以显示按协议统计信息,proto 可以是下列协议之一: IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 或 UDPv6。
-r 显示路由表。
-s 显示按协议统计信息。默认地,显示 IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的统计信息;-p 选项用于指定默认情况的子集。
-v 与 -b 选项一起使用时将显示包含于为所有可执行组件创建连接或监听端口的组件。
interval 重新显示选定统计信息,每次显示之间暂停时间间隔(以秒计)。按 CTRL+C 停止重新显示统计信息。如果省略,netstat 显示当前配置信息(只显示一次)。
使用Netstat发现计算机上的监听或开放端口
打开命令提示符窗口,并键入:
C:WINDOWS>netstat -an |find /i "listening"
如果用户想要将显示结果存到一个文件中(通常是文本文件),以备日后参考,可以使用重定向命令,如“>”或“>>”:
netstat -an |find /i "listening" > c:openports.txt
我们可以将“listening”改为“established”,查看一下计算机到底通过哪些端口通信:
C:WINDOWS>netstat -an |find /i "established"
注意:在Windows XP和Windows Server2003中,如果用户要得到与每个连接相关的所有自有进程的ID列表,可以输入执行“NETSTAT -O”:
C:WINDOWS>netstat -ao |find /i "listening"
TCP pro1:epmap pro1.dpetri.net:0 LISTENING 860
TCP pro1:microsoft-ds pro1.dpetri.net:0 LISTENING 4
TCP pro1:1025 pro1.dpetri.net:0 LISTENING 908
TCP pro1:1084 pro1.dpetri.net:0 LISTENING 596
TCP pro1:2094 pro1.dpetri.net:0 LISTENING 596
TCP pro1:3389 pro1.dpetri.net:0 LISTENING 908
TCP pro1:5000 pro1.dpetri.net:0 LISTENING 1068
用户可以访问http://www.petri.co.il/download_free_reskit_tools.htm.
使用PULIST来找到PID和使用它的进程。例如,我们可能会发现计算机在TCP端口80上有一个与远程IP地址的连接,但是计算机上并没有打开Internet Explorer或其它的浏览器窗口。为了查看到底是什么进程在使用
这个会话,我们使用如下的命令:
C:WINDOWS>netstat -no
Active Connections
Proto Local Address Foreign Address State PID
TCP 192.168.0.100:2496 212.179.4.7:80 ESTABLISHED 1536
然后使用带有“FIND”参数的“PULIST”命令:
C:WINDOWS>pulist |find /i "1536"
Process PID User
LUCOMS~1.EXE 1536 DPETRIdanielp
可以看出, DANIELP在运行着 LUCOMS~1.EXE,这是Symantec Live Update进程。
要查看所有打开的、已建立的、关闭的以及使用的端口,可以使用如下的命令:
C:WINDOWS>netstat -a
在Windows XP或2003中,我们可以使用-o开关:
C:WINDOWS>netstat -ao
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
· 面试官:你是如何进行SQL调优的?