经过一段时间摸索似乎找到了目前阶段比较好的解法?还请各位佬友们来看看是否还有可以提升的地方:
dns:
enable: true
ipv6: true
listen: :23453
enhanced-mode: fake-ip
respect-rules: true
fake-ip-range: 198.18.0.1/16
fake-ip-filter-mode: whitelist
fake-ip-filter:
- 'geosite:gfw'
nameserver:
- 8.8.8.8
- 1.1.1.1
proxy-server-nameserver:
- 211.142.211.124
- 111.8.14.18
direct-nameserver:
- 211.142.211.124
- 111.8.14.18
解释下为什么要这样配置。
首先是fake-ip白名单模式(fake-ip-filter-mode: whitelist),然后filter直接用内置的gfwlist geosite(此处可替换为自定义mrs),让大部分主流被墙网站走fake-ip,这样即使少部分非直连网站不走fake-ip也不会牺牲太多速度体验,同时免去在blacklist模式下配置一堆绕过域名的烦恼(还可能漏域名导致出问题)。此套配置尽量遵循了直连走real-ip其余fake-ip的模式(似乎目前这样也是体验最好的),只是舍弃了传统的使用黑名单模式+大陆域名过滤+一堆绕过域名的配置,牺牲部分小众网站速度换取更佳稳定性和易维护性。
然后是让直连(direct-nameserver)和节点(proxy-server-nameserver)域名走运营商dns(这里我用的是本地运营商),保证速度最快,其余非直连域名经过代理服务器走Google和CF的dns,respect-rules: true 的作用就是让dns请求也遵循规则,因为Google和CF的dns会匹配上代理规则所以会让此查询经过代理,(也符合了dns查询尽量走实际网络出口的观点,更符合真实上网)(实际上可能大部分非直连域名直接走fake-ip了连本地查询请求都不需要)。此套配置下dns分流为大陆白名单模式,这也是目前主流的模式。
另外我感觉没啥必要用各种加密dns,直连用运营商,其余经过代理服务器走udp dns能做到速度最快,也不会有审查顾虑。
实测这套配置也不会出现dns泄露问题,当然我是在路由器上使用,本地客户端未测试。
