基本概念

更新时间:
复制 MD 格式

本文为您介绍云解析 DNS 的基础概念,帮助您了解相关知识,以便更好地理解和使用产品功能。

DNS

DNS(Domain Name System,域名系统)即“域名系统”。DNS是整个互联网服务的基础系统之一,同时也是企业内网服务的重要基础服务系统之一,负责将人们访问的互联网域名和企业内网域名转换为IP地址,这一转换的过程叫做“域名解析”, 所以DNS又称“域名解析系统”,相当于网络访问的指路牌。DNS作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问网络资源和网络服务,而不用去记住能够被机器直接读取的IP数串。DNS协议运行在UDP协议之上,使用端口号53。DNS从服务的网络环境来区分,分为公网DNS和内网DNS。DNS从解析链路扮演的功能角色来区分,分为权威DNS和递归 DNS。

域名的分层结构

域名采用层次树状结构命名,每个连接在互联网上的主机或路由器,都有唯一的层次结构名字。域名由标号(label)序列组成,各标号之间用点(小数点)隔开。关于域名层次结构如下图:

image

举例说明

  • .com顶级域名;

  • aliyun.com主域名,也叫二级域名;

  • example.aliyun.comwww.aliyun.com子域名,也叫三级域名;

  • test.example.aliyun.com子域名的子域,也叫四级域名。

DNS服务器层级

DNS解析过程涉及4个层级的DNS服务器,分别如下:

服务器类型

作用

根域名服务器

英文全称:Root Name Server,简称Root Server。本地域名服务器在本地查询不到解析结果时,则第一步会向它进行查询,并获取顶级域名服务器的IP地址。

顶级域名服务器

英文全称:Top-Level Domain Name Server,简称:TLD Server。负责管理在该顶级域名服务器下注册的主域名,例如“example.com”,.com则是顶级域名服务器,在向它查询时,可以返回主域名“example.com”所在的权威域名服务器地址。

权威域名服务器

英文全称:Authoritative Name Server,简称NS。在特定区域内具有唯一性,负责维护该区域内的域名与IP地址之间的对应关系。例如云解析DNS公网权威解析,您可在此添加解析记录,最终它会将配置的ip记录返回给用户。

本地域名服务器

英文全称:Local DNS Server,简称Local DNS。本地域名服务器是响应来自客户端的递归请求,并最终跟踪直到获取到解析结果的DNS服务器。例如用户本机自动分配的DNS、运营商ISP分配的DNS、谷歌/223.5.5.5公共DNS等。

说明

每个层级的域名都有其专属的域名服务器,最顶层是根域名服务器。每一层的域名服务器都存储着下级域名服务器的IP地址,从而能够逐级进行查询。

DNS解析过程

通过域名example.com访问网站的域名解析过程如下。

  1. 用户在Web浏览器中输入example.com, 向本地域名服务器发起查询请求。若本地域名服务器存在缓存的解析数据,则直接将域名example.com对应的IP地址返回给Web浏览器,跳至步骤9。若本地域名服务器没有查到缓存的解析数据,则继续步骤2。

  2. 本地域名服务器向根域名服务器进行查询。

  3. 根域名服务器将.com顶级域名服务器的地址,返回给本地域名服务器。

  4. 本地域名服务器向.com顶级域名服务器发起example.com的查询请求。

  5. .com顶级域名服务器将为example.com提供权威解析的权威域名服务器地址,返回给本地域名服务器。

  6. 本地域名服务器向权威域名服务器发起查询请求。

  7. 权威域名服务器将域名example.com对应的IP地址,返回给本地域名服务器。

  8. 本地域名服务器最后把查询的IP地址响应给Web浏览器。

  9. Web浏览器通过IP地址访问网站服务器。

  10. 网站服务器返回网页信息。

image

递归解析(Recursive Query)

DNS服务器帮你把整个查询流程走到底,中间任何一步都由这台服务器去处理,最后直接把最终结果返回给你。如:

  • 客户端将“请帮我查出www.example.comIP”递交给本地DNS(递归服务器)。

  • 递归服务器自己如果不知道答案,会去根DNS、TLD、权威DNS不断发问,并跟进每一步;直到获得最终答案。

  • 用户只需要等递归服务器给出最后的解析结果即可。

