当前位置: 首页 > 工具软件 > DOH > 使用案例 >

DoT/DoH/DoQ 之 CoreDNS配置

卞昀
2023-12-01

Dot/DoH/DoQ 的好处就不用多说了,那么如何让你的网络用上DoT/DoH/DoQ呢?

DoT:DNS over TLS
DoH:DNS over HTTPS
DoQ:DNS over QUIC
https://adguard.com/en/blog/dns-over-quic.html
https://www.cloudflare.com/zh-cn/learning/dns/dns-over-tls/

本文以CoreDNS为例,CoreDNS是一个Go语言实现的DNS server,具有跨平台、插件化、可拓展等诸多优点。

一、配置Corefile

配置文件是通用的,CoreDNS服务端是支持四种协议(DNS、DoT、DoH、gRPC),forward插件只支持DNS和DoT,不支持DoH,因为DoH更复杂,forward插件hold不住,从github的issue区看应该会开发新的插件支持DoH客户端,DoQ应该还早得很。。

.:53 {
    # 绑定interface ip
    bind 127.0.0.1
    # 先走本机的hosts
    hosts /etc/hosts {
        fallthrough
    }
    # 转发上游dns服务器
    forward . 127.0.0.1:853 127.0.0.1:5301
    # 缓存时间ttl
    cache 120
    reload 10s
    log
    errors
}

.:853 {
    bind 127.0.0.1
    forward . tls://223.5.5.5:853 {
        tls_servername dns.alidns.com
        force_tcp
        max_fails 3
    }
    cache 120
    reload 10s
    log
    errors
}

.:5301 {
    bind 127.0.0.1
    forward . tls://1.1.1.1 tls://1.0.0.1 {
        tls_servername cloudflare-dns.com
        force_tcp
        health_check 5s
    }
    cache 120
    reload 10s
    log
    errors
}

二、修改系统配置

  • for Linux
    修改/etc/resolv.conf
    至少在头部插入nameserver 127.0.0.1,可以添加其他DNS服务器来兜底,例如我添加了内网DNS
nameserver 127.0.0.1
nameserver 10.11.248.115
nameserver 10.11.248.114
  • for Windows
    需要修改网卡的DNS

最后就是开机自启的配置,Linux选手自行解决,Windows的同学详见https://blog.csdn.net/CHAOS_ORDER/article/details/114584785

 类似资料: