我发现最详细的最好理解的就是官网的解释文档,不是别人写的什么超级详细的文档啥的,相反官网的文档更容易理解https://nmap.org/man/zh/man-host-discovery.html
用法:nmap [扫描类型] [选项] {目标规范}
 目标规范:
 可以传递主机名、IP 地址、网络等。
 例如:scanme.nmap.org、microsoft.com/24、192.168.0.1;10.0-255.0-255.1-254
 -iL <inputfilename>:主机/网络
 列表中的输入 -iR <num hosts>:选择随机目标
 --exclude <host1[,host2][,host3],...>:排除主机/网络
 --excludefile <exclude_file>:从文件中
 排除列表 主机发现:
 -sL:列表扫描 - 只需列出要扫描
 的目标 -sP:Ping 扫描 - 只需确定主机是否在线
 即可 -P0:将所有主机视为联机 -- 跳过主机发现
 -PS/PA/PU [portlist]:对给定端口的 TCP SYN/ACK 或 UDP 发现探测
 -PE/PP/PM: ICMP 回显、时间戳和网络掩码请求发现探测
 -n/-R:从不进行 DNS 解析/始终解析 [默认:有时解析]
 扫描技术:
 -sS/sT/sA/sW/sM:TCP SYN/Connect()/ACK/Window/Maimon 扫描
 -sN/sF/sX:TCP 空、FIN 和圣诞节扫描
 --scanflags <flags>:自定义 TCP 扫描标志
 -sI <zombie host[:p robeport]>: Idlescan
 -sO:IP 协议扫描
 -b <ftp 中继 host>:FTP 退回扫描
 端口规格和扫描顺序:
 -p <端口范围>:仅扫描指定端口
 例如:-p22;-P1-65535;-p U:53,111,137,T:21-25,80,139,8080
 -F:快速 - 仅扫描 nmap-services 文件中列出的端口)
 -r:按顺序扫描端口 - 不要随机化
 服务/版本检测:
 -sV:探测打开端口以确定服务/版本信息
 --version-light:限制为最有可能的探测,以便更快地识别
 --version-all:尝试每个探测器进行版本检测
 --version-trace:显示详细的版本扫描活动(用于调试)
 操作系统检测:
 -O:启用操作系统检测
 --osscan-limit:将操作系统检测限制在有希望的目标
 --osscan-guess:更积极地
 猜测操作系统 时序和性能:
 -T[0-6]:设置计时模板(越高越快)
 --min-hostgroup/max-hostgroup <size>:并行主机扫描组大小
 --min-parallelism/max-parallelism <numprobes>:探测并行化
 --min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout <msec>:指定
 探测往返时间。
 --host-timeout <msec>:长时间
 后放弃目标 --scan-delay/--max-scan-delay <msec>:调整探测器
 之间的延迟 FIREWALL/IDS EVASION AND SPOOFING:
 -f;--mtu <val>:分段数据包(可选,带给定的 MTU)
 -D <decoy1,decoy2[,ME],...>:用诱饵掩盖扫描
 -S <IP_Address>:欺骗源地址
 -e <iface>:使用指定的接口
 -g/--source-port <portnum>:使用给定的端口号
 --data-length <num>:将随机数据附加到发送的数据包
 --ttl <val>:设置 IP 生存时间字段
 --spoof-mac <mac 地址、前缀或供应商名称>: 欺骗您的 MAC 地址
 输出:
 -oN/-oX/-oS/-oG <file>:输出扫描结果为正常、XML、s|<rIpt kIddi3
 和 Grepable 格式,分别设置为给定的文件名。
 -oA <basename>:一次
 以三种主要格式输出 -v:增加详细级别(使用两次以获得更多效果)
 -d[level]:设置或增加调试级别(最多 9 有意义)
 --packet-trace:显示发送和接收
 的所有数据包 --iflist:打印主机接口和路由(用于调试)
 --append-output:追加到而不是 clobber 指定的输出文件
 --resume <filename>:恢复中止的扫描
 --stylesheet <path/URL>:用于将 XML 输出转换为 HTML
 的 XSL 样式表 --no-stylesheet:阻止 Nmap 将 XSL 样式表与 XML 输出
 关联 MISC:
 -6:启用 IPv6 扫描
 -A:启用操作系统检测和版本检测
 --datadir <dirname>:指定自定义 Nmap 数据文件位置
 --send-eth/--send-ip:使用原始以太网帧或 IP 数据包发送数据包
 --privileged:假设用户具有完全权限
 -V:打印版本号
 -h:打印此帮助摘要页面。
 示例:
 nmap -v -A scanme.nmap.org
 nmap -v -sP 192.168.0.0/16 10.0.0.0/8
 nmap -v -iR 10000 -P0 -p 80


















