2024 年 5 月 15 日
DNS 旨用于网络查询流量定向,是互联网的主索引。最简单的比喻就是手机上的联系人列表:联系人按姓名排序,并包含特定的电话号码或地址。简单来说,DNS 就像是互联网的联系人列表。所有互联网服务器都使用 Internet 协议 (IP) 地址,除了少数变体之外,这些地址通常都是几组由句点分隔的数字(例如 123.456.789.100)。
域名系统并非始终是访问网络信息的默认设置。在互联网的早期阶段,由小组独立网络分别管理各自的命名约定。直到 1983 年,集中式 DNS 的概念开始出现。当互联网工程任务组于 1986 年成立并将标准和优秀实践应用于新兴平台时,DNS 是其最初采用的指导准则之一。
然而,Web 旨在通过我们可以记住的域名来提供简单的用户体验,例如 www.oracle.com。DNS 是将域名与其正确的 IP 地址联系起来的系统。当 Web 用户在浏览器中输入域名时,本地互联网服务提供商 (ISP) 将使用 DNS 来识别域名的正确 IP,从而允许网络用户下载所需的页面或资产。其他具体步骤发生在后台,但大多数用户都将获得这样的用户体验。
一般用户很容易将域名系统和域名服务器与首字母缩写词 DNS 相混淆。那么它们之间有何区别?DNS 指的是域名系统,而域名服务器确切来说并不是一个真正的专业术语。但人们反而倾向于使用名称服务器,即用于解析本地名称相关查询的本地 DNS 服务器。域名系统可通过查阅一个更大、更全面的系统来转换域名和 IP 地址。下文描述了 DNS 过程和各种域名服务器的作用。
Dyn 最初成立于 2001 年,从一个以学生为主导的项目发展成为国际 DNS 服务公司。Oracle 于 2016 年收购了 Dyn;从那时起,Dyn 的 DNS、Web 应用安全、电子邮件交付服务就与 Oracle Cloud Infrastructure 实现了全面集成。这显然扩展了 Dyn 的功能,能够灵活地利用 Oracle Cloud 的可用服务。
虽然上文已经介绍了 DNS 的用户体验,但许多进一步的步骤是用户看不见的。用户通常只能在其 Web 浏览器的状态栏中看到步骤,例如“正在联系主机”和“正在等待响应”。网页加载过程的初始活动以 DNS 查找和转换为主。
要理解 DNS 的工作原理,首先应当了解一些定义:
具体来说,它采用以下步骤,但浏览器或操作系统中的本地缓存可以绕过其中一些步骤。
用户发起查询:Web 浏览器的用户通过键入域名、点击超级链接或加载书签来发起查询。查询将通过互联网到达递归 DNS 解析器。
解析 TLD:解析器会查询权威名称服务器,该服务器生成顶级域 (TLD) 响应,通过响应来标识域的后缀(.com、.org 等)并转发请求。
解析名称服务器:TLD 服务器使用域的名称服务器的适当 IP 地址进行响应。
解析 IP 地址:识别出名称服务器后,递归 DNS 解析器会查询域的名称服务器。名称服务器返回相应的 IP 地址。
数据传输:识别出 IP 地址后,浏览器可以使用超文本传输协议 (HTTP) 请求为目标页面和/或资产传输数据。
对于大多数个人甚至小型企业,他们真正需要考虑的只是购买商业级别的域名。这意味着购买一个可用的域名(通常每年约 10-15 美元),使用网络主机的名称服务器配置域名,然后就可以开展业务了。
但是,从企业层面来说,DNS 则有更多的因素需要考虑。依赖提供商的 DNS 会产生各种限制。例如,这将让 DNS 实现集中,但对于处理国际流量的企业而言,地理距离会减慢响应速度。如果要超越网页,进入需要处理针对国际用户群的查询/响应的应用,那么这一因素可能会更加重要。物理距离和集中式 DNS 的这种组合会产生单点故障,从而产生长时间的超时(就互联网流量而言,几秒钟的延迟就已经非常长了)。企业 DNS 设置使用专有网络,通常具有不同的地理位置。这将为处理流量创造多层冗余和地理效率,即使发生服务器问题也是如此。
安全性也是一个问题,因为未加密的 DNS 通信可能会导致恶意软件和其他危险。企业 DNS 服务通常具有针对分布式拒绝服务 (DDoS) 攻击的保护协议,可提供多个层来降低攻击影响,同时保持域的可访问性。
为了更加深入地理解企业 DNS 的使用方式,请仔细查看以下情形。
智能流量路由
互联网流量伴随着大量来自用户的变量。比如位置、频率、因突发事件或宣传导致的大量流量,以及许多其他可能会导致流量激增的因素。DNS 流量管理有助于通过智能系统来平衡这一点,该系统旨在根据位置引导流量、根据 IP 前缀引导流量、在硬件之间实现负载均衡,并利用其他此类工具来平衡资源以及确保最终用户拥有快速响应的体验。
高可用性
每一家企业和组织都希望尽可能延长其站点的正常运行时间,但一些情形(例如持续查询数据库的应用)会优先考虑高可用性。DNS 是确保高可用性的等式的一部分,其实现方式是在硬件网络中,针对自然灾害、停电、天气和其他不可控因素造成的故障进行平衡。这种地理上多样化的网络具备强大的冗余水平并可确保服务不间断。
DNS 缓存管理
DNS 缓存是一个有效帮助最终用户加快加载/响应速度的工具。不过,需要对 DNS 缓存进行有效管理,才能确保准确性和防止 DNS 中毒,从而降低私有数据良性暴露的风险。在更大的 DNS 管理范围中,一般通过微调 DNS 缓存来满足组织要求。
Oracle 的全球分布式 DNS 服务是 Oracle Cloud Infrastructure 的一部分,旨在提供企业 DNS 功能。这最终有助于增强 DNS 性能、弹性和可扩展性,从而确保最终用户随时随地快速连接客户应用。
注:为免疑义,本网页所用以下术语专指以下含义: