你好!这是一个非常重要且常见的问题,DNS 没加密,就是你的上网查询记录像一张“明信片”在网络上传递,任何人都可以看到内容。
下面我为你详细解释这是怎么回事、为什么会有风险,以及现在有哪些解决方案。
简单回顾一下 DNS 的作用,当你在浏览器输入www.google.com 时,你的设备需要知道这个网址对应的真实服务器IP地址(比如142.250.74.196)。DNS 就是互联网的“电话簿”,负责将好记的域名翻译成机器可读的IP地址。
传统的 DNS 查询(DNS over UDP/TCP,也叫明文 DNS)工作流程和问题如下:
1、过程透明:你的设备向 DNS 服务器(通常是运营商提供的)发出一个查询请求:“www.google.com 的IP是多少?”,这个请求和返回的答案都是以纯文本形式发送的,没有任何加密保护。
2、像寄明信片:想象一下,你寄出一张明信片,上面写着:“我想去www.google.com 这个地址”,邮递员(网络路径上的任何一个节点)、邻居(同一网络下的其他人)、甚至路边的人(黑客)都能轻易看到明信片上的内容。
3、路径可见:这个明信片会经过你的路由器、你的互联网服务提供商(ISP)、多个网络节点,最终到达 DNS 服务器,沿途的任何一方都可以查看、记录甚至篡改它。
1、隐私泄露:
浏览记录被窥探你的 ISP(如电信、联通)可以知道你访问了哪些网站(虽然他们通过其他方式也可能知道,但 DNS 是最直接的)。
本地网络监听咖啡厅、酒店等公共 Wi-Fi 的运营者,或者同一网络下的恶意用户,可以轻易收集你的上网习惯。
被精准广告追踪一些机构会收集 DNS 查询数据,用于构建你的兴趣画像,推送广告。
2、DNS 劫持与篡改:
中间人攻击恶意攻击者可以在你收到正确的 DNS 响应之前,插入一个假的 IP 地址,你把www.mybank.com 查询成了黑客控制的钓鱼网站的 IP,导致账号密码被盗。
运营商劫持有些 ISP 为了推送广告或进行内容审查,会故意返回错误的或重定向的 IP 地址,比如你访问一个不存在的网站,可能会被跳转到运营商的广告页面。
3、审查与屏蔽明文,防火墙或网络管理者可以轻松识别并拦截对特定域名的查询请求。
为了解决这些问题,出现了几种加密 DNS 协议:
1、DNS over TLS (DoT)
原理在 DNS 查询外面套上一层 TLS 加密(HTTPS 用的那种加密),端口是 853。
特点加密性强,能防止监听和篡改,但因为使用独立端口,在一些严格管控的网络中可能被识别和阻断。
2、DNS over HTTPS (DoH)
原理将 DNS 查询数据包装在 HTTPS 协议中发送,端口是 443(和正常浏览网页一样)。
特点目前最主流和推荐给普通用户的方式,由于流量和普通的 HTTPS 网页浏览混在一起,更难被识别和干扰,隐私保护性非常好。
提供方Cloudflare (1.1.1.1)、Google (8.8.8.8)、Quad9 等都支持 DoH。
3、DNS over QUIC (DoQ)
原理基于更现代、高效的 QUIC 协议(HTTP/3 的基础)进行加密传输。
特点速度更快,抗丢包能力更强,是未来的发展方向,但目前支持度不如 DoH/DoT 广泛。
1、检查并修改设备/路由器的 DNS 设置:
将 DNS 服务器地址改为支持加密的公共 DNS,例如
* Cloudflare:1.1.1.1 和1.0.0.1
* Google:8.8.8.8 和8.8.4.4
注意仅仅修改为这些地址,默认可能还是走明文查询,需要同时开启加密协议才真正安全。
2、在浏览器中强制开启 DoH(最简单有效的方法):
Firefox在设置 -> 网络设置中,直接勾选“启用基于 HTTPS 的 DNS”。
Chrome/Edge在设置 -> 隐私和安全 -> 安全中,找到“使用安全 DNS”选项,并选择 Cloudflare 或 Google 等服务。
操作系统级设置
Windows设置 > 网络和 Internet > 以太网/Wi-Fi > 硬件属性 > 编辑 DNS 设置,可以选择加密 DNS(DoH)。
macOS系统设置 > 网络 > 高级 > DNS,可以添加 DoH/DoT 服务器 URL。
Android设置 > 网络和互联网 > 私人 DNS,可以填入 DoT 服务器地址(如dns.google)。
iOS需要安装描述文件或使用支持加密 DNS 的 App(如 Cloudflare 的1.1.1.1 App)。
本地网络功能某些依赖于本地 DNS 的设备或服务(如公司内网网站、打印机、智能家居设备)在切换到公共加密 DNS 后可能无法通过主机名访问,可能需要额外配置。
内容过滤如果你依赖 ISP 的 DNS 进行家长控制或恶意网站过滤,切换到公共 DNS 后会失效。
DNS 没加密意味着你的上网查询请求是公开的,存在隐私泄露、被劫持、被篡改的风险,解决方法是使用DNS over HTTPS (DoH) 或DNS over TLS (DoT) 等加密协议,目前最方便的是在浏览器中直接开启 DoH 功能,这能极大地提升你的网络隐私和安全水平。
文章摘自:https://idc.huochengrm.cn/dns/24353.html
评论
慕白梦
回复DNS未加密可能是因为网络设置问题或个人偏好,这可能导致数据传输不安全,容易被监听和篡改,建议开启加密的DNS服务以确保网络安全。
柔紫
回复DNS未加密意味着查询和响应数据在传输过程中可能被拦截,导致隐私泄露,建议使用加密DNS服务,如DNS over HTTPS或DNS over TLS,以增强网络安全和隐私保护。
冼乐天
回复DNS没加密可能导致数据泄露和隐私风险,建议使用加密DNS服务保障网络安全。