Nmap中-p-参数含义是什么?与--open搭配使用有何作用?
-p- 参数含义 Nmap默认仅扫描目标的1000个高频常用TCP端口,-p-是端口指定参数的特殊简写,等价于-p1-65535,作用是强制Nmap对目标全部65535个TCP端口执行探测,无端口范围遗漏。
在你执行的命令nmap -p- 10.10.57.197 --open中,该参数的作用就是跳过默认的1000端口扫描范围,覆盖10.10.57.197的所有TCP端口做探测。
-p- 与 --open 搭配使用的作用 首先明确--open参数的基础作用:对扫描输出做过滤,仅展示状态被明确判定为open的端口,自动隐藏closed(端口关闭)、filtered(端口被流量过滤设备拦截)、open|filtered(无法明确判定端口是开放还是被过滤)的非有效结果,压缩冗余输出。
两个参数搭配的核心目的:
- 避免漏报:TryHackMe等平台的靶场、CTF环境经常把敏感服务、题目相关服务部署在非常用的高位端口上,默认1000端口扫描完全覆盖不到这类端口,
-p-可以保证没有端口探测遗漏 - 提升效率:全端口扫描会产生数万条端口状态记录,搭配
--open过滤后,你不需要在海量的关闭、被过滤端口记录里手动查找有效开放端口,能直接拿到可用的服务入口信息
你观察到的参数增减带来的结果差异,本质是两个维度的规则变化导致的:
- 不加
-p-时扫描范围仅覆盖1000个常用端口,自然无法获取非常用端口的开放情况- 不加
--open时输出会包含所有被探测端口的状态,大量无效信息会干扰你定位真正的开放服务
官方参数说明可以直接在本地安装Nmap的环境下执行man nmap调取官方手册查看,两个参数的定义、行为都在手册中有明确标注,不需要依赖第三方网络资料。
内容的提问来源于stack exchange,提问作者josegp
相关产品推荐
相关产品推荐

