随着互联网的发展,网页的复杂程度也在增加。客户端在访问一个网页时,通常需要发送数十个 DNS 查询请求才能完整加载一个网页的全部资源。在这种情况下,DNS 解析的速度和准确率会影响网页的加载速度。
公共解析 PublicDNS 向用户提供 DNS 服务器的地址。用户可以将设备的 DNS 服务器地址设置为该地址。公共解析 PublicDNS 可以提升用户的互联网访问速度,还可以帮助用户避免 DNS 欺骗、DNS 劫持等问题。
火山引擎公共解析(PublicDNS)实际上已于 2023 年 2 月 24 日开放公测。
火山引擎公共解析(PublicDNS)面向所有互联网用户提供快速、稳定、安全的递归 DNS 服务。
DNS 全称是 Domain Name System。其作用类似黄页,负责将域名转换成 IP 地址。用户在客户端应用中使用域名来访问网站,但是应用本身是使用 IP 地址来访问网站服务器的。一个典型的应用就是浏览器。DNS 将用户输入的域名转换成 IP 地址被浏览器使用。互联网 DNS 系统由遍布全球的 DNS 服务器组成,构建了庞大的互联网域名系统,负责域名解析。
也叫递归查询,是 DNS 服务器的一种查询模式。当客户端发起域名解析请求时,如果 DNS 服务器上没有缓存的解析记录,该 DNS 服务器就以客户端的身份,向其他 DNS 服务器发起域名解析请求,并将结果返回给客户端。在递归查询过程中,客户端仅发一次解析请求。Local DNS 就是使用递归查询的方式响应客户端的域名解析请求的。指的是客户端通过代理去请求其他 DNS 服务器做域名解析,代理将获得的 IP 返回给客户端的过程。
权威 DNS 服务器负责子站点的域名解析。托管您域名的域名服务商提供权威 DNS 服务器负责您子域名的域名解析。
Local DNS 服务器负责对域名解析请求进行迭代查询,同时缓存解析结果。大部分 Local DNS 服务器都是由运营商维护的。浏览器的域名解析请求是发送到 Local DNS 服务器的。
公共解析 PublicDNS 的递归解析节点覆盖了国内所有省份和主要运营商,总线路达到上百条。
公共解析 PublicDNS 使用了 BGP Anycast 技术,在全国提供多个接入点。公共解析 PublicDNS 可以把用户请求转发到最近的接入点,快速获取解析结果。
公共解析 PublicDNS 会缓存 DNS 解析记录。当公共解析 PublicDNS 在缓存中找到用户的解析请求时,无需向权威 DNS 发送解析请求,可以直接向用户返回解析结果。
公共解析 PublicDNS 使用了流量清洗和 IP 黑名单等方法避免 DDoS 攻击。
公共解析 PublicDNS 使用了 BGP Anycast 技术,在全国提供多个接入点。如果某个接入点发生网络故障,公共解析 PublicDNS 会快速切换到其他接入点。
公共解析 PublicDNS 的 DNS 服务器具备全面的安全防护措施。这些措施可以避免 DNS 欺骗和 DNS 劫持等问题。公共解析 PublicDNS 不会劫持和跳转用户请求。
DoH (DNS over HTTPS)即使用安全的 HTTPS 协议运行 DNS ,主要目的是增强用户的安全性和隐私性。
通过使用加密的 HTTPS 连接,第三方将不再影响或监视解析过程。因此,欺诈者将无法查看请求的 URL 并对其进行更改。如果使用了基于 HTTPS 的 DNS ,数据在传输过程中发生丢失时,DoH 中的传输控制协议(TCP)会做出更快的反应。
DoH查询和响应在某种程度上伪装在其他 HTTPS 流量中,因为它们都是从同一端口进出的。
DoH默认端口是443,即HTTPS的默认端口(DNS over TLS有自己的端口853)
DNS over HTTPS 就是基于 HTTPS 隧道之上的域名协议,而HTTPS 又是 “HTTP over TLS”。所以 DoH 相当于是【双重隧道】的协议。
DoH 最终依靠 TLS 实现了【保密性】与【完整性】。这么做的好处是:
即使有人监视你的上网流量,也无法判断——哪些 TLS 流量是用于域名查询,哪些 TLS用于网页传输。换句话说,DoH协议的流量无法被【单独识别】出来。
要开始在 Google Chrome 中通过 https 浏览 DNS,请使用以下步骤:
DNS over TLS(简称DoT)是一项域名解析安全扩展协议,它使用TLS协议加密传输用户和递归解析服务器之间的DNS消息,起到防止中间用户窃听和域名查询隐私泄漏的作用。
如下:
抛开 TCP 连接和数据包文传输的部分,TLS 握手部分将使用 2 个 RTT。
DNS-over-TLS 和 HTTPS 类似,使用了 TCP 853 作为传输端口来完成 TLS 握手,再执行普通的 DNS 请求/应答。因此在 DNS-over-TLS 的整个过程中,将使用至少 4 次 RTT,这也将导致 DNS 的查询延时放大 4 倍。
DNS over Dedicated QUIC Connections 专用QUIC连接上的DNS
QUIC 提供的加密与 TLS 提供的加密具有相似的属性,而 QUIC 传输消除了 TCP 固有的线头阻塞问题,并提供比 UDP 更有效的丢包恢复。
DNS over QUIC (DoQ) 具有类似于 RFC7858 中指定的 DNS over TLS (DoT) 的隐私属性,以及类似于经典 DNS over UDP 的延迟特性。
支持 DoQ 的 DNS 服务器必须侦听并接受专用 UDP 端口 TBD上的 QUIC 连接,除非双方同意使用另一个端口。 默认情况下,希望使用 DoQ 与特定服务器的 DNS 客户端必须建立到服务器上的 UDP 端口 TBD 的 QUIC 连接,除非双方同意使用另一个端口。
DoQ 连接不得使用 UDP 端口 53。反对将端口 53 用于 DoQ 的建议是为了避免混淆 DoQ 和使用 DNS over UDP [RFC1035]。 在递归场景中,使用端口 443 作为双方同意的替代端口在操作上可能是有益的,因为与其他端口相比,端口 443 不太可能被阻塞。
在命令行中运行 tracert 命令。您需要把 IP 替换为公共解析 PublicDNS 的 IPv4 地址。
tracert -d PublicDNSIP
如果最后的结果没有显示公共解析 PublicDNS 的 IPv4 地址,您的网络连接可能存在问题,无法连接公共解析 PublicDNS。
如果最后的结果显示了公共解析 PublicDNS 的 IPv4 地址,则说明公共解析 PublicDNS 可能存在问题。
在命令行中运行 traceroute 命令。您需要把 IP 替换为公共解析 PublicDNS 的 IPv4 地址。
/usr/sbin/traceroute -n PublicDNSIP
如果最后的结果没有显示公共解析 PublicDNS 的 IPv4 地址,您的网络连接可能存在问题,无法连接公共解析 PublicDNS。
如果最后的结果显示了公共解析 PublicDNS 的 IPv4 地址,则说明公共解析 PublicDNS 可能存在问题。
Par@ish的博客