KSubdomain 是一款基于无状态技术的子域名爆破工具,带来前所未有的扫描速度和极低的内存占用。 告别传统工具的效率瓶颈,体验闪电般的 DNS 查询,同时拥有可靠的状态表重发机制,确保结果的完整性。 KSubdomain 支持 Windows、Linux 和 macOS,是进行大规模DNS资产探测的理想选择。

test 命令可探测本地网卡的最大发送速度。KSubdomain 在速度和效率上远超同类工具。以下是在 4 核 CPU、5M 带宽网络环境下,使用 10 万字典进行的对比测试:
| 工具 | 扫描模式 | 发包方式 | 命令 | 耗时 | 成功个数 | 备注 |
|---|---|---|---|---|---|---|
| KSubdomain | 验证 | pcap 网卡发包 | time ./ksubdomain v -b 5m -f d2.txt -o k.txt -r dns.txt --retry 3 --np |
~30 秒 | 1397 | --np 关闭实时打印 |
| massdns | 验证 | pcap/socket | time ./massdns -r dns.txt -t A -w m.txt d2.txt --root -o L |
~3 分 29 秒 | 1396 | |
| dnsx | 验证 | socket | time ./dnsx -a -o d.txt -r dns.txt -l d2.txt -retry 3 -t 5000 |
~5 分 26 秒 | 1396 | -t 5000 设置 5000 并发 |
结论: KSubdomain 的速度是 massdns 的 7 倍,是 dnsx 的 10 倍 以上!
KSubdomain 2.0 版本引入了多项底层优化,进一步压榨性能潜力:
sync.Pool 管理常用数据结构,减少内存分配和碎片。libpcap 依赖:libpcap,通常无需额外操作。若遇问题,请尝试安装 libpcap-dev 或 libcap-devel 包。libpcap,无需安装。chmod +x ksubdomain确保您已安装 Go 1.23 版本和 libpcap 环境。
go install -v github.com/boy-hack/ksubdomain/v2/cmd/ksubdomain@latest
# 二进制文件通常位于 $GOPATH/bin 或 $HOME/go/bin
KSubdomain - 极速无状态子域名爆破工具
用法:
ksubdomain [全局选项] 命令 [命令选项] [参数...]
版本:
查看版本信息: ksubdomain --version
命令:
enum, e 枚举模式: 提供主域名进行爆破
verify, v 验证模式: 提供域名列表进行验证
test 测试本地网卡最大发包速度
help, h 显示命令列表或某个命令的帮助
全局选项:
--help, -h 显示帮助 (默认: false)
--version, -v 打印版本信息 (默认: false)
验证模式用于快速检查提供的域名列表的存活状态。
./ksubdomain verify -h # 查看验证模式帮助,可缩写 ksubdomain v
USAGE:
ksubdomain verify [command options] [arguments...]
OPTIONS:
--filename value, -f value 验证域名的文件路径
--domain value, -d value 域名
--band value, -b value 宽带的下行速度,可以5M,5K,5G (default: "3m")
--resolvers value, -r value dns服务器,默认会使用内置dns
--output value, -o value 输出文件名
--output-type value, --oy value 输出文件类型: json, txt, csv (default: "txt")
--silent 使用后屏幕将仅输出域名 (default: false)
--retry value 重试次数,当为-1时将一直重试 (default: 3)
--timeout value 超时时间 (default: 6)
--stdin 接受stdin输入 (default: false)
--not-print, --np 不打印域名结果 (default: false)
--eth value, -e value 指定网卡名称
--wild-filter-mode value 泛解析过滤模式[从最终结果过滤泛解析域名]: basic(基础), advanced(高级), none(不过滤ne")
--predict 启用预测域名模式 (default: false)
--help, -h show help (default: false)
# 示例:
# 验证多个域名解析
./ksubdomain v -d xx1.example.com -d xx2example.com
# 从文件读取域名进行验证,保存为 output.txt
./ksubdomain v -f domains.txt -o output.txt
# 从标准输入读取域名,带宽限制为 10M
cat domains.txt | ./ksubdomain v --stdin -b 10M
# 启用预测模式,泛解析过滤,保存为csv
./ksubdomain v -f domains.txt --predict --wild-filter-mode advanced --oy csv -o output.csv
枚举模式基于字典和预测算法爆破指定域名下的子域名。
./ksubdomain enum -h # 查看枚举模式帮助,可简写 ksubdomain e
USAGE:
ksubdomain enum [command options] [arguments...]
OPTIONS:
--domain value, -d value 域名
--band value, -b value 宽带的下行速度,可以5M,5K,5G (default: "3m")
--resolvers value, -r value dns服务器,默认会使用内置dns
--output value, -o value 输出文件名
--output-type value, --oy value 输出文件类型: json, txt, csv (default: "txt")
--silent 使用后屏幕将仅输出域名 (default: false)
--retry value 重试次数,当为-1时将一直重试 (default: 3)
--timeout value 超时时间 (default: 6)
--stdin 接受stdin输入 (default: false)
--not-print, --np 不打印域名结果 (default: false)
--eth value, -e value 指定网卡名称
--wild-filter-mode value 泛解析过滤模式[从最终结果过滤泛解析域名]: basic(基础), advanced(高级), none(不过滤) (default: "none")
--predict 启用预测域名模式 (default: false)
--filename value, -f value 字典路径
--ns 读取域名ns记录并加入到ns解析器中 (default: false)
--help, -h show help (default: false)
# 示例:
# 枚举多个域名
./ksubdomain e -d example.com -d hacker.com
# 从文件读取字典枚举,保存为 output.txt
./ksubdomain e -f sub.dict -o output.txt
# 从标准输入读取域名,带宽限制为 10M
cat domains.txt | ./ksubdomain e --stdin -b 10M
# 启用预测模式枚举域名,泛解析过滤,保存为csv
./ksubdomain e -d example.com --predict --wild-filter-mode advanced --oy csv -o output.csv
-b 参数指定你的公网下行带宽 (如 -b 10m), KSubdomain 会自动优化发包速率。./ksubdomain test 测试当前环境的最大理论发包速率。--retry 和 --timeout 参数以获得最佳效果。当 --retry 为 -1 时,将无限重试直至所有请求成功或超时。txt (实时输出), json (完成后输出), csv (完成后输出)。通过 -o 指定文件名后缀即可 (如 result.json)。KSubdomainConfig: 指定配置文件的路径。$ claude mcp add ksubdomain \
-- python -m otcore.mcp_server <graph>