LOADING

加载过慢请开启缓存 浏览器默认开启

避免DNS泄露的原理讲解

写前声明

本文仅用来技术探讨和记录经历
转载请声明来源

具体实现

原理部分

先介绍一下我家的网络架构,如下图。

网络架构

我知道你懒得看长篇大论,图示已经够详细了,下面根据以上网络架构解释原理。

开启 chinadns-ng 后透明代理会使用 chinadns-ng 的模式,对于大陆域名会向 Dnsmasq 发出请求,而受污染域名则会向你设置的“远程DNS”发出请求,返回各自解析的结果,其他域名则会同时发想两个DNS,此时具体操作可选(新版本“透明代理”),如下

智能模式:同时向直接和远程DNS发送请求,如果直接DNS解析结果是中国大陆的IP,那么使用直接结果,否则使用远程结果。

  • 不接受来自直接DNS的无IP回复:等待并使用远程DNS回复。
  • 接受来自直接DNS的无IP回复:使用此选项可以提高一些仅支持IPv4的中国大陆网站的DNS解析速度。

具体规则由透明代理控制

操作部分

配置透明代理

开启chinadns-ng
过滤模式:通过TCP请求DNS
远程 DNS: 127.0.0.1:5335 (Mosdns)

配置MosDNS

开启DNS转发
开启自定义国内 DNS
国内 DNS 服务器:如果你弄了 adguard home 就填 adguard home 的 ip ,没弄的话可以填几个国内的DOH或DOT,然后并发和连接数都改成2或者以上
远程 DNS 服务器:记住一定要填入经过透明代理的DNS!!!切记查看透明代理中直连IP和代理IP的配置!!!