2.1 KiB
2.1 KiB
katproxy
Minimal proxy list aggregator and live TCP latency prober.
Overview
katproxy collects proxies from multiple public repositories (monosans/proxy-list, TheSpeedX/PROXY-List, hookzof/socks5_list), normalizes them, and runs concurrent TCP socket checks to verify responsiveness and record round-trip latency.
The backend runs as a lightweight daemon on an Android tablet (Termux) exposed via Cloudflare Tunnel. The frontend is a static web app hosted on Cloudflare Pages.
API Reference
Base URL: https://katproxy-api.oiupoyt.space
| Method | Endpoint | Parameters | Description |
|---|---|---|---|
GET |
/api/health |
— | Service uptime and status |
GET |
/api/stats |
— | Total count, alive count, protocol breakdown, avg latency |
GET |
/api/proxies |
protocol, alive, search, sort, limit, page |
Filtered and paginated proxy list |
GET |
/api/raw |
protocol, alive, format (ip:port or url) |
Plaintext list for shell scripts and curl |
POST |
/api/refresh |
— | Trigger upstream re-fetch and verification cycle |
Usage Examples
# Fetch fastest alive SOCKS5 proxies
curl "https://katproxy-api.oiupoyt.space/api/proxies?protocol=socks5&alive=true&limit=10"
# Stream raw IP:PORT pairs
curl -s "https://katproxy-api.oiupoyt.space/api/raw?protocol=socks5&alive=true"
Architecture
- Backend (
/backend): High-performance Rust (Axum + Tokio) service running on port5050. Features non-blocking TCP socket prober and automated refresh background worker. - Frontend (
/public): Vanilla JavaScript, CSS, and HTML with JetBrains Mono typography, auto-refresh countdown, and one-click copy actions. - Tunnel: Managed by
cloudflaredroutingkatproxy-api.oiupoyt.spacetolocalhost:5050.
Tablet Service Management
# Check status and recent logs
~/katproxy-backend/status.sh
# Start or restart daemon
~/katproxy-backend/start.sh
# Stop daemon
~/katproxy-backend/stop.sh
License
MIT