Skip to content

PoemMisty/CFData-WEB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CFData-Web

项目介绍

CFData-Web 是一个基于 Go 开发的 Cloudflare IP 测试与筛选工具,提供本地 Web/CLI,能够在浏览器/终端中查看扫描进度、测试结果、测速结果和导出数据,适合用于 Cloudflare 相关网络测试、节点筛选和研究验证场景。

image

项目说明(重构前内容)

本程序基于旧版本修改,主要内容如下:

  • 🛠 修复测试失败问题
  • 🚀 支持多次重复测速
  • 📊 全维度 CSV 导出
  • 🌐 支持非标反代测试

重构优化说明

在旧版本基础上,本版本对架构与实现进行了重构优化:添加CLI模式,后端拆分为多个职责模块,降低耦合并提升可维护性与扩展性;任务模型引入连接级会话状态与统一任务管理,修复并发与状态边界问题;同时完善错误处理机制,在关键流程中增加明确错误边界,并加入运行期资源保护,避免缓存误删与状态异常。

使用方法

1. 启动程序

编译完成后,直接运行对应平台的可执行文件即可。

例如 Win环境下:

直接打开cfdata-windows-amd64.exe,进入默认Web模式

进入 程序启动后会在终端输出本地监听地址和当前测速网址,例如:

服务启动于 http://localhost:13335
当前测速网址: speed.cloudflare.com/__down?bytes=99999999

随后在浏览器中打开对应地址即可进入 Web 界面。

终端运行

./cfdata-windows-amd64.exe -cli 进入CLI模式

此模式需要一点点基础,所以不做解释

2. 官方优选模式-Web

官方优选模式用于从 Cloudflare IP 段中扫描可用目标并继续做详细测试。大致流程如下:

  1. 选择 IPv4IPv6
  2. 选择测试端口
  3. 设置扫描并发数
  4. 设置延迟阈值
  5. 点击“开始扫描与测试”
  6. 等待扫描完成后,从数据中心汇总中选择目标数据中心继续详细测试
  7. 在详细测试结果中可对单个 IP 进行单点测速,且支持重复测速

3. 非标优选模式-Web

非标优选模式适合测试自定义目标,文件内容格式要求为每行一条:

1.2.3.4 443
5.6.7.8 8443
2606:4700::1111 443

使用步骤如下:

  1. 切换到“非标优选”模式
  2. 上传 .txt 文本文件
  3. 设置并发数、延迟阈值、是否开启测速、测速线程、TLS 模式、输出文件名、测速网址等参数
  4. 点击“开始扫描与测试”
  5. 等待程序完成延迟检测、可选测速以及结果导出
  6. 在前端查看结果表格,或直接读取生成的 CSV 文件

4. 恢复本地缓存--Web

界面右上角设置菜单中提供“恢复全部默认配置”选项。该功能会删除本地缓存的 ips-v4.txtips-v6.txtlocations.json 等文件,方便下次重新拉取最新数据。当前版本已增加运行任务保护,在有任务执行时不会直接清理缓存,避免影响正在进行的测试。

启动参数

程序支持以下 CLI 参数:

如果出现乱码,请携带-nocolor参数启动

默认行为: 不带 -cli 时启动 Web 服务;带 -cli 或 -cli=true 时进入 CLI 模式

注意: Go 的布尔参数必须写成 -cli 或 -cli=true,不能写成 -cli true(会导致后续参数被忽略) CLI 用法: ./combined_refactor_debug -cli -mode=official ...


通用参数
-h
  说明: 显示帮助信息
  默认: <空>
-port
  说明: Web服务运行端口
  默认: 13335
-user
  说明: Web 认证用户名(不设置则不启用认证)
  默认: <空>
-password
  说明: Web 认证密码(需同时设置 -user,否则不启用)
  默认: <空>
-cli
  说明: 是否启用命令行模式,不带时默认启动 Web(请用 -cli 或 -cli=true,不要写成 -cli true)
  默认: false
-mode
  说明: 运行模式:official 或 nsb
  默认: official
-threads
  说明: 扫描并发数
  默认: 100
-out
  说明: 输出文件名
  默认: ip.csv
-speedtest
  说明: 测速线程数,官方和非标共用
  默认: 5
-progress
  说明: 是否输出进度日志
  默认: true
-nocolor
  说明: 禁用颜色输出(cmd 等不支持 ANSI 的终端可开启避免乱码)
  默认: false
-url
  说明: 测速下载地址
  默认: speed.cloudflare.com/__down?bytes=99999999
-debug
  说明: 是否开启调试输出
  默认: false
-compactipv4
  说明: 精简本地 IPv4 地址库:按 /24 子网测 TCP:80 连通性并覆盖 ips-v4.txt
  默认: false
----------------------------------------
官方模式参数
-iptype
  说明: 官方模式 IP 类型:4 或 6
  默认: 4
-testport
  说明: 官方模式详细测试与测速端口
  默认: 443
-delay
  说明: 官方模式延迟阈值(毫秒)
  默认: 500
-dc
  说明: 指定数据中心;不填时自动选择最低延迟数据中心
  默认: <空>
-speedlimit
  说明: 官方模式测速达标结果上限;0 表示关闭官方测速
  默认: 0
-speedmin
  说明: 官方模式测速达标下限,单位 MB/s
  默认: 0.1
----------------------------------------
非标模式参数
-file
  说明: 非标模式输入文件路径
  默认: <空>
-tls
  说明: 非标模式是否启用 TLS
  默认: true

免责声明

本程序仅限用于学习与研究目的。请在下载后24小时内自行删除。使用本程序时,应自行遵守所在地区的法律法规。作者不对使用本程序所产生的任何后果承担责任。下载或使用本程序即视为已阅读、理解并同意上述声明。

致谢-代码参考

  • TG频道 CF中转IP:CF_NAT
  • GitHub Kwisma/iptest:iptest

License

Copyright (C) 2026 PoemMisty

This project is licensed under the GNU General Public License v3.0 or later. See the LICENSE file for details.

About

CFData-Web 是一个基于 Go 开发的 Cloudflare IP 测试与筛选工具

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors