{"id":28714429,"url":"https://github.com/cmliu/cf-workers-checkproxyip","last_synced_at":"2025-06-15T01:07:10.573Z","repository":{"id":292549175,"uuid":"981203449","full_name":"cmliu/CF-Workers-CheckProxyIP","owner":"cmliu","description":"部署在 Cloudflare Workers 上的轻量级 ProxyIP 验证工具。它能够快速、准确地检测代理IP的可用性，帮助用户筛选出有效的代理服务器。","archived":false,"fork":false,"pushed_at":"2025-05-29T08:43:00.000Z","size":465,"stargazers_count":42,"open_issues_count":0,"forks_count":48,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-29T09:49:24.982Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://Check.ProxyIP.CMLiussss.net","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cmliu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-10T15:16:34.000Z","updated_at":"2025-05-29T08:43:03.000Z","dependencies_parsed_at":"2025-05-10T17:49:47.455Z","dependency_job_id":null,"html_url":"https://github.com/cmliu/CF-Workers-CheckProxyIP","commit_stats":null,"previous_names":["cmliu/cf-workers-checkproxyip"],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/cmliu/CF-Workers-CheckProxyIP","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cmliu%2FCF-Workers-CheckProxyIP","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cmliu%2FCF-Workers-CheckProxyIP/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cmliu%2FCF-Workers-CheckProxyIP/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cmliu%2FCF-Workers-CheckProxyIP/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cmliu","download_url":"https://codeload.github.com/cmliu/CF-Workers-CheckProxyIP/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cmliu%2FCF-Workers-CheckProxyIP/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259906123,"owners_count":22929973,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-15T01:07:09.860Z","updated_at":"2025-06-15T01:07:10.532Z","avatar_url":"https://github.com/cmliu.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🌐 CF-Workers-CheckProxyIP\n![CF-Workers-CheckProxyIP](./demo.png)\n\u003e 基于 Cloudflare Workers 的高性能 ProxyIP 验证服务\n\n[![Cloudflare Workers](https://img.shields.io/badge/Cloudflare-Workers-orange?style=flat-square\u0026logo=cloudflare)](https://workers.cloudflare.com/)\n[![License](https://img.shields.io/badge/License-MIT-blue?style=flat-square)](LICENSE)\n[![GitHub Stars](https://img.shields.io/github/stars/cmliu/CF-Workers-CheckProxyIP?style=flat-square)](https://github.com/cmliu/CF-Workers-CheckProxyIP)\n\n## 📖 项目简介\n\nCF-Workers-CheckProxyIP 是一个部署在 Cloudflare Workers 上的轻量级 ProxyIP 验证工具。它能够快速、准确地检测代理IP的可用性，帮助用户筛选出有效的代理服务器。\n\n### ✨ 主要特性\n\n- 🚀 **高性能**：基于 Cloudflare Workers 边缘计算，全球低延迟\n- 🔍 **智能检测**：自动识别IPv4/IPv6地址和域名\n- 🌍 **全球部署**：利用 Cloudflare 全球网络，就近检测\n- 📱 **响应式界面**：支持桌面和移动设备访问\n- ⚡ **实时结果**：秒级响应，即时获取检测结果\n- 🔒 **安全可靠**：无需存储用户数据，保护隐私安全\n\n## 🤔 什么是 ProxyIP ？\n\n### 📖 ProxyIP 概念\n\n在 Cloudflare Workers 环境中，ProxyIP 特指那些能够成功代理连接到 Cloudflare 服务的第三方 IP 地址。\n\n### 🔧 技术原理\n\n根据 Cloudflare Workers 的 [TCP Sockets 官方文档](https://developers.cloudflare.com/workers/runtime-apis/tcp-sockets/) 说明，存在以下技术限制：\n\n\u003e ⚠️ **重要限制**  \n\u003e Outbound TCP sockets to [Cloudflare IP ranges](https://www.cloudflare.com/ips/) are temporarily blocked, but will be re-enabled shortly.\n\n这意味着 Cloudflare Workers 无法直接连接到 Cloudflare 自有的 IP 地址段。为了解决这个限制，需要借助第三方云服务商的服务器作为\"跳板\"：\n\n```\nCloudflare Workers → ProxyIP 服务器 → Cloudflare 服务\n    (发起请求)      (第三方代理)      (目标服务)\n```\n\n通过第三方服务器反向代理 Cloudflare 的 443 端口，实现 Workers 对 Cloudflare 服务的访问。\n\n### 🎯 实际应用场景\n\n\u003e **由于上述限制**，[**edgetunnel**](https://github.com/cmliu/edgetunnel)、[**epeius**](https://github.com/cmliu/epeius) 等项目，在尝试访问使用 Cloudflare CDN 服务的网站时，会因为无法建立到 Cloudflare IP 段的连接而导致访问失败。\n\u003e \n\u003e **解决方案：** 通过配置有效的 ProxyIP，这些项目可以绕过限制，成功访问托管在 Cloudflare 上的目标网站，确保服务的正常运行。\n\n### ✅ 有效 ProxyIP特征\n\n一个有效的 ProxyIP 必须具备以下特征：\n\n- **网络连通性：** 能够成功建立到指定端口（通常为 443）的 TCP 连接\n- **代理功能：** 具备反向代理 Cloudflare IP 段的 HTTPS 服务能力\n\n\u003e 💡 **提示：** 本检测服务通过模拟真实的网络连接来验证 ProxyIP 的可用性，帮助您快速识别和筛选出稳定可靠的代理服务器。\n\n## 🚀 部署方式\n\n- **Workers** 部署：复制 [_worker.js](https://github.com/cmliu/CF-Workers-CheckProxyIP/blob/main/_worker.js) 代码，保存并部署即可\n- **Pages** 部署：`Fork` 后 `连接GitHub` 一键部署即可\n\n## 📝 使用方法\n\n### 网页界面\n\n直接访问你的 Worker 地址，使用友好的网页界面进行检测：\n\n```\nhttps://check.proxyip.cmliussss.net\n```\n\n### API 接口\n\n#### 🔗 检查单个 ProxyIP\n- `proxyip` 参数支持 IPv4、IPv6 地址和域名，端口号可选，不填默认为 443。\n```bash\n# 检查带端口的 IP\ncurl \"https://check.proxyip.cmliussss.net/check?proxyip=1.2.3.4:443\"\n\n# 检查不带端口的 IP（默认使用443端口）\ncurl \"https://check.proxyip.cmliussss.net/check?proxyip=1.2.3.4\"\n\n# 检查 IPv6 地址\ncurl \"https://check.proxyip.cmliussss.net/check?proxyip=[2001:db8::1]:443\"\n\n# 检查域名\ncurl \"https://check.proxyip.cmliussss.net/check?proxyip=example.com:443\"\n```\n\n- 设置 `TOKEN` 变量后，需要在路径中添加 `token=your-secret-token` 才能使用接口。\n\n```bash\ncurl \"https://check.proxyip.cmliussss.net/check?proxyip=1.2.3.4:443\u0026token=your-secret-token\"\n```\n\n#### 📄 响应格式\n\n```json\n{\n  \"success\": true,\n  \"proxyIP\": \"1.2.3.4\",\n  \"portRemote\": 443,\n  \"colo\": \"HKG\",\n  \"responseTime\": \"1320ms\",\n  \"message\": \"第3次验证有效ProxyIP\",\n  \"timestamp\": \"2025-06-03T17:21:25.045Z\"\n}\n```\n\n#### 🔧 参数说明\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| `proxyip` | string | ✅ | 要检测的代理IP地址，支持IPv4、IPv6和域名 |\n| `token` | string | ❌ | 设置 `TOKEN` 变量后，需要在路径中添加 `token=your-secret-token` 才能使用接口。 |\n\n#### 📊 响应字段\n\n| 字段 | 类型 | 说明 |\n|------|------|------|\n| `success` | boolean | 代理IP是否可用 |\n| `proxyIP` | string | 检测的IP地址（失败时为 -1） |\n| `portRemote` | number | 使用的端口号（失败时为 -1） |\n| `colo` | string | 执行此次请求的Cloudflare机房代码 |\n| `responseTime` | string | 响应时间（成功时为毫秒，失败时为 -1） |\n| `message` | string | 检测结果说明信息 |\n| `timestamp` | string | 检测时间戳 |\n\n## 🔧 环境变量配置\n\n| 变量名 | 说明 | 示例 | 必需 |\n|--------|------|------|------|\n| `TOKEN` | API 访问令牌，用于保护接口（设置`TOKEN`之后，首页会变成**nginx**，避免变成公共服务） | `your-secret-token` | 否 |\n| `URL302` | 302跳转伪装首页 | `https://example.com` | 否 |\n| `URL` | 反向代理伪装首页 | `https://example.com` | 否 |\n| `ICO` | 网站图标 URL | `https://example.com/favicon.ico` | 否 |\n\n## 📄 许可证\n\n本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情\n\n## 🙏 致谢\n- [@houyiTFG](https://t.me/houyiTFG) - 天书作者\n- [Cloudflare Workers](https://workers.cloudflare.com/) - 提供强大的边缘计算平台\n- 所有贡献者和使用者的支持\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcmliu%2Fcf-workers-checkproxyip","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcmliu%2Fcf-workers-checkproxyip","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcmliu%2Fcf-workers-checkproxyip/lists"}