跳转至

DNS

简介#

DNS 是域名系统Domain Name System的缩写,常用来表示 DNS 服务器, 比如谷歌的 8.8.8.8 就是经典的 DNS 服务器。

安全性#

最初的 DNS 使用端口 53 的 UDP 或者进行查询(DNS-over-UDP/53),但是缺乏传输层加密、身份验证和可靠传递和消息长度, 导致容易被中间人攻击。这也是早期 GFW 主要使用的方法,被叫做 DNS污染

之后换成了使用端口 53 的 TCP 查询(DNS-over-TCP/53),改进了可靠传递和消息长度,不过安全性没有改进。

之后出现了多种更安全的方案,主要是以下四种:

方案名 简称
DNS over TLS DoT
DNS over HTTPS DoH
DNSCrypt
DNS over QUIC DoQ

这些本质上都使用了 TLS,虽然能避免 DNS 污染,但可能会被直接阻断。

红鱼 DNS#

红鱼 DNS 是个 DoT & DoH 服务。

2019年7月,红鱼 DNS 的维护者在回答用户提问时指出了红鱼 DNS 含有审查功能,具体来说是白名单, 只有部分域名才会走海外解析路径,不在白名单内的仍然会受到 DNS 投毒的影响。1

iQDNS#

iQDNS 服务启动于 2021 年的年初,随后成为个公共加密 DNS。

虽然 iQDNS 自称是纯净无污染的 DNS,2 但此服务设置了黑名单,原文是「屏蔽了对 gov 影响极差的网站。 (返回空地址,无污染)」,3 尚不明确具体的名单。

随后在 2022年10月25日,有人表示无法连上 iQDNS,运营者对此表示:「最近特殊日期,所有境内的 DOT/DOQ 节点都不稳定。」4

DNS666#

DNS666 是清华大学 TUNA 对校外提供的 DNS over HTTPS 服务。

NekoInverter/EhViewer 是一款基于 seven332/EhViewer 的 E-hentai 第三方 Android 客户端, 其中增加了 DNS 解析功能,以防止 DNS 污染。

2021年3月20日,N/E 将 DNS666 添加进新版本里,随后在 2021年4月16日 15:04, DNS666 管理员将含有 .hath.network 的请求都阻止了。56

理由应该在 NekoInverter/EhViewer 使用 DNS666 期间,访问流量比起平时,大约增加了 5 倍,而这让服务器带来了高负载。

相关页面

大规模中断#

2025年3月4日,有用户发现各大 IP 地址的 DoH 服务都被 GFW 阻断了。包括但不限于:7

名称 IP 地址
Cloudflare DNS 1.1.1.1, 1.0.0.1
OpenDNS 208.67.222.222, 208.67.220.220, 208.67.222.123
Quad 101 101.101.101.101, 101.102.103.104
Quad 9 9.9.9.9, 149.112.112.112

有人认为这是「第十四届全国人民代表大会第三次会议」3月5日 到 3月11日 期间,8 所带来的「正常情况」。


  1. qyb, 《红鱼 DNS 正式发布, DoT & DoH only》, V2EX, 2018-09-20. (参照 2022-08-10). 

  2. iQDNS》, 2021-09-08. (参照 2022-10-04). 

  3. johnsonwil, 《iQDNS - 一个纯净的像少女一般的 DNS 服务》, V2EX, 2021-06-25. (参照 2022-10-04). 

  4. johnsonwil, 《iQDNS 2.0 - 永久公益公共加密 DNS 新特性 新解析逻辑 完美定位国内外 CDN IP 问题》, V2EX, 2022-10-02. (参照 2025-03-07). 

  5. DNS666事关全國數萬名網友的牛子 · Issue #190 · tuna/collection, GitHub. 

  6. Miao Wang, 《Replace cloudflare dns with tuna (aaf79822) · Commits · NekoInverter / EhViewer》, GitLab, 2021-04-16. (参照 2022-10-14). 

  7. bollld607, 《今天墙发大威了,包括 1.1.1.1 在内非域名的 DoH 都被干掉了》, V2EX, 2025-03-04. (参照 2025-03-07). 

  8. 中国人大网, 《第十四届全国人民代表大会第三次会议日程》, 中国政府网, 2025-03-04. (参照 2025-03-08). 

(由于更新时间是手动更新的,所以部分页面内容已更新,但忘记修改新的日期了……)