各种防污染DNS原理介绍

DNS基础

基本指令:dig dl.google.com @114.114.114.114 +trace

chinadns

原理:

  1. 国内DNS服务器返回结果比国外的服务器更快。如果国外DNS服务器返回结果更快(就会被采用),则ChianDNS过滤。
  2. GFW对国外域名的污染仅返回国外IP。如果GFW使用国内IP污染国外域名,即国内DNS服务器对twitter.com返回国内IP,由于ChinaDNS实际上无法区分twitter.com是国外域名,就不会丢弃该结果,GFW得逞;

ChinaDNS工作原理其实是基于上述两个前提,根据一个规则“丢弃国内DNS服务器返回的国外IP解析结果”,达到防止DNS污染的同时,降低解析时间开销和增加CDN亲和性的目的。

查看详解:ChinaDNS原理与源码分析

源码地址:aa65535/openwrt-chinadns

PDNSD:(早已停止更新)

原理:向其它DNS服务器以TCP或UDP形式发出请求,查询到域名对应的IP,并进行缓存,以便达到加速目的。

源码地址:github.com/SAPikachu/pd

DNS2SOCKS

原理:通过socks5,从指定DNS上流获取最新的DNS解析记录,从而实现一个无污染的纯净DNS服务器

源码地址:Browse Files at SourceForge.net

SMARTDNS

原理:SmartDNS是一个运行在本地的DNS服务器,SmartDNS接受本地客户端的DNS查询请求,从多个上游DNS服务器获取DNS查询结果,并将访问速度最快的结果返回给客户端,提高网络访问速度。 同时支持指定特定域名IP地址,并高性匹配,达到过滤广告的效果。与dnsmasq的all-servers不同,smartdns返回的是访问速度最快的解析结果。

源码地址:pymumu/smartdns

 

来自  https://zhuanlan.zhihu.com/p/339531442



发表评论

邮箱地址不会被公开。 必填项已用*标注

+ 4 = 14