MCPcopy Index your code
hub / github.com/BeiyanYunyi/CloudflareSpeedTest-Rust

github.com/BeiyanYunyi/CloudflareSpeedTest-Rust @v2.2.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release v2.2.2 ↗ · + Follow
31 symbols 52 edges 19 files 12 documented · 39% updated 3y agov2.2.2 · 2022-10-03★ 444 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

⚡ Cloudflare Speed Test in Rust

GitHub stars GitHub license

Cloudflare Speed Test written in Rust, for my practice.

🔖 Download Release

Here

📦 Choose file

OS File to download
Windows cloudflare-speed-test-rust_[Version]_x86_64-pc-windows-gnu.zip
Linux cloudflare-speed-test-rust_[Version]_x86_64-unknown-linux-musl.tar.xz or cloudflare-speed-test-rust_[Version]_x86_64-unknown-linux-musl.tar.gz
Mac OS cloudflare-speed-test-rust_[Version]_x86_64-apple-darwin.zip

🏭 Build it yourself

git clone https://github.com/lixiang810/cloudflare-speed-test-rust
cd cloudflare-speed-test-rust
cargo build -r
sudo ./target/release/cfst # sudo if you're using Linux

🔧 Use custom IP file

Format

IPv4

173.245.48.0/20
141.101.64.0/18
131.0.72.0/22
...

IPv6

2606:4700:3000::/48
2606:4700:3001::/48
2606:4700:3002::/48
2606:4700:3003::/48
2606:4700:3004::/48
...

POSIX

sudo cfst -c <FILE>

Windows

cfst.exe -c <FILE>

❤️ Thanks

  • IBMYes(deleted)-- bash and bat
  • better-cloudflare-ip(deleted)-- bash and bat
  • CloudflareSpeedTest -- Go

🔒 Privacy

This program will and will only communicate with the Cloudflare server with HTTPS and ICMP Protocol.

🤯 Disclaimer

Do anything with it at your own risk.

📝 Special Notes

For IPv4

There are two copies of IPv4 IPs built into the program, one of which will be consistent with Cloudflare's IP list. The other one was sent to me by a user, and may be of higher quality than Cloudflare's official list, but its access and security are not yet clear, so use at your own risk.

For IPv6

As with IPv4, the project supports getting available IPs from Cloudflare's IP list, but the vast majority of IPs in this IPv6 list are not available.

I got a list from CloudflareSpeedTest and hardcoded it into the program. This list is very available, but its access and security are not clear.

If you are concerned about IP address security, you can let the program get IPs from Cloudflare (recommended test rounds are set to 20 or more), and if you want to be more efficient, you can let the program use the built-in IP list.

🧑‍🏭 LICENSE

AGPL-3.0

Core symbols most depended-on inside this repo

get_args
called by 3
src/utils/args.rs
input_num_of_ips
called by 2
src/utils/get_all_ips.rs
bulk_ping
called by 2
src/utils/bulk_ping.rs
en_us
called by 2
src/i18n/en_us.rs
download
called by 1
src/utils/download.rs
choose_ipv4_ips
called by 1
src/utils/get_all_ips.rs
get_all_ips_v4
called by 1
src/utils/get_all_ips.rs
get_all_ips_v6
called by 1
src/utils/get_all_ips.rs

Shape

Function 16
Class 9
Method 6

Languages

Rust100%

Modules by API surface

src/utils/ipv6_range.rs7 symbols
src/i18n/interface.rs5 symbols
src/utils/get_all_ips.rs4 symbols
src/utils/real_delay.rs3 symbols
src/utils/args.rs2 symbols
src/controller/download_controller.rs2 symbols
src/utils/ping.rs1 symbols
src/utils/download.rs1 symbols
src/utils/bulk_ping.rs1 symbols
src/main.rs1 symbols
src/i18n/zh_cn.rs1 symbols
src/i18n/en_us.rs1 symbols

For agents

$ claude mcp add CloudflareSpeedTest-Rust \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact