doh-cf-workers配置详解如何更换上游DNSCloudflare/Google/NextDNS并自定义/dns-query路径【免费下载链接】doh-cf-workersDNS-over-HTTPS proxy on Cloudflare Workers项目地址: https://gitcode.com/gh_mirrors/do/doh-cf-workersdoh-cf-workers 是一个部署在 Cloudflare Workers 上的极简DNS-over-HTTPSDoH代理项目部署后你就拥有了一个私有的 DNS 解析入口可无缝用于 AdGuard、浏览器安全 DNS、YogaDNS 等客户端。本文聚焦两个最常用的定制操作——更换上游 DNS 服务商Cloudflare / Google / NextDNS和自定义 /dns-query 路径全程只需改动几行配置即可生效。项目概览1 个主文件 1 个配置文件新手也能快速上手整个项目非常精简核心资料如下文件作用index.jsWorker 主逻辑上游地址、路径过滤、请求转发wrangler.toml部署配置Worker 名称、自定义路由、运行日期package.json依赖声明wrangler 工具链README.md官方使用说明与原理说明它适合谁️ 运营商限制已知 DoH 服务商地址你想用自己的代理转发请求 即使workers.dev被整体屏蔽绑定托管在 Cloudflare 上的自定义域名也能继续访问 免费额度每天 10 万请求对个人或一个家庭来说完全够用5分钟部署doh-cf-workers 最快配置方法将项目克隆到本地git clone https://gitcode.com/gh_mirrors/do/doh-cf-workers登录 Cloudflare Workers 控制台新建一个 Worker将默认脚本内容整体替换为 index.js 的内容点击部署即可获得一个xxx.workers.dev的 DoH 地址。 也可以不克隆仓库直接在 Workers 控制台的 Script 编辑框里粘贴代码部署官方 README.md 推荐的正是这种复制即部署的方式。如何更换上游DNS只需改两个变量 更换上游 DNS 的关键在 index.js 文件顶部的两个变量const doh https://security.cloudflare-dns.com/dns-query const dohjson https://security.cloudflare-dns.com/dns-query它们的分工如下对应 index.js 中的请求分发逻辑doh处理 GET?dns参数和 POST 二进制 DNS 消息请求绝大多数客户端走这里dohjson处理较少见的 JSON 格式application/dns-json请求常见上游对照表服务商上游地址路径说明Cloudflare默认https://security.cloudflare-dns.com/dns-query/dns-queryGooglehttps://dns.google/dns-query官方文档说明 Google、AdGuard 可能使用/resolve路径NextDNShttps://doh.nextdns.io/dns-query?d你的ID/dns-query需带上账号 ID 参数⚠️ 根据 README.mdCloudflare 与 NextDNS 的 URL 格式相同而 Google、AdGuard 等使用/resolve代替/dns-query——更换时请连同路径一起替换完整地址只改域名是不够的。一行代码自定义/dns-query路径path变量详解控制路径过滤的是 index.js 中的path变量const path ; // 默认放行所有路径若限制必须以 / 开头如 /dns-query判断逻辑见 index.js路径不匹配时直接返回 404。path 默认所有路径的请求都转发给上游最省事path /dns-query仅处理/dns-query开头的请求其余一律 404什么时候建议设置当你通过自定义域名路由把 Worker 挂到主域名下时在 wrangler.toml 中配置route example.com/dns-query将path设为/dns-query可以让路由与过滤规则精确匹配避免干扰该域名下的其他内容const path /dns-query;客户端指向你的DoH代理支持设备与使用姿势配置完成后把客户端的 DoH 地址改为你的 Worker 地址即可https://你的worker.workers.dev/dns-query✅ 官方确认支持AdGuard、浏览器安全 DNS 设置、YogaDNS、Intra、Nebulo 等一切接受 DoH 地址的工具。⚠️ 如果你自定义了path客户端填写的地址必须包含该路径否则会收到 404 响应。免费额度与升级方法10万请求/天够用吗 免费套餐每天 10 万请求覆盖个人和多数家庭场景 需要更高额度时升级付费计划需绑卡并编辑 wrangler.toml 完成配置 wrangler.toml 中默认启用了placement的mode smart智能放置模式请求会自动路由到就近节点延迟更低doh-cf-workers 配置常见问题 FAQQdoh和dohjson必须指向同一个服务商吗A不必。两个变量相互独立可以分别指向不同的 DoH 服务互不影响。Q想换上游但上游被运营商屏蔽了怎么办A这正是 doh-cf-workers 的设计初衷——把两个变量改成当前网络可达的 DoH 服务商即可配合自定义域名可进一步规避屏蔽。Q自定义域名没有托管在 Cloudflare 上能行吗AREADME.md 提到姊妹项目 doh-cf-pages 可解决该场景甚至 FreeDNS 的 CNAME 记录就足够绑定。Q需要更多过滤功能呢AREADME 推荐 RethinkDNS 背后的 serverless-dns 方案想跑在 Google Cloud Function 或 .NET 环境可参考作者的 doh-gcf 项目。输出文章【免费下载链接】doh-cf-workersDNS-over-HTTPS proxy on Cloudflare Workers项目地址: https://gitcode.com/gh_mirrors/do/doh-cf-workers创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考