DNS是互联网的基石之一,如何持续提供高质量DNS服务,是业界一直探寻的方向。easyDNS的创始人Mark Jeftovic在接受LuxSci公司的采访时,介绍了easyDNS的架构与攻击防御措施。
自1999年以来,LuxSci一直与 easyDNS 在提供 DNS 及域名注册服务等方面进行着合作。由于业务量巨大,我们推出了“企业DNS”门户网站,LuxSci及其客户可以通过该网站管理自己的域名。由于这些年来easyDNS一直提供高质量的DNS服务和支持业务,管理态度友好务实,LuxSci也因此与easyDNS始终保持着合作关系。LuxSci相信,通过与easyDNS的合作,能够给客户提供质量最高、稳定性最好的DNS服务。DNS服务对企业来说至关重要,如果企业的DNS出了问题,那么其他业务也就无法开展。
目前,LuxSci将 DNS及域名注册 服务作为其电子邮件和网页寄存服务的附加内容提供给客户,价格很有竞争力,而且提供的服务包含所有可以直接从easyDNS获取的功能。另外,LuxSci还会帮助客户完成DNS和域名注册时的设置工作,并在客户修改配置时进行协助,最大程度地减小出错的几率。正是因为如此,LuxSci的技术支持备受赞誉。LuxSci的客户也可以选择自主管理DNS,只要使用用户名登录就可以随时管理自己的DNS。
Mark Jeftovic是easyDNS最初的创始人和架构师之一,现在是easyDNS公司的唯一所有者。LuxSci希望通过此次对Mark的采访,让大家更好地了解easyDNS。
LuxSci: Mark,您能简单地介绍一下easyDNS公司的发展历程吗?
Mark Jeftovic:我们最初是另外一家公司。1994年到1996年间,我们做了许多定制网页开发的项目,也是最早一批使用SQL后端制作动态网站的公司之一。由于LAMP(Linux-Apache-MySQL-PHP)环境在当时还十分罕见,因此每当我们拿到一个新客户的项目,一般都需要将客户的网站转移到我们自己的服务器上。
我们在修改DNS、锁定或解锁客户的域名时总是遇到问题。这是因为客户虽然购买了域名,但却没有管理权限。域名的管理只能靠互联网服务提供商(ISP)、虚拟主机提供商或是其他第三方机构。
就像我们说过的那样,为了让客户能够“用自己的网页浏览器方便地”管理自己的域名,我们希望搭建一个域名管理平台并给客户提供一个操作面板,这便是我们最初的想法。1996年左右,我们开始构建系统。到了1998年,系统已经准备好上线了。当我们将系统上线后,域名管理业务也便蓬勃发展起来。2000年前后,我们关闭了先前的公司,专心运作easyDNS。
大概在2000年的时候,ICANN开放了域名注册并引入竞争机制,因此,我们也应运成为了一家OpenSRS的分销商。2001年,CIRA开放.CA域名的注册,我们获得了CIRA的代理注册认证。2003年,我们获得了ICANN的官方认可。
LuxSci: easyDNS支持多少个域名呢?在多少个国家提供域名服务呢?
Mark Jeftovic : 去年,我们收购了另一家DNS提供商Zoneedit公司。如果把Zoneedit和easyDNS管理的域名数目加起来,总数大概是三十万。我们的客户来自超过100个国家,easyDNS每天需要响应大约十亿次的DNS请求。
LuxSci: easyDNS为用户提供了几种不同的DNS服务器,比如dns1.easydns.com、dns2.easydns.net、 dns3.easydns.org等。这些域名背后的服务器或是其地理位置有什么区别?为什么使用了不同的顶级域名(com、net、org等)?
Mark Jeftovic : 这些域名未来很可能变动、重叠或重组,不过目前,它们的区别如下:
LuxSci: 将DNS服务器设在不同的国家是如何提高DNS服务质量的呢?
Mark Jeftovic : 对于DNS来说,冗余是个好东西。如果将名称服务器(Name Server)的信息进行广播(甚至不必用到任播的方法),当网络中的某些地方出现故障时,仍然会有一些服务器可以接收到任意节点发出的请求。在多接入数据中心协同定位时,上述机制的运行效果最佳。所以,一个数据中心几乎不太可能完全从互联网中断开。
DNS算法的工作原理是,一台名称服务器在初始时给所有的名称服务器发送请求信息,计算响应时间。之后再发送请求时,则发送给响应时间最短的名称服务器(大意是这样,细节还有很多)。当你把你的名称服务器进行广播后,你就得到了最佳的DNS请求定向信息。
当多个名称服务器响应同一个IP地址的网络中加入任播后,那么,在一个名称服务器进行第一次响应时间检测时,该名称服务器的请求会经过任播节点,而任播节点已经拥有了包含访问当前节点最短路径的路由表,所以将会获得2次最佳定向信息:一次是由“最近”的任播链节点发回,另一次则是从任播链最先应答的某一处发回。
LuxSci: DNS服务的可靠性和故障发生时的恢复能力是其最重要的性能。过去的几年里,有很多次比较严重的针对easyDNS以及其他公司的分布式 拒绝服务攻击 ,同时也有其他类型的攻击。这些攻击的强度和频率似乎有增长的趋势。您认为针对DNS提供商的DDoS攻击确实在增加吗?您如何看待这种趋势?
Mark Jeftovic : 在我们的《 主动式名称服务器白皮书 》中,我们给出了一张显示DDoS攻击强度随时间变化的图表。这幅图表中预测2020年时,DDoS攻击强度将会达到1.2TB(Terrabyte,十万亿比特)。我认为这个预测还过于乐观,去年的NTP反射攻击就已经达到了每秒300 GB。
这便是为什么我认为抵抗DDoS攻击最明智的方法是获取并维护“DNS马赛克”。“DNS马赛克”始终与给定的DDoS攻击向量有差别,对所有非DDoS攻击对象都适用。事实上,大多数DDoS主要造成的是间接伤害。例如其他人受到了DDoS攻击,而受害者和你的服务提供商相同,那么你更有可能会因此受到影响,而不是自身作为目标直接遭受DDoS攻击。
DNS故障会立即使网络瘫痪,所以DNS是最常见的攻击目标。移除了攻击目标的名称服务器,也就没有了可以攻击的目标,便从根本上遏制了攻击。
LuxSci: 在DDoS攻击发生时,easyDNS如何确保可以继续提供服务?
Mark Jeftovic : 我们拥有多个服务提供商,这使得我们的DDoS缓解控制措施,甚至我们自己的DNS都能有冗余(详见下一个问题)。
如果必须保证每时每刻都能百分之百地有可用的DNS,那么就需要使用多DNS的解决方案,通过一致性策略维护当前网域(zone)的DNS交互数据,并可以在运行中切换DNS。
这正是我们所做的工作。我们有一项正在申请专利的服务——“主动式名称服务器”,可以在名称服务器层上实现故障转移。我们的重点在名称服务器上,而不是在主机名失效时,于给定网域内转移主机名的故障。我们的做法是,在名称服务器出现故障时,自动调取备份的名称服务器开始工作。
我们使用亚马逊Route 53和Zoneedit作为备份(你也可以根据自己需要设置更多的备份池)。当我们遭受DDoS攻击时,我们只用简单地将备份名称服务器加入到授权名单中,或者完全切换到使用备份名称服务器的模式。这个过程完全自动,效果很好。这些年来甚至在遭受非常严重的DDoS攻击,easyDNS名称服务器都受到了非常大的影响时,easyDNS的控制系统和辅助服务(如电子邮件、转发功能等)仍然可以正常工作。
LuxSci: 为了避免针对DNS提供商的DDoS攻击所带来的影响,用户们可以做些什么?
Mark Jeftovic : 地理冗余和网络冗余之后,冗余的下一个层次是多提供商冗余。正如我刚才所说的那样,我们自己就和合作的其他DNS提供商进行了整合,我们的客户也可以使用这些提供商的服务。
因此,如果你同时在使用easyDNS和亚马逊Route 53的服务,你只需要在一个控制面板上操作就可以整合自己的网域。我们也进行了Linode.com、Digital Ocean 还有Google’s cloud DNS的整合,不过目前还都是测试版。
你还可以做的一件事是监视,然后在不同的名称服务器池和提供商之间切换,并使这个过程自动化。不过这是我们的“主动式名称服务器”解决方案要做的工作,我们也称之为“ Plan B DNS ” 。
LuxSci: 新闻报道过许多 DNS污染 攻击的事件。easyDNS考虑过DNS污染相关的问题吗?您认为在防止用户受到此类攻击方面,未来可以采取哪些措施?
Mark Jeftovic : DNS污染攻击主要针对的是递归名称服务器或域名解析器,并非权威DNS服务器。显而易见,这不是我们的主要矛盾。easyDNS支持DNSSEC,可以帮助客户避免DNS污染的影响。
但是我发现最近一段时间,更容易实现的破坏是入侵提供商管理控制系统,要么通过软件漏洞,要么通过社会工程学的途径侵入。侵入后,就可以轻松接管目标DNS。因此我们建议,在所有有条件的地方,始终开启全账号事件警报和双重认证。
LuxSci: DNSSEC(DNS Security)是一种DNS安全认证的机制,但还没有在实际应用中产生足够吸引力。easyDNS 支持DNSSEC吗?您怎样看待DNSSEC以及其他解决相同问题的技术的未来?
Mark Jeftovic : easyDNS支持DNSSEC,而且我们认为它是DNS发展中必然会出现的安全机制,尽管现在它还有很多缺陷。我个人认为,恶意的密钥滚动发生的频率更高,对网域的危害大于缓存污染。
LuxSci: 许多域名注册商(比如Network Solutions等)也为客户提供DNS服务。与这类公司相比,easyDNS的优势是什么?
Mark Jeftovic : 我常给别人讲一个笑话:“免费DNS不干活时也免费。”免费的DNS虽然不收费,但却时常故障,无法保证长时间稳定工作。大多数网络用户、虚拟主机、互联网服务提供商、甚至域名注册商,都不会提前考虑DNS的重要性。直到DNS服务器出现问题,他们才开始意识到要好好改善DNS服务。DNS对于互联网至关重要,因而我们的宗旨便是:“DNS如春雨,润物细无声。”
LuxSci: 像UltraDNS等顶尖DNS企业也在竞争同LuxSci等服务提供商的合作。在这场竞争中,easyDNS的优势又是什么呢?
Mark Jeftovic : 最近有一种说法是,我们公司给出的服务价格更有竞争力。这种说法比较奇怪,因为在和域名注册商对比时,easyDNS的服务通常都被评价为“昂贵但值得拥有”。虽然注册商不仅以极其低廉的价格出售域名,还附带提供DNS服务,但是,我们拥有任播DNS技术,还针对DDoS部署了防御措施,而且价格也并非昂贵到难以承担。
LuxSci: easyDNS近期有重要的新功能发布吗?
Mark Jeftovic : 主要的新功能就是DNS整合和主动式名称服务器。主动式名称服务器这项功能由我们公司最先发明,属于世界首创。
我们刚刚完成了第二版的GeoDNS,目前正在用PHP.net进行在线测试,今年秋天就可以发布了。
我们同时也在开发其他几样产品,但都还处在非常原始的阶段。
《他山之石》是InfoQ中文站新推出的一个专栏,精选来自国内外技术社区和个人博客上的技术文章,让更多的读者朋友受益,本栏目转载的内容都经过原作者授权。文章推荐可以发送邮件到editors@cn.infoq.com。
感谢魏星对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群 (已满),InfoQ读者交流群(#2) )。