SmartDNS

type
status
date
slug
summary
tags
category
icon
password
在广域网上提供的公共 DNS 实际上是有 QOS 限制的,并且由于中国大陆特殊的网络情况,经常容易获得被污染的 DNS 解析。因此,在学习和工作中,架设一个 DNS 服务器是很有必要的。
SmartDNS 是一个运行在本地的 DNS 服务器,它接受来自本地客户端的 DNS 查询请求,然后从多个上游 DNS 服务器获取 DNS 查询结果,并将访问速度最快的结果返回给客户端,以此提高网络访问速度。 SmartDNS 同时支持指定特定域名 IP 地址,并高性匹配,可达到过滤广告的效果; 支持 DOT(DNS over TLS) 和 DOH(DNS over HTTPS),更好的保护隐私。

分流配置

首先使用下面的脚本生成针对于中国大陆域名列表的分流规则
一切正常的话,你得到一个 /etc/smartdns/china.domain.smartdns.conf 配置文件。
然后配置 /etc/smartdns/smartdns.conf ,你需要根据具体情况对配置进行调整。其中 subnet 配置项是 EDNS 配置,需要对应的上游 DNS 服务器支持。

性能测试

使用 dnsperf 进行 dns 测试。
首先你需要安装 dnsperf,在 ubuntu 20.04/22.04 上可以通过 apt 进行安装。然后你需要准备一个文件用来测试,他里面应该有庞大的域名列表,类似于这样。
然后执行如下命令进行性能测试。
💡
我使用的 CPU 是8核的 Intel(R) Xeon(R) CPU D-1521 @ 2.40GHz,并在虚拟机中使用了 2 个核心进行测试。
这个 QPS 差不多在 3w 左右,足以应对 1500 人左右的办公网络环境了。
S3-API on Azure BlobOSPF + tun2socks 全局代理
Loading...