要查询服务器(本机或远程)的服务端口信息,可分为本地端口查询 和远程端口扫描 两类场景,以下是详细方法:
1、命令提示符(CMD)或 PowerShell:
netstat -ano | findstr "LISTENING"
-a
:显示所有连接和监听端口
-n
:以数字形式显示地址和端口
-o
:显示占用端口的进程 PID
- 示例:netstat -ano | findstr :80
(查看 80 端口)
2、任务管理器:
- 按Ctrl+Shift+Esc
→ 进入“详细信息”选项卡 → 右键点击列标题 → 勾选PID 和命令行 → 根据netstat
得到的 PID 定位进程。
1、使用netstat
命令:
netstat -tuln # 查看所有监听端口
-t
:TCP 端口
-u
:UDP 端口
-l
:仅显示监听中的端口
-n
:禁用域名解析(显示 IP 和端口号)
2、使用ss
命令(推荐,更高效):
ss -tuln # 效果同上
3、查看端口对应进程:
lsof -i :端口号 # 如 lsof -i :80
1. 使用telnet
(测试单个端口)
telnet 目标IP 端口号
示例:
telnet 192.168.1.100 22
结果说明:
- 连接成功 → 端口开放(显示空白或欢迎信息)
- 连接失败 → 端口关闭或被防火墙拦截
> 注:若系统未安装 telnet,Windows 需在“控制面板→程序→启用或关闭 Windows 功能”中启用;Linux/macOS 用sudo apt install telnet
安装。
2. 使用nmap
(专业扫描工具,需安装)
nmap -sT -p 端口范围 目标IP
常用参数:
-sT
:TCP 连接扫描
-p 80
:扫描单个端口
-p 1-1000
:扫描端口范围
-F
:快速扫描常见 100 个端口
示例:
nmap -sT -p 22,80,443 192.168.1.100 # 扫描指定端口 nmap -sT 192.168.1.100 # 扫描常见端口
>安装 nmap:
> - Windows:下载官网安装包 [nmap.org](https://nmap.org/download.html)
> - Linux:sudo apt install nmap
> - macOS:brew install nmap
3. 使用nc
(Netcat)
nc -zv 目标IP 端口范围
示例:
nc -zv 192.168.1.100 20-25 # 扫描20~25端口
-z
:无数据传输(仅扫描)
-v
:显示详细信息
1、Windows:
TCPView(微软官方工具):实时查看端口和进程。
Advanced IP Scanner:扫描局域网设备开放端口。
2、跨平台:
Wireshark:网络抓包分析(可过滤端口流量)。
Zenmap:nmap 的图形界面(支持拓扑图)。
1、端口显示监听但外部无法访问?
- 检查防火墙(Windows 防火墙、Linux 的iptables
/ufw
)。
- 云服务器需配置安全组规则(如阿里云、AWS 控制台)。
2、如何查看端口对应服务?
- Linux:grep 端口号 /etc/services
- 通用:结合netstat
和进程名(如nginx
默认监听 80 端口)。
通过上述方法,你可以快速定位本地服务端口或探测远程服务器的开放端口,并根据结果配置服务或排查网络问题。
文章摘自:https://idc.huochengrm.cn/fwq/12622.html
评论
须念之
回复服务器查询可通过命令行工具如`ping`或在线服务,端口可查系统设置或端口映射表。