云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

CDN_如何入侵网站数据库_好用

小七 141 0

CloudFlare DNS简单、快速、灵活

在过去的几年里,CloudFlare博客涵盖了很多不同的主题,深入研究了我们用来保护网站不受攻击的技术,并对其进行了优化,以便为访问者提供更快的加载速度。到目前为止,我们还没有花足够的时间来讨论一件事,它恰好也是我们的服务以及互联网上任何服务工作方式的核心:DNS。CloudFlare免费提供DNS服务-您甚至不需要使用我们的任何其他免费性能或安全功能来利用我们的DNS。建立像我们这样的网络的一个副作用是,我们的域名服务具有与几乎所有其他域名服务提供商不同的特性:即使是在内容交付网络的尖端领域。这些独特的属性允许您在使用其他提供者时做一些更困难或不可能的事情。有点关于DNS不过,首先,对不熟悉的人做一个总结。DNS(域名系统)是人类可读地址的方式,例如网站被转换成计算机用来相互通信的IP地址,例如198.41.213.157或2400:cb00:2048:1::c629:d59d。你可以把它看作是世界上最伟大的电话簿,它把人类可读的名字,比如joebloggs变成你需要给他们打电话的号码串。DNS条目(或"记录",用正确的说法)是由DNS"nameservers"公布的,它保存着特定域名或域列表的记录,例如cloudflare.com网站. (作为补充说明,一个常见的误解是,域名的开头包括www:address网站实际上是cloudflare.com网站任何人都可以运行DNS名称服务器,并成为DNS网络的一部分。输入网站名称时网站进入你的web浏览器并点击enter,它做的第一件事就是请求一个DNS‘resolver’服务器(通常由你的ISP提供)找到与人类可读域名相对应的机器可读IP地址。为了做到这一点,就像邮递员寻找正确的房子投递信件一样,DNS解析程序从地址的末尾开始,一直工作到开头。首先,它向"root"名称服务器请求.com记录的位置。找到后,它会向.com名称服务器请求cloudflare.com网站域。一旦我们知道了,它就可以问cloudflare.com网站IP地址的名称服务器。web浏览器可以继续处理web请求,现在它已经有了正确的IP地址来发送它。请注意,实际上并不需要每次都找到根服务器和.com服务器,因为DNS服务器将缓存这些信息。

DNS请求

理论上讲,理论和实践没有区别。实际上,有。理论上都很好,但也有一些方法阻碍了这一进程。首先,假设您在伦敦使用DNS名称服务器运行一个网站,来自旧金山的人想要访问您的站点。为了找到正确的IP地址,他们需要从旧金山一直到伦敦提出请求。8611公里的距离会给请求增加一些延迟,并减慢网站的加载时间。其次,DNS记录有一个称为生存时间(TTL)的属性。这指定了DNS名称在刷新之前应与ISP的名称服务器一起缓存的时间长度。这种缓存意味着通常访问的名称不会一直被发送到谷歌的服务器。TTL越低(通常以秒为单位指定),DNS解析程序就越频繁地向名称服务器请求特定域名的DNS记录。通常为了节省流量和处理能力,web主机和其他DNS提供商会将此设置为数小时甚至数天。这意味着,如果您想对DNS进行一些更改,通常需要几个小时或几天的时间才能被网站的访问者看到,因为解析程序不知道是否要检查对您的域的更改。(Web主机通常将此称为"传播时间",尽管DNS记录需要"传播出去"的想法在很大程度上是一个神话:在大多数情况下,是Web主机或DNS提供商设置的TTL导致DNS更改延迟。)与所有服务器一样,DNS名称服务器也会不时失败,当他们这么做的时候,你的网站就会从网上掉下来。选播DNSCloudFlare路由流量的方式允许我们避开这些问题,并为引导提供了有趣的优势。与CloudFlare的其他网络一样,我们的DNS通过Anycast工作。这意味着,不必一直向可能位于不同大陆的web主机发出请求,而是将请求发送到CloudFlare全球24个数据中心中最近的一个。例如,我在英国,但是cloudflare.com网站在加州举办。即使如此,当我执行到CloudFlare的DNS名称服务器dns2的traceroute时。cloudflare.com网站,到达我们伦敦数据中心的服务器只需7个短跳。$traceroute dns2。cloudflare.com网站追踪到dns2。cloudflare.com网站(173.245.58.99),最多64跳,52字节数据包1 10.0.1.1(10.0.1.1)1.572毫秒1.875毫秒2.047毫秒2 lo0-central10.pcl-ag07。plus.net版(195.166.128.188)16.613毫秒16.897毫秒15.741毫秒3 link-a-central10.pcl-gw01。plus.net版(212.159.2.184)15.757毫秒15.601毫秒15.641毫秒4 xe-9-0-0.pcl-cr01。plus.net版(212.159.0.216)15.787毫秒16.378毫秒15.766毫秒5 ae1.ptw-cr01。plus.net版(195.166.129.0)15.888毫秒15.742毫秒15.549毫秒6 195.66.225.179(195.66.225.179)46.333毫秒**7 dns2。cloudflare.com网站(173.245.58.99)16.925毫秒15.713毫秒15.698毫秒这可以显著减少网站加载到世界各地访问者的时间。不仅如此,而且因为没有一个单独的物理DNS服务器,DNS在域中失败的几率大大降低。短TTL为了解决必须等待很长时间才能正确设置新的DNS记录的问题,CloudFlare默认所有DNS记录的TTL为5分钟。这意味着,如果您更改或添加新的DNS记录,您可以期望访问您的站点的访问者在5分钟内看到更改(平均2.5分钟)。除了不必再等待DNS传播之外,这还允许您对DNS记录执行其他提供程序无法执行的操作。假设您在一个不同IP地址的临时区域中为您当前的网站开发一个替代品,它现在可以上线了。你所需要做的就是通过你在我们这里的帐户更改IP地址,几秒钟后新网站将是实时的和公开的访问。或者,假设您家中有一个服务器,其中包含个人文件,如文档、音乐和其他您可能希望从工作或咖啡店访问的内容。包括CloudFlare在内的一些DNS提供商提供了一个API,因此您可以编写一个脚本来不断更新地址,例如home.example.com网站指向你家里的服务器,类似于DynDNS这样的服务,但有你自己的域名。如果TTL为小时或数天,更新您的家庭IP地址会使这样的脚本非常不可靠,因为您需要等待您的域记录更改。不过,使用我们的DNS,该地址的任何停机时间都不会超过几分钟,从而允许您随时远程访问您的文件。低ttl也有更严重的用途:假设您运行的是企业级服务,接近100%的正常运行时间是一个主要问题。如果您的一个服务器停止工作,快速DNS更改您的故障转移服务器的IP地址是所有需要重新启动它。与以前一样,此过程是可编写脚本的,并且可以设置为在脚本检测到连接到主服务器时自动发生。低TTLs的另一个优点是它意味着我们可以在短时间内移动客户使用的IP地址。这对于作为攻击缓解服务的CloudFlare来说非常重要。当攻击到达我们的网络时,我们的主要目标是隔离它,这样它就不会影响到任何其他客户,并且"空路由"它,这样它就不会去任何地方。降低DNS记录的TTLs甚至可以让我们在运行中执行此操作,从而使我们能够在攻击攻击到达我们的网络边缘后几秒钟内对其作出反应。结论展望未来,我们正在研究我们可以用我们已经建立的网络做的其他事情,以及我们可以在已经提供的服务的基础上添加其他与DNS相关的服务。一个有趣的特性是,流量可以根据访问者所在的位置发送到不同的IP地址,从而允许在多个数据中心中拥有服务器的客户根据其来源地直接请求。尽管目前,我们的DNS提供了业界最好的可靠性和速度,并且可以帮助您免费加快您的网站速度,而不管您是否使用CloudFlare提供的任何其他服务。Sam Howson是位于伦敦的CloudFlare支持团队的成员。当他不帮助客户利用CloudFlare令人惊叹的功能时,他喜欢用小提琴和曼陀林的声音刺激室友,去听音乐会、音乐会和戏剧,骑着自行车探索伦敦。CloudFlare正在招聘!你喜欢帮助别人,想在发展最快、最令人兴奋的科技公司工作吗?如果是这样,请查看我们的职业页面。我们正在寻找伦敦和旧金山办事处的团队成员,包括技术支持。