2019年1月30日星期三

DNS Flag Day对域名解析的影响

  DNS Flag Day是由Google、ISC(BIND)、PowerDNS、思科、Cloudflare等诸多国际知名DNS服务提供商联合发起的一项关于不再继续采取 "EDNS error workaround"措施的活动。

  这是一项针对授权DNS的、共识性的全球更新,旨在确保所有主要DNS基础架构都遵循新的EDNS标准(DNS扩展机制)。

  DNS Flag Day是针对DNS协议的扩展协议标准(简称EDNS)的规范,在原来DNS协议基础上补充扩展,以方便增加拓展DNS附加功能。比如dnssec,这个是在原来DNS基础上增加的新功能。

  DNS Flag Day 背景

  EDNS是对DNS协议的扩展补充(RFC6891),比如DNSSEC,Client Sub net,支持大于512字节DNS响应等都是通过EDNS(Version=0)来实现扩展支持的。但是一直以来,很多DNS的权威域名服务器不能规范的处理EDNS扩展,导致类似google、BIND等公司或软件需要针对不能正确处理EDNS request的NS服务器再次发起不包含EDNS opt的请求(EDNS error workaround)来获得最终解析结果,虽然可以通过这种做法获得解析结果但这导致了DNS解析方面会存在很大的延迟。

  DNS Flag Day会造成什么影响?

  在2019年2月1日后,对于不支持EDNS协议的授权DNS服务器,将会被Google、Cloudflare、Cisio/OpenDNS、ISC/BIND等公共DNS、递归DNS标记为服务不可用,从而导致域名无法正常解析。

  不正确处理EDNS请求,将可能导致实施了"DNS Flag Day"的public dns服务商无法获取正确解析结果。

  EDNS目前依然不是强制支持项,企业可能本来就拒绝EDNS,同时也不会全球所有的public dns都会实施 DNS Flag Day,根据企业的解析来源属性不同,以及企业所用的DNS系统对RFC6891标准遵从性不同(The software does not need to support EDNS(0) extensions but must respond correctly when asked according to EDNS standard section 7),影响结果可能不会那么大,但还是需要注意目前ISC,google,cloudflare都明确表示会执行,因此可以预见越来越多的Public DNS会执行上述行为。

  如何验证域名是否受影响?

  如需验证你当前DNS解析服务商是否符合规范,请访问如下网站进行检测:

  https://dnsflagday.net

  如果不符合规范,检测结果将会出现"STOP"信息。

  原文链接:《DNS Flag Day对域名解析的影响》