DNS is one of the cornerstones of the Internet. Nowadays, a substantial fraction of DNS queries are handled by public resolvers (e.g., Google Public DNS and Cisco's OpenDNS) rather than ISP nameservers. This behavior makes it difficult for authoritative nameservers to provide answers based on the requesting resolver. The impact is especially important for entities that make client origin inferences to perform DNS-based load balancing (e.g., CDNS). The EDNS0 Client Subnet (ECS) option adds the client's IP prefix to DNS queries, which allows authoritative nameservers to provide prefix-based responses. In this study, we introduce a new method for conducting ECS scans, which provides insights into ECS behavior and significantly reduces the required number of queries by up to 97% compared to state-of-the-art techniques. Our approach is also the first to facilitate ECS scans for IPv6. We conduct a comprehensive evaluation of the ECS landscape, examining the usage and implementation of ECS across various services. Overall, 53% of all nameservers support prefix-based responses. Furthermore, we find that Google nameservers do not comply with the Google Public DNS guidelines. Lastly, we plan to make our tool, and data publicly available to foster further research in the area.
翻译:DNS是互联网的基石之一。如今,大量DNS查询由公共解析器(如Google Public DNS和思科的OpenDNS)而非ISP域名服务器处理。这使得权威域名服务器难以根据请求解析器提供应答。对于依赖客户端来源推断实现基于DNS的负载均衡(如CDNS)的实体而言,这种影响尤为显著。EDNS0客户端子网(ECS)选项将客户端的IP前缀添加至DNS查询,使权威域名服务器能够提供基于前缀的响应。本研究提出一种新的ECS扫描方法,该方法能深入揭示ECS行为特征,并将所需查询量较现有先进技术减少高达97%。我们的方法还首次实现了对IPv6的ECS扫描。通过对ECS生态进行全面评估,我们考察了各类服务中ECS的使用与实现情况。总体而言,53%的域名服务器支持基于前缀的响应。此外,我们发现Google域名服务器未遵循Google Public DNS指南。最后,我们计划公开工具及数据,以推动该领域的进一步研究。