我的心里除了露娜大人已经装不下其他女人了

我的 DNS 解决方案

上一篇文章我聊了聊国内现有的一些公共 DNS,那今天我就来聊聊我自己使用的 DNS 方案。

公共 DNS 并不能满足现有需求

我相信大部分看这篇文章的人都是因为现有的公共 DNS 并不能满足需求,大概率是因为很多国内的 DNS 并不能完全正确的解析域名,因此在兼顾准确度与速度的情况下我们需要用到分流。

我的分流 DNS 解决方案

我使用的是 AdGuardHome 外加分流规则脚本

项目地址:https://github.com/felixonmars/dnsmasq-china-list

在 Global DNS 上我使用了自建的 DNS

无日志,无过滤,可以随意使用,但不保证稳定性

DoH:https://hk-hkg.moedns.dev/dns-hk (已被橄榄)

git clone --depth 1 https://git.iqiq.io/felixonmars/dnsmasq-china-list.git /opt/AdGuardHome/dnsrules/dnsmasq-china-list
make -C /opt/AdGuardHome/dnsrules/dnsmasq-china-list adguardhome SERVER=https://doh.pub/dns-query

cat /opt/AdGuardHome/dnsrules/dnsmasq-china-list/accelerated-domains.china.adguardhome.conf >> /opt/AdGuardHome/dnsrules/dnsmasq-china-list/upstream_file
echo -e >> /opt/AdGuardHome/dnsrules/dnsmasq-china-list/upstream_file
cat /opt/AdGuardHome/dnsrules/dnsmasq-china-list/apple.china.adguardhome.conf >> /opt/AdGuardHome/dnsrules/dnsmasq-china-list/upstream_file
echo -e >> /opt/AdGuardHome/dnsrules/dnsmasq-china-list/upstream_file
cat /opt/AdGuardHome/dnsrules/dnsmasq-china-list/google.china.adguardhome.conf >> /opt/AdGuardHome/dnsrules/dnsmasq-china-list/upstream_file
echo -e >> /opt/AdGuardHome/dnsrules/dnsmasq-china-list/upstream_file
echo "https://cn-south.iqiqzz.com/dns-query" >> /opt/AdGuardHome/dnsrules/dnsmasq-china-list/upstream_file
echo "https://cn-east.iqiqzz.com/dns-query" >> /opt/AdGuardHome/dnsrules/dnsmasq-china-list/upstream_file
mv /opt/AdGuardHome/dnsrules/dnsmasq-china-list/upstream_file /opt/AdGuardHome/dnsrules/

rm -rf /opt/AdGuardHome/dnsrules/dnsmasq-china-list

/opt/AdGuardHome/AdGuardHome -s restart

之后将 AdguardHome 的上游配置改为 /opt/AdGuardHome/dnsrules/upstream_file 即可


如果你只是在内网使用,那么可以忽略接下来的内容

如果你想要在公网部署来提供服务,你需要知道一个问题,你的上游 DNS 必须支持 ECS

因此国内只推荐使用 DNSPod 的公共 DNS 作为上游

海外可以使用谷歌 DNS 和 Quad9 支持 EDNS 的 DNS 或也可以使用上篇文章提到的 IQDNS 和我搭建的 DNS

这样才能正确的就近解析 CDN 的域名

我的 DNS 解决方案

https://www.9bingyin.com/archives/my-dns-solution.html

作者

bingyin

发布时间

2022-07-21

许可协议

CC BY 4.0

添加新评论