Claw Run容器搭建免费DoH (DNS-over-HTTPS) 转发服务
Claw Run 容器服务已经上线一段时间了,且目前为 GitHub 用户每月免费赠送 $5 使用额度,用于轻量应用场景非常合适。
不少裙友担心访问的网站会被运营商的 DNS 劫持或监控,因此希望通过 DNS-over-HTTPS(DoH)规避 DNS 泄露风险。尽管 Cloudflare、Google、Quad9 等提供公共 DoH 服务,但在国内使用时常遇到访问延迟或不稳定的问题,所以很多裙友有自己搭建Adguard Home,Pi-hole,dnsmasq之类的递归DNS服务。
现在有了 Claw Run,咱们可以非常方便地部署自己的 DoH 转发服务。借助 Caddy 进行反向代理部署非常轻量,日常使用费用约为 $0.01/天(约 $0.3/月),远低于 Claw 提供的每月 $5 免费额度,非常适合个人使用。
以下是详细的部署步骤:
1. 注册/登录Claw Run
点击链接使用GitHub注册/登录Claw Run,你完全不需要之前有注册过Claw Cloud的账号
2. 选择区域
选择你经常使用的区域(都是阿里云的,包含美西,美东,新加坡,日本),当然你也可以部署在多个区域,不过你可以选择一个区域先部署
这里,咱选择了us-west-1
进行演示
3. 开始创建
点击App Launchpad
进入容器列表页面
点击Create App
进入容器创建页面
填写Image Name
:caddy(Docker镜像名称,小写)
配置拉到最低,Caddy非常轻量,0.1c64M完全没有问题
Container Port端口填写80,这里是Caddy转发到的端口,可以自定义
点击Enable Internet Access
开关按钮打开端口转发,后面的*.clawcloudrun.com
就你的DoH域名了
例如:bphlixcfmjsa.us-west-1.clawcloudrun.com
当然你也可以设置自定义域名,填写后,cname别名解析到到clawcloudrun.com的别名就可以了
然后就只需要修改Caddy server的配置文件Caddyfile,点击Configmaps
填写File name
路径为/etc/caddy/Caddyfile
File content
填写以下配置
:80 {
rewrite * /dns-query
reverse_proxy https://8.8.8.8
}
这里以Google DNS为例,可以自行修改为Cloudflare,Quad9,NextDNS,Adguard等
如果你需要Caddy也通过tls加密的话,替代:80
为你的*.clawcloudrun.com或自定义域名,端口先填写80通过验证后,修改为443即可
然后右上角的Deploy Application
就行了
4.开始使用
DoH转发的部署就完成了🥳
刚才的*.clawcloudrun.com就是你的DoH域名了
可以直接填写到浏览器的secure DNS设置中,浏览器一般会自动检测DoH是否可用,如果有错误提示的话,去Claw Run的容器页面检查一下日志
检查DoH是否生效的方法也非常简单,咱常用的小工具是test.nextdns.io
,访问任何一个*.test.nextdns.io
的子域名就可以知道当前的dns服务器是什么了
如果部署中有任何问题,欢迎在以下评论区留言