Masscan 详细使用教程

Masscan 详细使用教程
King MoonMasscan 是一个高效的网络扫描工具,能够快速扫描大量 IP 地址。以下是 Masscan 的详细使用教程,包括所有主要参数和选项。
1. 安装 Masscan
在使用 Masscan 之前,您需要先安装它。可以通过以下命令在 Linux 系统中安装:
1 | sudo apt-get install masscan |
或者从源代码编译:
1 | sudo apt-get --assume-yes install git make gcc |
2. 基本用法
Masscan 的基本语法如下:
1 | masscan <ip范围> -p <端口> |
示例:扫描整个 192.168.1.0/24 网段的 80 端口。
1 | masscan 192.168.1.0/24 -p80 |
3. 常用参数
以下是 Masscan 的常用参数及其说明:
3.1 扫描目标
<ip范围>: 指定要扫描的 IP 地址范围,例如192.168.1.0/24或10.0.0.1-10.0.0.254。
3.2 扫描端口
-p <端口>: 指定要扫描的端口,可以是单个端口、多个端口(用逗号分隔)或端口范围。1
2
3-p80 # 扫描80端口
-p80,443 # 扫描80和443端口
-p1-100 # 扫描1到100的所有端口
3.3 输出格式
-oX <文件名>: 输出为 XML 格式。1
masscan -p80 -oX results.xml
-oJ <文件名>: 输出为 JSON 格式。1
masscan -p80 -oJ results.json
-oG <文件名>: 输出为 grepable 格式。1
masscan -p80 -oG results.grep
-oL <文件名>: 输出为普通文本格式(默认)。
3.4 扫描速率
--rate <速率>: 设置每秒发送的包数量,默认值为 10000。1
masscan --rate=1000 <ip范围> -p<端口>
3.5 网络接口
--interface <接口名>: 指定要使用的网络接口。1
masscan --interface=eth0 <ip范围> -p<端口>
3.6 排除特定 IP
--exclude <ip地址>: 排除特定 IP 地址或范围。1
masscan <ip范围> -p<端口> --exclude <排除的IP>
4. 高级选项
4.1 TCP 标志设置
--tcp-flags <flags>: 设置 TCP 标志,例如 SYN、ACK 等。
4.2 自定义数据包大小
--packet-size <大小>: 设置自定义数据包大小(默认是无)。
4.3 自定义源端口
--source-port <端口>: 指定源端口。
4.4 DNS 查询
--dns-server <IP>: 指定 DNS 查询服务器。
示例命令
以下是一些示例命令,展示如何结合使用这些参数:
1 | # 扫描整个子网的80和443端口,并输出为XML格式 |
进阶命令
1 | # 扫描cn2 gia开放443端口的ip |
调用he.net查询ASN IP段,以下是一些常用的ASN
1 | #CN2 |
安装python依赖
1 | pip install requests BeautifulSoup4 |
使用python查询asn的ip段
1 | import requests |
注意事项
- 法律合规:在进行网络扫描时,请确保遵循相关法律法规,避免对目标网络造成影响。
- 防火墙配置:在某些情况下,防火墙可能会阻止 Masscan 的扫描请求,因此需要进行适当的配置。



