修改自:https://github.com/projectdiscovery/cdncheck 增加了国内CDN IP判断,及大部分主流CDN 域名判断、主流云资产识别
- Baidu-加速乐 (创宇云盾)
- 网宿 CDN
- 腾讯云CDN
- 阿里云 CDN
- 百度智能云CDN
运行时通过 sources_data.go 将根目录 sources_data.json 嵌入到二进制中,因此当前检测结果以 sources_data.json 为准。
如要增加其它 CDN、WAF、云厂商或域名后缀,请先更新 sources_data.json 并重新编译。
cmd/generate-index/provider.yaml 保留了上游 projectdiscovery/cdncheck 的生成入口,但当前并不能完整表达本仓库里的国内 CDN、云厂商、域名后缀和历史整理数据。后续如果要恢复可重复生成链路,应先把 sources_data.json 中的国内数据回迁到明确的 provider registry / feed 配置中。
后面仅更新sources_data.json 不再更新Releases,请自行编译
cmd/sync-sources 可以把 winezer0/cdninfo 的 assets/sources.json 安全转换为本项目当前的 sources_data.json 结构。当前只导入 cdn.ip、waf.ip、cloud.ip 三类 CIDR 数据,不导入 CNAME、ASN 或 keys。
go run ./cmd/sync-sources \
-base sources_data.json \
-cdninfo /path/to/cdninfo/assets/sources.json \
-output /tmp/sources_data.generated.json \
-report /tmp/sources_data.generated.report.json同步过程会跳过非法 CIDR、重复 CIDR 和跨类别精确冲突,并把原因写入 report。生成文件通过审核后再替换根目录 sources_data.json。
推荐先跑完整 harness。该命令不依赖公网 DNS,会覆盖单元测试、嵌入数据解析、CLI 功能样例和 JSONL 输出格式:
make harness也可以只跑默认单元测试:
go test ./...离线功能测试会先构建当前分支的 cdncheck 二进制,再用固定 IP 样例验证 CLI 输出、匹配/过滤和排除逻辑:
make functional需要运行实时 DNS 检查时,显式打开 live 测试:
CDNCHECK_LIVE_TESTS=1 go test .