点击关注 InfoQ,置顶公众号
接收程序员的技术早餐
作者|Matthew Prince
编辑|Alice
4 月 1 日,全球顶级 CDN 提供商 Cloudflare 宣布其正式推出 1.1.1.1 公共 DNS 服务,用户可以使用它来加快互联网访问速度,同时保持连接的私密性。Cloudflare 方面表示他们的目标是希望 1.1.1.1 能够成为全世界最快的 DNS 公共服务,并且还兼具安全性。在此之前,Google(8.8.8.8)和 IBM(9.9.9.9)早已推出过类似服务,国内的 BAT 等大厂也有。以下为 Cloudflare 在其官方博客中对 1.1.1.1 的描述,聊聊架构做了翻译,供读者阅读参考了解。
Cloudflare 公司的使命在于协助建立更美好的互联网使用体验。今天,我们骄傲地推出 1.1.1.1——互联网上速度最快且高度关注隐私保护的消费级 DNS 服务。这亦标志着我们朝着自身使命迈出了重要的另一步。今天的文章将具体探讨我们发布此项 DNS 服务的原因与该服务的具体定位。
DNS 快速入门
DNS 可谓是互联网的目录。只要你点击链接、发送电子邮件、开启移动应用等等,首先需要完成的任务就是帮助设备找到目标域名的地址。DNS 网络包含两大组成部分:权威方 Authoritative(即内容端)与解析器(消费端)。每一个域名都需要拥有对应的权威 DNS 供应方。自 2010 年 9 月建立以来,Cloudflare 就一直致力于提供快速且高度普及的权威 DNS 服务。1.1.1.1 不会(直接)对 Cloudflare 的权威 DNS 服务造成任何影响。
DNS 系统的另一大组成部分为 resolver。每台接入互联网的设备都需要对应的 DNS 解析器。在默认情况下,这些解析器会由你所接入的网络进行自动设置。因此,对大部分互联网用户而言,在接入某家互联网服务供应商、咖啡厅提供的 Wi-Fi 热点或者移动网络时,都会由网络运营商决定你使用哪种 DNS 解析器。
DNS 的隐私问题
问题在于,这些 DNS 服务往往速度很慢且并不重视隐私保护。很多互联网用户并没有意识到,即使你访问的是加密网站——即浏览器地址栏前有绿色的锁头标志——你的 DNS 解析器仍能够了解到你访问的所有网站。这意味着默认情况下,你的互联网服务供应商、你所接入的每个 WiFi 网络乃至移动网络供应商,都将拥有你所访问的一份完整网站列表。
网络运营商一直在嘲笑着用户所浏览的数据,并从中寻找获利方式。在美国,参议院已经于一年前投票决定取消对互联网服务供应商出售用户浏览数据的限制,这意味着此种行为已经趋于合法化。
因此除了 Facebook 以及谷歌等数据收集大户之外,如今我们也需要对 Comcast、时代华纳以及 AT&T 等互联网服务供应商抱持谨慎的审视态度。此外,可以肯定的是,世界各地的互联网服务供应商也都看到了同样的隐私入侵机会。
DNS 的审查问题
更可怕的是,隐私问题引发的绝不仅仅是针对性广告投放。Cloudflare 公司拥有 Galileo 项目,旨在全球各政治或艺术机构免受网络攻击活动的威胁。通过这一项目,我们保护着中东的 LGBTQ(即性少数群体)组织、报道非洲政治腐败活动的记者、亚洲的人权工作者以及与克时米亚冲突相关的博客等等。我们对该项目感到自豪,也关于阻止各类针对性网络攻击活动。
但令我们感到沮丧的是,我们用于保护众多正义团体的 DNS 服务往往受到极为严苛的审查与限制。尽管我们擅长阻止网络攻击,但如果消费者的 DNS 选择面受到控制,我们将无法为其提供任何帮助。
2014 年 3 月,土耳其政府在政治腐败丑闻泄露之后决定屏蔽 Twitter。该国互联网服务供应商的 DNS 解析器屏蔽了一切指向 twitter.com 的 DNS 请求。人们直接在墙上喷涂了 8.8.8.8(谷歌的 DNS 解析器服务 IP)以帮助土耳其人民重新获得访问能力。必须承认,谷歌的 DNS 解析器做得很出色,但我们认为我们可以做得更好。
建立消费级 DNS 服务
DNS 基础设施的不安全性已经成为互联网核心中的一大缺陷,因此 Cloudflare 团队开始着手解决这个问题。鉴于我们运营着全球规模最大、连接体系最完善的网络之一,同时亦拥有着丰富的 DNS 经验,因此我们已经准备好推出自己的消费级 DNS 服务。我们开始测试,并发现我们全球网络上的解析器拥有超越其它任何现有 DNS 服务的实际表现(包括谷歌的 8.8.8.8)。这样的结果无疑令人振奋。
我们开始与浏览器开发商讨论他们希望拥有怎样的 DNS 解析器效能,而对方给出的答案中不断出现同样的词汇——隐私。除了确保不利用浏览器数据进行针对性广告投放之后,他们还希望 DNS 解析器供应方能够在一周之内清理所有事务日志。这是一项简单的要求。事实上,我们还可以做得更好。我们承诺永远不会将查询 IP 地址写入磁盘,并在 24 小时之内清理所有日志。
Cloudflare 公司的业务从来不会追踪用户或销售广告。我们认为个人数据并不属于我们应当获得的资产。虽然我们确实需要一部分日志记录用以防止滥用并进行调试,但我们认为没有任何理由将这类信息保存超过 24 个小时。我们希望以诚实的态度开展业务并获取应得收益,因此我们致力于与审计企业毕马威会计师事务所保持长期合作,由其对我们的代码及实践进行年度审计,同时发布公开报告以确保我们的言行始终一致。
输入 1.1.1.1
接下来要做的,就是选择一条简单好记的 IP。DNS 系统存在的核心理由之一,就在于 IP 地址本身往往很难记忆。Google.com 很好记,172.217.10.46 则明显让人头痛。然而,DNS 解析器本身则无法使用这些域名,而只能以 IP 地址的形式存在。另外,如果我们希望能够在土耳其政变危机这样的特殊时期内为用户提供帮助,也应确保这一 IP 简单好记且能够轻松被喷涂在封面之上。
我们联系了 APNIC 团队——APNIC 是一家区域性互联网注册机构(简称 RIR),负责亚太地区的 IP 供应工作。共是全球 IP 分配工作的五大 RPR 管理方之一,另外四个分别为 ARIN(北美)、RIPE(欧洲 / 中东)、AFRINIC(非洲)以及 LANIC(南美)。
APNIC 的研究团队拥有 IP 1.1.1.1 与 1.0.0.1。虽然这些地址有效可用,但已经有很多人将其纳入各类随机系统,并导致其持续被垃圾流量所淹没。APNIC 希望研究这类垃圾流量,但每当公布相关 IP,相关流量都会将一切传统网络瞬间冲垮。
我们与 APNIC 团队讨论了我们打算如何建立起一套隐私至上且速度极快的 DNS 系统。他们认为这是个值得赞扬的目标。我们提供 Cloudflare 网络用于接收并研究垃圾流量,并以此换取能够使用这条简单好记的 IP 以搭载自己的 DNS 解析器服务。就这样,1.1.1.1 正式诞生了。
愚人节?不是开玩笑吧?
接下来的惟一问题在于,我们该何时推出这项新服务?这是 Cloudflare 公司推出的第一款消费级产品,因此我们希望能够吸引到更多受众。此外,我们也拥有着极客这一重身份。1.1.1.1 有 4 个 1,所以很明显,4 月 1 日就是最理想的启动日期。
而且,愚人节其实也没什么大不了——毕竟很多科技企业都会在这一天公布一些惊世骇俗的新闻,而全球媒体及非科技人士也乐于关注这一切。
另外我们也在给自己打气——Gmail 是一项非常优秀的消费级服务,其推出时间正是 2004 年 4 月 1 日。而且我要向大家发誓,这绝对不是什么玩笑。要证明这一点,方法非常简单——你只需要前往 1.1.1.1,按照说明进行设置,而后亲自体验。这项服务真实存在,而且非常出色!
我们为何要建立这样一项服务?
答案很简单,我们希望贯彻自己的使命:协助建立起更美好的互联网体系。Cloudflare 公司的每一位员工,每天都在努力让互联网变得更好、更安全、更可靠且更高效。听起来似乎有些陈词滥调的意味,但事实就是如此。
2014 年,当我们决定为所有客户免费启用加密时,很多人都认为我们疯了。除了技术与财务成本之外,SSL 当时还是我们免费与付费服务的主要区别所在。但面对如此艰难的挑战,事实证明我们的决定对于整个互联网来说都是个正确的选择。我们为此感到自豪,而且直到三年半之后,其它行业才开始纷纷效仿。在我们看来,从存在之日起,网页就应该进行加密——而我们则在努力从自身做起解决这些问题。
去年,当我们在各类项目当中以免费及不计费方式提供 DDoS 缓解功能时,很多人再次表示震惊。但这是正确的决定,毕竟我们不应该指望银行等大型客户自己想办法抵御黑客攻击与网络冲击。随着时间的推移,我们确信 DDoS 缓解功能应当成为所有平台都包含的一种服务,而我们必须率先将其变为现实。
我们之所以能够拥有如此优秀的团队,部分原因也正在于这种责任感与使命感——我们愿意主动迎接如此重大的挑战。在办公区附近逛逛,你会发现工作人员的笔记本电脑上都贴有 1.1.1.1 标签。这是因为我们为自己的工作成果而感到自豪。凭借着这样的心气,我们才成就了如此重大的壮举。
迎接更好的 DNS 基础设施
但还有更多。DNS 本身已经拥有 35 年历史,而这项协议也呈现出了老态。事实上,其根本没有考虑到隐私或者安全性问题。当我们与浏览器、操作系统、应用程序以及路由器厂商进行沟通时,他们都对这一点感到遗憾。而且即使是采用了隐私至上的设计(例如 1.1.1.1),DNS 在本质上仍然未经加密,因此其会将数据泄露给任何监控你网络连接的家伙。虽然使用 1.1.1.1 后,监控难度要比直接使用互联网服务供应商服务更高一点,但其仍称不上安全无忧。
因此,最重要的是向现代协议转移。目前我们拥有多种潜在选项。首先是 DNS-over-TLS,其继续使用现有 DNS 协议并向传输层中添加加密机制。另一种则是 DNS-over-HTTPS,其支持利用其它传输层(例如 QUIC)以及服务器 HTTP/2 Server Push 等技术实现安全增强。DNS-over-TLS 与 DNS-over-HTTPS 都属于开放标准,而且我们已经确保 1.1.1.1 能够对二者提供支持。
我们认为其中 DNS-over-HTTPS 的前景更为光明——其速度更快、更易于解析及解密。截至目前,谷歌是惟一支持 DNS-over-HTTPS 的大型服务供应商。然而,由于显而易见的原因,非 Chrome 浏览器与非 Android 操作系统一直不愿提供这类会将数据发送给竞争对手的服务。我们希望提供独立的 DNS-over-HTTPS 服务,并将看到更多立足浏览器、操作系统、路由器以及应用程序的支持性实验性项目。
我们也不打算成为惟一的此类服务选项。DNS 供应商的多元化显然是件好事,因此随着时间的推移,如果能够拥有一个更为强大的 DNS-over-HTTPS 支持生态系统,这将成为我们在推进自身使命并协助建立更美好互联网过程当中最值得自豪的成就之一。
让我们共同努力
目前,在查询非 Cloudflare 客户时,DNSPerf 将 1.1.1.1 排为全球最快的 DNS 解析器(全球平均延迟为 14 毫秒)。而如果你是 Cloudflare 权威 DNS 的客户,那么速度表现将更上一层楼。由于解析器与递归器位于同一网络上,运行在相同的硬件中,因此我们可以快速回应 Cloudflare 客户的查询。此外,我们也支持即时更新,意味着你无需等待 TTL 过期。
换言之,1.1.1.1 的每一位新用户都会令 Cloudflare 的权威 DNS 服务有所改善,而这又将反过来为每位用户带来更好的使用体验。因此,如果你身为 Cloudflare 客户,请鼓励用户尝试 1.1.1.1,这将保证每位参与者都获得理想的性能优势。
你可以立足任意设备访问 https://1.1.1.1/ 以使用互联网上速度最快且最关注隐私保护的 DNS 服务。