特点

  • 用户只需问一次、等一次。

  • 递归服务器压力较大,需要走完整查询流程。

  • 这是客户端和本地DNS之间最常见的方式。

常见应用

  • 普通用户/PC/浏览器 :只有递归查询,不处理迭代查询。

  • 本地DNS服务器(如你的宽带运营商、公网8.8.8.8、公司内网DNS):通常承担递归解析的角色,对外(向根、TLD、权威DNS)发起迭代查询。

  • 公共DNS服务器:对用户递归,对更上级DNS迭代。

迭代解析(Iterative Query)

DNS服务器只帮你查“它知道的下一步线索”,如果自己没有答案就告诉你下一步去哪问,用户必须自己去完成整个查询流程。如:

  • 客户端问本地DNS:“www.example.comIP是多少?”

  • 本地DNS不知道,查问根DNS。根DNS不直接回答IP,而是答:“你去问TLD服务器”,这里的根DNS则在进行迭代解析。

  • 本地DNSTLD服务器,TLD告诉你“去找这个权威DNS”,这里的TLD服务器则在做迭代解析。

  • 直到找到权威服务器,获取最终结果。

特点

  • 每一步都需要客户端自己去问。

  • 服务器压力较小,但客户端负担大(通常不这样用)。

常见应用

  • DNS服务器、TLD服务器、权威DNS服务器。

  • 企业、学校等自建的DNS服务器。

  • 公共DNS服务器:对用户递归,对更上级DNS迭代。

DNS缓存

DNS缓存是将解析数据存储在靠近发起请求的客户端的位置,也可以说DNS数据是可以缓存在任意位置,最终目的是以此减少递归查询过程,可以更快的让用户获得请求结果。

TTL

英文全称Time To Live ,这个值是告诉本地域名服务器,域名解析结果可缓存的最长时间,缓存时间到期后本地域名服务器则会删除该解析记录的数据,删除之后,如有用户请求域名,则会重新进行递归查询/迭代查询的过程。关于如何修改解析记录的 TTL 值,请参见如何修改 TTL 时间

解析记录

解析记录用于定义域名如何被解析。在云解析 DNS 中添加域名后,需要配置解析记录来指定该域名指向的目标地址,例如 IPv4 地址、IPv6 地址、另一个域名或邮件服务器地址等。访问域名时,DNS 系统根据对应的解析记录返回目标地址,完成域名到目标地址的映射。

每条解析记录由以下核心字段组成,共同决定域名的解析行为。

字段名称

说明

主机记录

域名前缀部分。例如,对于域名 www.example.com,主机记录为 www;若设置为 @,表示主域名本身;若设置为 *,表示泛解析,匹配所有未显式配置的子域名。

记录类型

定义解析记录的功能,决定记录值的格式和用途。常见类型包括 A、AAAA、CNAME、MX、TXT 等,不同类型的记录值格式各不相同。

解析请求来源(线路)

定义哪些访问来源使用本条解析记录。支持系统预设线路(如默认、联通、电信、移动等)和自定义线路。当记录类型为 URL 转发(显性 URL 或隐性 URL)时,线路锁定为「默认」,不可修改。

TTL

解析记录在本地 DNS 服务器中的缓存时间,单位为秒。TTL 值越小,记录修改后生效越快,但 DNS 查询频率也越高。权威版支持自定义输入 TTL 秒数,推荐值为 60 秒(企业高级版/旗舰版)或 600 秒(其他版本);内网版需从固定选项中选择。

记录值负载策略

当同一主机记录和记录类型配置了多条记录值时,决定如何分配访问流量。支持「轮询」和「权重」两种模式。权重模式仅在快速区且记录类型为 A、AAAA、CNAME 或 ALIAS 时可用。当记录类型为 CNAME 或 ALIAS 时,强制开启权重模式。

权重

权重模式下的流量分配比例,取值范围 0~100。数值越大,分得的访问流量越多。

优先级

MX 和 SRV 记录显示,取值范围 1~50。数值越小优先级越高。SRV 记录的优先级范围为 0~65535。

