长亭百川云 - 文章详情

DNS 解析数据大局观

Avenger

53

2024-07-31

工作来源

IMC 2019

工作背景

现代权威 DNS 服务器非常复杂,可以根据请求的地理位置、延迟与内容过滤策略给出不同的响应。任何被动方式评估 DNS 的研究人员,都只能了解到部分情况。此前 OpneINTEL、Project Sonar 与 RIPE Atlas 项目都是主动测量,覆盖范围与场景都存在差异。

工作设计

流量中提取的特征如下所示:

  • srvips:nameserver IP 地址数

  • srcips:递归解析服务器 IP 地址数

  • sources:SIE Contributor 的数量

  • hits:迄今为止看到的总次数

  • unans:未响应请求数

  • ok, nxd, rfs, fail:RCODE 为NoError、NXDOMAIN、Refused与ServFail的响应量

  • ok_ans, ok_ns, ok_add:无错误响应中非空 ANSWER、非零 NS 记录、非空 ADDITIONAL

  • ok_nil:ok_ans 与 ok_ns 均不满足(无数据/NoData)

  • ok6, ok6nil:所有无错误、无数据的 AAAA 请求

  • ok_sec:DNSSEC 给出的响应(设置 EDNS0 DO Flag)

  • qnamesa, qnames:所有请求中的 QNAME 去重数、无错误响应中的 QNAME 去重数

  • tlds, eslds:无错误响应中TLD与ESLD的数量

  • qtypes:QYTPE的数量

  • qdots, lvl, nslvl:QNAME 标签数、ANSWER 记录数、AUTHORITY的NS记录数

  • ip4s, ip6s:A/AAAA请求中无错误响应的去重 IP 地址数

  • ttl, nsttl:权威响应中的 TOP3 TTL 及其分布情况

  • resp_delays:响应延迟的四分位数

  • network_hops:解析服务器与 Nameserver 之间跳数的四分位数

  • resp_size:响应包大小的四分位数

这些特征底层使用简单计数(hits)、平均值(qdots)、直方图(resp_delays)或者基数估计(ip4s)。对于较大的值集中的元素数量,使用HyperLogLog 算法进行近似。

每分钟生成一个序列,再逐渐聚合到十分钟、一小时、一日与一月对应的数据。

使用 Space-Saving 算法在控制内存用量的情况下跟踪 TOP 对象

工作准备

通过分布在全球数百个解析服务器的观测点收集收据,2019 年 1 月到 2019 年 4 月共收集了 1.6 万亿。数据峰值为每秒 20 万次请求,平均每天 130 亿。在一分钟的时间窗口内,能够观测到超过 150 个存在的 FQDN 与 110 万个不存在的 FQDN。

收集的数据:

  • srvip:TOP 10 万 Nameserver 服务器

  • etld:TOP 1 万 eTLD

  • esld:TOP 10 万 eSLD

  • qname:TOP 10 万 FQDN

  • qytpe:所有 QTYPE 的聚合结果

  • rcode:所有 RCODE 的聚合结果

  • aafqdn:权威应答中 TOP 2 万 FQDN

  • srcsrv:TOP 3 万“解析服务器与 Nameserver”的 IP 对

工作评估

TOP 10 万的 Nameserver 能够覆盖 94.9% 的 DNS 数据,长尾效应非常明显。无错误响应中 NoError+Data 占总量的64.4%,NoData 占 4.7%。大部分 DNS 流量可能仅由 1000 个权威 Nameserver IP 地址处理,DNS 并没有分布在 IP 地址空间中。并且,NXDOMAIN 流量超过 20% 与大型僵尸网络有关。Mylobot 的 DGA 算法会在数千个不存在的 SLD 下生成数百万个 FQDN。

TOP 10 万的 FQDN 覆盖所有 DNS 数据的 23.2%,TOP 1 万的 FQDN 占比约为 18.6%。很多 FQDN 只用一次就废弃,长尾更加明显。

TOP 10 万的 eSLD 占所有 DNS 数据的 68.5%,请求量最大的 CDN、云服务、社交媒体与电子商务等占比很高。

按自治系统来统计,TOP 10 的组织管理了全球超过一半的 DNS 请求。亚马逊以 16% 的份额高居榜首,可能是由于大量流行的网站都部署带 AWS 上。全球最大的两个 CDN(Akamai 与 CloudFlare)共处理全部 DNS 的 13%,由于 CloudFlare 常使用 IP Anycast,其 Nameserver 的数量比 Akamai 少的多。CDN 厂商的延迟与跳数明显更低,说明厂商针对性做了优化。

TOP 10 的 QTYPE 覆盖 99.5% 的 DNS 数据,A 记录大概是 AAAA 记录的三倍。A 记录的 NXDOMAIN 响应率为 22%,AAAA 记录大概为 5.9%。令人惊讶的是,PTR 记录的请求竟然如此之多,这些请求通常是服务器与其他互联网基础设施发出的。NS 记录虽少,但 86% 都是 NXDOMAIN。这可能是伪随机子域名共计,响应大小也比平均更大。

TOP 10 万 Nameserver 中,只有 0.9% 的 Nameserver 中值响应延迟高于 1 秒。小于 1 秒的延迟中,七成的延迟在 35 毫秒到 350 毫秒。

TOP 2.5 万的延迟与跳数如下所示,确实最流行的服务器更快。

根 Nameserver 与 gTLD 的情况如下所示,拥有最多镜像的根 Nameserver 也是最快的。总的来说,根 Nameserver 处理 3% 的 DNS 数据,但其中会产生 96.2% 的 NXDOMAIN 响应。而 gTLD 处理 9.6% 的 DNS 数据,其中产生了 26.4% 的 NXDOMAIN 响应。

活跃使用的 Nameserver 共有 150 万个唯一 IP,接近一半的 /24 前缀中都只有一个地址。

以 xmsecu.com 为例,该域名从 2019 年 4 月 4 日的 TTL 从十分钟锐减至十秒钟。由于 TTL 减少,请求量暴涨。

TOP 100 的 SLD 的 TTL 变化如下所示,TTL 与 DNS 流量间几乎呈现反线性相关。

查看 FQDN 的 A 记录与 NS 记录的 TTL 分布,特定小时内至少 10% 的 DNS 响应为新值就被分类为变化。

相关推荐
关注或联系我们
添加百川云公众号,移动管理云安全产品
咨询热线:
4000-327-707
百川公众号
百川公众号
百川云客服
百川云客服

Copyright ©2024 北京长亭科技有限公司
icon
京ICP备 2024055124号-2