本文档介绍移动解析 HTTPDNS 的产品优势。
传统 DNS 的风险
在传统的 DNS 流程中,客户端基于 UDP 协议向 Local DNS 服务器发送 DNS 查询请求。这样会带来以下风险:
- UDP 协议不具备加密功能。因此,基于 UDP 协议的 DNS 查询请求可能会被窃听或劫持。
- Local DNS 服务器是由本地的网络运营商管理和维护的。由于不同网络运营商的管理方式和维护能力不同,Local DNS 服务器可能会出现以下问题:
- 缓存刷新不可控:Local DNS 服务器缓存的更新时间不可控。例如,某条 A 记录在权威 DNS 服务器上更新后,不同网络运营商的 Local DNS 服务器并不会在同一时间获取更新。这样会造成部分用户会访问到新的 IP,而其他用户仍然会访问到旧的 IP。
- DNS 劫持:Local DNS 服务器缓存中的记录被恶意篡改,使其指向了钓鱼网站或者广告页面。
- 解析结果跨网:客户端的 IP 地址与 Local DNS 服务器返回的 IP 地址不属于同一个网络运营商,导致网络连接质量差。在以下情况下,可能出现解析结果跨网:
- DNS 查询请求转发:在递归解析过程中,网络运营商 A 的 Local DNS 服务器可能会把 DNS 查询请求转发给网络运营商 B 的 Local DNS 服务器。在网络运营商 B 发起递归 DNS 查询的过程中,权威 DNS 服务器返回的 IP 地址属于网络运营商 B。
- 多个出口 IP 地址:Local DNS 服务器通过网络地址转换(NAT)将内部 IP 地址转换为互联网出口 IP。Local DNS 服务器一般有多个出口 IP。假设客户端的 IP 地址属于网络运营商 A。Local DNS 服务器向权威 DNS 服务器发送 DNS 查询请求时,会根据权威 DNS 服务器的 IP 地址进行 NAT 转换。转换后得到的出口 IP 有一定概率属于网络运营商 B。这样,权威 DNS 服务器返回的 IP 地址也属于网络运营商 B。
- 解析超时:由于网络延时、Local DNS 服务器异常等原因,造成客户端的 DNS 查询请求超时。客户端无法获得域名的 IP 地址。
移动解析 HTTPDNS 的优势
相比传统 DNS,移动解析 HTTPDNS 具备以下优势:
安全防劫持
移动解析 HTTPDNS 绕过 Local DNS 服务器,基于 HTTP/HTTPS 协议向 HTTPDNS 服务端发送 DNS 查询请求。这样就降低了 DNS 查询请求被窃听或劫持的风险。
精准的 DNS 解析结果
移动解析 HTTPDNS 通过以下方式确保您能获取精准的 DNS 解析结果。
- 精确到 “城市 + 网络运营商”:HTTPDNS 服务端的解析记录缓存中,每一条解析记录都包含城市和运营商信息。在客户端请求 DNS 解析的时候,服务端会根据请求 IP 的城市和运营商,返回匹配的解析记录,准确性高于 Local DNS 服务器。
- 流量调度精准:移动解析 HTTPDNS 有数百个服务端缓存的副本。在按解析记录的权重进行流量分配时,单个有效时间(TTL)内的流量分配精度高于 Local DNS 服务器。
- 使用自建 IP 库:移动解析 HTTPDNS 根据自建的 IP 库判断请求 IP 所归属的城市和运营商。该 IP 库实时更新,在准确性和覆盖度上有保障。
- 监控解析准确性:为了确保 DNS 解析结果的准确性,移动解析 HTTPDNS 设置了质量基线。如果请求 IP 与解析结果的 IP 在城市和归属运营商上不一致,技术支持人员会收到报警并去解决问题。
- 解析时效性保障:服务端的解析记录缓存中每一条解析记录的 TTL 与权威 DNS 中该解析记录的 TTL 是相同的。Local DNS 服务器的缓存刷新不可控的问题将不复存在。
自定义 DNS 解析结果
如果您希望某些域名可以映射到自定义的 IP 地址,可以在移动解析 HTTPDNS 控制台中配置自定义解析记录。例如,您可以把 www.volcengine.com 所映射的 IP 自定义为 192.168.2.2。