缙哥哥的博客
与你分享我的点点滴滴生活

折腾软路由三:安装https-dns-proxy使用DoH加密DNS服务

280G全国流量的电信星海卡仅需29元/月,长期可续该套餐,随时可注销

我买软路由的终极原因就是要能够使用加密DNS服务(DoH/DoT),这样方便配合 AdGuard Home 去除该网络下的所有广告(没去干净就自己再写规则)。而两三百的路由器都是没有加密 DNS 服务的,所以今天折腾软路由安装 https-dns-proxy 使用 DoH 加密 DNS 服务。

老样子,通过软件包查询 https-dns-proxy 并安装,安装完毕后,刷新页面。就会发现左侧菜单栏中多了一个服务菜单按钮(当然你如果之前就安装了很多插件,可能很早之前就有了),下面会出现一个HTTPS DNS 代理的按钮。

这是缙哥哥当前配置好之后的 HTTPS DNS 代理(https-dns-proxy)界面,它就是在服务菜单之下。首次安装默认使用的是 Google 和 CloudFlare 这两个 DoH 服务,而这两个在国内那是慢的不行,Google 更是慢成 404 状态。

默认设置参数(参见《Configuration Settings》)

config main 'config'
  option dnsmasq_config_update '*'
  option canary_domains_icloud '1'
  option canary_domains_mozilla '1'
  option force_dns '1'
  list force_dns_port '53'
  list force_dns_port '853'

config https-dns-proxy
  option bootstrap_dns '8.8.8.8,8.8.4.4'
  option resolver_url 'https://dns.google/dns-query'
  option listen_addr '127.0.0.1'
  option listen_port '5053'
  option user 'nobody'
  option group 'nogroup'

config https-dns-proxy
  option bootstrap_dns '1.1.1.1,1.0.0.1'
  option resolver_url 'https://cloudflare-dns.com/dns-query'
  option listen_addr '127.0.0.1'
  option listen_port '5054'
  option user 'nobody'
  option group 'nogroup'

如果你没有 AdGuard Home (自定义加密DNS服务),官方提供了 40+ 个公共 DNS 服务器,包含了阿里、360、DNSPod、DNSPod Public DNS、Switch DNS、RubyFish,选择一个自己顺眼的使用即可。

具体参数我是参考官方给的,按照官方的说法引导DNS还是要设置一下的,用于在启动时解析 DoH 服务器名称的非加密 DNS 服务器。

监听端口默认为5053,按照官方的说法,倘若你加第二个 DoH 服务器,就得设置为5054。也就是如果省略此设置,服务将在端口 5053 上启动第一个 https-dns-proxy 实例,在 5054 上启动第二个实例,依此类推。

然而该插件似乎都是内置了 DoH 服务,无法自定义,这里缙哥哥放到后面讲。

HTTPS DNS 代理 - 实例界面,缙哥哥发现了两个提醒:

  • 请注意此系统不支持 HTTP/2 (QUIC)
  • 请注意此系统不支持 HTTP/3 (QUIC)

原来是缺少依赖库,回到软件包安装界面,分别搜索下方4个软件包并安装,即可支持HTTP/2(参见《HTTP/2 Support》):

  1. HTTP/2
  2. curl
  3. libcurl4
  4. libnghttp2

至于 HTTP/3 据官方描述需要OpenSSLHTTP/3curl,我均已安装,但仍旧提醒不支持 HTTP/3,懒得管他了。(参见《HTTP/3 (QUIC) Support》)

没有自己 DNS 服务器的小伙伴到此结束了!

设置自定义DoH

由于其内置了 40+ 个 DoH 服务器,于是我就想,随便将一个改成自己的不就好了吗?

因为这些服务商全是英文,看着不爽,我决定就改 360 算了。缙哥哥使用 SSH 登录路由器一看,居然无法下载修改文件,那就只能用命令修改了(参见《Linux 文本编辑器 Vim “真 · 简单”使用教程》),回到软件包界面,搜索vim程序并安装。

/usr/share/https-dns-proxy/providers

在源码中找到 DoH 服务商参数文件位置

cd /usr/share/https-dns-proxy/providers
vim cn.360.doh.json

这样就可以进入 vim 编辑页面,编辑 cn.360.doh.json 文件了,不会用的小伙伴请看《Linux 文本编辑器 Vim “真 · 简单”使用教程》。

{
	"title": "DoH 360 DNS (CN)",
	"template": "https://doh.360.cn/dns-query",
	"bootstrap_dns": "101.226.4.6,218.30.118.6,123.125.81.6,140.207.198.6"
}
  • title 是显示的名称,可随意修改;
  • template 是 DoH 地址,如果你有自己的加密DNS服务器,可以改成自己的;
  • bootstrap_dns 是引导 DNS,可以设置为自己的加密DNS服务器IP地址,也可以用公用的。

修改完毕,在HTTPS DNS 代理 - 实例界面添加你改过的 DoH 即可。

HTTPS DNS 代理 - 配置界面,选择跟上图一样的设置并保存,点击上方重启按钮,完工。

打开智障投影仪,终于可以看没有广告的视频了。

赞(4) 打赏
转载请注明来源及链接:缙哥哥 » 折腾软路由三:安装https-dns-proxy使用DoH加密DNS服务
如需 WordPress 优化加速、二次开发、托管等服务,可联系我购买付费服务:点此联系我 | 近期站内热门福利:

评论 4

评论前必须登录!

 

  1. #1

    我是op主路由,客户机dms下搭建一个adh的模式,所有dns指向dms,adh有办法开启doh,来给内网所有设备使用么?

    star2k3个月前 (05-12)

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册