[原创首发] 🔐 通过 EdgeOne CDN 搭建专属于你的隐蔽纯净 DoH 服务

[原创首发] 🔐 通过 EdgeOne CDN 搭建专属于你的隐蔽纯净 DoH 服务
杨幂的脚🔐 通过 EdgeOne CDN 搭建专属于你的隐蔽纯净 DoH 服务
本文介绍一种基于 EdgeOne CDN 规则引擎的 DoH(DNS over HTTPS)部署思路:在不额外准备服务器的前提下,将一个已经正常接入 EdgeOne CDN 的 HTTPS 站点扩展为自定义路径的 DoH 服务。
这种方式的核心优势在于,DoH 请求会经过你现有的 CDN 域名与自定义路径转发到上游 DNS 服务。对外看起来仍然是一个普通 HTTPS 站点,既能降低额外运维成本,也能让服务形态更加自然、可控。
🧰 事前准备
一个正在使用 EdgeOne CDN 加速的网站,并且已经完成 HTTPS 证书配置。例如:
eo.blog.cmliussss.com🎯 本文最终要实现的效果是:让
https://eo.blog.cmliussss.com/CMLiussss这个地址对外提供 DoH 服务。⚠️ 建议不要直接使用
/dns-query作为公开访问路径。该路径是 DoH 服务中非常常见的特征路径,识别度较高;使用自定义路径可以降低服务暴露的特征,整体上也更灵活。
🖼️ 图文教程
1. 🧩 创建规则
- 前往
站点加速->规则引擎->创建规则->新增空白规则。
2. ⚙️ 填写规则内容
- 规则名称:可按自己的习惯填写,例如
DoH 服务。 - IF1
匹配类型:HOST,运算符:
等于,值:eo.blog.cmliussss.com(替换成你自己的域名)
+ And匹配类型:URL path,运算符:
等于,值:/CMLiussss(替换成你需要实现 DoH 服务的路径)操作
- 修改源站,源站类型:
IP/域名,值:cloudflare-dns.com,回源协议:HTTPS,HTTPS 回源端口:443 - Host Header 重写,模式:
自定义,目标值:cloudflare-dns.com - 回源 URL 重写,类型:
替换完整路径,目标路径:/dns-query
- 修改源站,源站类型:
IF2
匹配类型:请求方法,运算符:
等于,值:GET
+ And匹配类型:查询字符串,参数名称:
name,运算符:存在
+ And匹配类型:HTTP 请求头,头部名称:
自定义>accept,运算符:不等于,值:application/dns-message,忽略大小写操作
- 修改 HTTP 回源请求头,头部名称:
自定义>accept,头部值:application/dns-json - 修改 HTTP 节点响应头,头部名称:
自定义>content-type,头部值:application/json
- 修改 HTTP 回源请求头,头部名称:
ELSE IF
匹配类型:请求方法,运算符:
等于,值:POST操作
- 修改源站,源站类型:
IP/域名,值:dns.google,回源协议:HTTPS,HTTPS 回源端口:443 - Host Header 重写,模式:
自定义,目标值:dns.google
- 修改源站,源站类型:
3. ✅ 保存并发布
- 点击 保存并发布 后返回
域名管理,等待配置状态变为已生效。
4. 🎉 部署完成
- 至此,基于 EdgeOne CDN 的 DoH 服务已经部署完成。
访问非
/CMLiussss的路径,例如 https://eo.blog.cmliussss.com/,会正常访问你原本的站点。
请求
/CMLiussss路径时,则会进入 DoH 转发规则。例如访问 https://eo.blog.cmliussss.com/CMLiussss?name=www.google.com,即可返回对应的 DNS 解析结果。
5. 📱 配置使用
- 后续只需要将你的 DoH 服务地址
https://eo.blog.cmliussss.com/CMLiussss配置到支持自定义 DoH 的客户端、浏览器或网关中即可使用。
💡 建议根据自己的实际域名和路径进行替换,并定期检查 EdgeOne 规则是否仍然生效。如果后续更换上游 DoH 服务,也只需要调整源站、Host Header 和回源路径等相关配置。
新人 Youtuber,需要您的支持。如果这篇文章对你有帮助,欢迎帮我点赞、关注、打开小铃铛,十分感谢!!! 🙏
