启用状态

控制该解析记录是否生效,支持「启用」和「暂停」两种状态。暂停后,该记录不再参与域名解析。

备注

用于标识和区分不同解析记录的备注信息,方便管理。

云解析 DNS 支持以下解析记录类型。

记录类型

用途说明

A

将域名指向一个 IPv4 地址。例如,将 www.example.com 指向 192.0.2.1

AAAA

将域名指向一个 IPv6 地址。

CNAME

将域名指向另外一个域名。当目标域名 IP 地址变化时,只需修改目标域名的解析记录,无需修改当前域名的配置。

ALIAS

将域名指向另外一个域名,是根域名 CNAME 的替代方案。与 CNAME 不同,ALIAS 记录可以与同域名的其他记录类型共存。该类型受版本控制,企业高级版和旗舰版可用。

NS

将子域名指定给其他 DNS 服务器解析,常用于域名托管或子域名委派。

MX

将域名指向邮件服务器地址,用于电子邮件系统的邮件交换。

TXT

文本记录,最大长度 512 字符。通常用于 SPF 记录(反垃圾邮件校验)、域名所有权验证等场景。

SRV

标识提供特定服务(如 VoIP、即时通讯)的服务器,包含优先级、权重、端口和目标地址四个子字段。

CAA

CA 证书颁发机构授权记录,用于指定允许为该域名颁发证书的证书颁发机构(CA),包含 flag、tag 和 value 三个子字段。

SVCB

服务绑定记录,用于声明访问服务时使用的端点和参数。支持别名模式和服务模式。

HTTPS

约定 HTTPS 服务的安全建连信息,与 SVCB 记录类似,专用于 HTTPS 服务。

显性 URL(REDIRECT_URL)

将域名重定向到另外一个地址,浏览器地址栏会显示重定向后的目标地址。记录值格式为 301|目标URL(永久重定向)或 302|目标URL(临时重定向)。该类型仅支持「默认」线路。

隐性 URL(FORWARD_URL)

与显性 URL 类似,但浏览器地址栏仍显示原域名,隐藏真实目标地址。

PTR

将 IP 地址指向一个域名,即反向解析。仅在反向解析区域(in-addr.arpa 结尾的域名)中可用。

说明

PTR 记录仅在反向解析区域(以 in-addr.arpa 结尾的域名)中显示。ALIAS 记录类型受版本控制,旗舰版和企业高级版可用,免费版中该选项被禁用。内网 DNS 解析(Private DNS)支持的记录类型包括:A、AAAA、CNAME、MX、TXT、SRV、PTR。

IPV4、IPV6双栈技术

双栈英文Dual IP Stack,就是在一个系统中可同时使用IPv6/ IPv4这两个可以并行工作的协议栈。

DNS Query Flood Attack

指域名查询攻击,攻击方法是通过操纵大量傀儡机器,发送海量的域名查询请求,当每秒域名查询请求次数超过DNS服务器可承载的能力时,则会造成解析域名超时从而直接影响业务的可用性。

URL转发

英文 Url Forwarding,也可称地址转向,它是通过服务器的特殊设置,将一个域名指向到另外一个已存在的站点。

edns-client-subnet

google提交了一份DNS扩展协议,允许DNS resolver传递用户的IP地址给authoritative DNS server。

DNSSEC

域名系统安全扩展(DNS Security Extensions),简称DNSSEC。它是通过数字签名来保证DNS应答报文的真实性和完整性,可有效防止DNS欺骗和缓存污染等攻击,能够保护用户不被重定向到非预期地址,从而提高用户对互联网的信任。

移动解析HTTPDNS相关概念

应用终端

指专门用于网络接入的终端设备和应用服务,包括并不限于移动终端、物联网终端、APP应用等。

DoH(DNS-over-Https)

用来加密的DNS请求流量,阿里云公共DNS通过RFC 8484指定的经过TLS加密的HTTP连接提供DNS解析。

DoT(DNS-over-TLS)

用来加密的DNS请求流量,阿里云公共DNS通过RFC 7858指定的经过TLS加密的TCP连接提供DNS解析。