DNS基本概念
DNS劫持
劫持 DNS 服务器, 通过某些手段获得解析某些域名的能力, 进而修改此域名的解析结果, 导致对该域名的访问由原 IP 地址转到修改后的指定 IP 地址, 导致对该域名的访问由原 IP 地址转到修改后的指定 IP, 就是对特定的特定的网址不能访问或访问的是假网址, 从而实现窃取自资料或者破坏原有正常服务的目的
DNS 污染
是让一般用户得到虚假主机 IP 而不能与之通讯的方式, 是一种 DNS 缓存投毒攻击其工作方式, 由于通常的 DNS 查询没有任何的机制, 而 DNS 查询通常基于的是 udp 是无连接不可靠的协议,因为DNS查询非常容易被篡改,通过对udp53端口上的Dns查询进行入侵检测,一经发现与关键词相匹配的请求则立即伪装成目标域名的解析服务器,给查询者返回一个虚假的结果,而DNS污染的是发生在用户请求的第一步上,直接从协议上对用户的DNS请求进行干扰,目前很多被禁止访问的网站是通过DNS实现的(Youtube…FB)
DNS 泄露
由于配置或网络设置错误,导致用户的 DNS 请求绕过了预期的加密隧道或代理
,并直接暴露给了网络供应商或其他潜在的监控者
一般情况下 DNS 服务器是由我们的 isp 运营商所提供, 如果不修改直接用, 那就意味着他们呢可以监控记录你发送的任何服务器请求
可以通过在线 DNS 测试去检测他们访问国外网站的结果,如果出现大陆的DNS,那就说明你的DNS已经泄露出去了,解析也会从离你最近的DNS去查询,域名IP-那么你查询的记录就会被监控到
当你访问国内网站时,通过国内的DNS解析服务器解析,响应页面速度快,访问延迟低
通过国内网站国内DNS,国外国外DNS,这样做不仅可以有效防止污染,重要的是你在国内网络浏览国外的网络地址是分流到了国外 DNS 上去解析,而不是用国内的 114 等公共服务器做解析,那么在国内的 DNS 服务器上就不会有你解析国外域名的解析记录, 只要检测国外 DNS 的时候没有中国的 DNS 出现那就说明一切正常,假如有的话,那么一般都是会从国内 DNS 解析到国外域名的,访问信息就依然泄露,建议使用加密型的 DNS, 因为这些服务器被污染的概率非常小, 安全性高, 不建议使用 53 端口的, 如 8.8.8.8, 1.1.1.1
权威 DNS
权威 DNS 是特定域名记录(例如“example. com”)在域名注册商处所设置的 DNS 服务器,用于特定域名本身的管理(增加、删除、修改等)。权威 DNS 服务器只对自己所拥有的域名进行域名解析,对于不是自己的域名则拒绝访问。比如,向“example. com”的权威 DNS 服务器查询“test. com”的域名肯定会查询失败。
权威 DNS 是经过上一级授权对域名进行解析的服务器,同时它可以把解析授权转授给其他人,如 COM 顶级服务器可以授权 dns. com 这个域名的的权威服务器为 NS. ABC. COM,同时 NS. ABC. COM 还可以把授权转授给 NS. DDD. COM,这样 NS. DDD. COM 就成了 ABC. COM 实际上的权威服务器了。平时我们解析域名的结果都源自权威 DNS。比如 dns.com 的权威 DNS 服务器就是帝恩思的 ns1. dns. com ns2. dns. co
DNS 对速度影响
![[…/…/Computer/电脑/Steam下载慢#^sg5f8u|A_Computer/电脑/Steam下载慢 > ^sg5f8u]]
DNS 跟你物理网速没有任何的关系,但可能会影响cdn节点对位置的判断间接影响速度,不使用本地运营商dns可能导致steam类应用下载变慢
它能提升的只是你到达网页端的响应速度
根据所使用的 DNS 服务器延迟大小以及缓存来定
在国内你用谷歌的 DNS 虽然也可以正常的解析使用,并且因为任播的原因返回的 IP 也非常的精确
但延迟却要比国外的高几倍
所以 DNS 只对打开网站的响应速度有关系,安全性有关,根网速的码率没有任何关系
因为 WEBRTC 泄露, 如果网站有 webRTC 功能, 可以无视代理 ip, 记录真实 ip
远程 DNS
使用远程 dns 时,浏览器向代理服务器发送的目标地址是域名+端口,不使用远程 dns 时,浏览器向代理服务器发送的是 ip+端口。
使用远程 dns 时,浏览器向代理服务器发送的目标地址是域名+端口,不使用远程 dns 时,浏览器向代理服务器发送的是 ip+端口。
比如你要访问https://facebook.com
如果使用远程 dns
,发送给代理服务器的请求可能是如下形式
CONNECT facebook. com:443 HTTP/1.1
如果不使用远程 dns,发送给代理服务器的请求可能是如下形式
CONNECT 1.2.3.4: 443 HTTP/1.1
国外
tls://1.1.1.1/dns-query
tls://dns. google
https://dns. google/dns-query
tls://dns11.quad9.net
https://dns11.quad9.net/dns-query
踩坑
学校网站的访问不能使用加密 DNS 只能使用普通 dns
发现加密 DNS 解折腾了 DNS 半天,学校网站的访问不能使用加密 DNS 只能使用普通 dns
发现加密 DNS 解析记录比普通的少了 cname析记录比普通的少了 cname
tls://dns.pub
tls://dns.alidns.com
https://doh.pub/dns-query
https://dns.pub/dns-query
https://dns.alidns.com/dns-query
208.67.222.222
199.91.73.222
114.114.114.114
114.114.115.115
218.30.118.6
208.67.220.220
9.9.9.9
140.207.198.6
52.80.66.66
210.2.4.8
8.8.8.8
123.125.81.6
101.226.4.6
117.50.11.11
119.29.29.29
223.5.5.5
119.29.29.29
180.76.76.76
1.2.4.8
202.102.134.68
202.102.128.68
ADguardHome
上游 DNS 可以理解为远程 DNS
Bootstrap dns 服务器用来解析并连接最快的上游服务器
Bootstrap dns 填本地运营商的地址, 百度搜索本地运营商 DNS
可以ping 速度
ADguard 使用 clash 中的 DNS 配置
无法访问/页面丢失/版权限制/加载速度慢:属于上游 dns 解析问题
广告不能拦截/能打开网页视频不能播放/提示有广告插件/网页里有些功能无法调用:属于规则问题