源本科技 | 码上会

DNS 域名解析系统

2025/12/29
28
0

学习目标

  • 理解 DNS 的基本概念和工作原理

  • 掌握 DNS 查询过程中的各个步骤及其作用

  • 能够区分不同类型 DNS 记录的功能与应用场景

  • 了解 DNS 安全性问题及 DNSSEC 如何保障安全


什么是 DNS

DNS(Domain Name System,域名系统)是一种用于将 域名 转换为 IP 地址 的分层、分布式命名系统。当你在浏览器中输入一个网址(如 www.example.com),DNS 会解析该域名并将其转换为对应的 IP 地址,以便浏览器能够访问正确的服务器。

没有 DNS,我们每次访问网站都需要记住其具体的 IP 地址,这显然是不现实的。

DNS 工作流程

DNS 解析过程可以分为几个步骤,确保用户只需输入域名即可快速访问网站:

  1. 用户输入:你在浏览器中输入一个网址(例如 www.example.com)。

  2. 本地缓存检查:浏览器首先检查其本地缓存,看是否最近查询过该域名。如果找到对应的 IP 地址,则直接使用,无需向外部服务器查询。

  3. DNS 解析器查询:如果没有找到缓存记录,计算机会向 DNS 解析器 发送请求。通常由你的互联网服务提供商(ISP)提供解析器。

  4. 根 DNS 服务器:解析器将请求发送到根 DNS 服务器。根服务器并不知道具体的 IP 地址,但知道应该查询哪个顶级域(TLD)服务器(如 .com.org 等)。

  5. TLD 服务器:TLD 服务器根据域名后缀(如 .com)指引解析器去查询负责该域名的权威 DNS 服务器。

  6. 权威 DNS 服务器:权威 DNS 服务器存储了实际的 DNS 记录,包括该网站服务器的 IP 地址,并将此 IP 地址返回给解析器。

  7. 最终响应:DNS 解析器将 IP 地址返回给计算机,使浏览器能够连接到网站服务器并加载页面。


DNS 结构

DNS 通过层次化的结构运作,确保在全球范围内高效、可靠地处理海量查询请求。

主要组成部分

  • 根 DNS 服务器:最高级别的 DNS 服务器,知道哪些 TLD 服务器可以查询特定域名。

  • TLD 服务器:管理顶级域(如 .com.org.net 等),并将查询转发至权威 DNS 服务器。

  • 权威 DNS 服务器:存储具体域名的实际 DNS 记录,包括 IP 地址等信息。


域名类型

DNS 支持多种类型的域名,以组织和分类全球范围内的网站:

  • 通用顶级域(gTLDs):如 .com.org.net.edu 等,广泛使用且易于识别。

  • 国家代码顶级域(ccTLDs):代表特定国家或地区,如 .cn(中国)、.jp(日本)、.in(印度)等。

  • 反向域名:用于反向 DNS 查找,帮助将 IP 地址映射回域名,常用于诊断和安全目的。

反向 DNS 查找有助于验证网络流量来源的合法性。


DNS 查询类型

DNS 查询主要有三种类型:

  • 递归查询:解析器会不断查询多个服务器,直到找到所需的 IP 地址或返回错误消息。

  • 迭代查询:解析器询问每个服务器当前的最佳答案,逐步缩小查找范围。

  • 非递归查询:解析器查询已经缓存了所需记录的服务器,无需进一步查找。

示例:nslookup 命令

如果你想知道 www.example.com 对应的 IP 地址,可以使用命令行工具 nslookup

nslookup www.example.com

DNS 缓存与 TTL

DNS 缓存 是一种机制,用于存储 DNS 记录以避免重复查询相同的 DNS 服务器,从而加快浏览速度并减少网络流量。

  • TTL(Time-to-Live,生存时间):定义了 DNS 记录在缓存中保留的时间。一旦 TTL 到期,缓存会被清除,需要重新进行 DNS 查询。

如果 www.example.com 的 TTL 设置为 3600 秒(即 1 小时),则该记录会在缓存中保存 1 小时后才需要重新查询。


DNS 安全性与 DNSSEC

尽管 DNS 是互联网导航的基础,但它也容易受到安全威胁,如 DNS 缓存投毒(恶意注入虚假 DNS 记录)。

DNSSEC(DNS 安全扩展)

DNSSEC 是一种协议,旨在解决这些安全问题:

  • 加密签名:为 DNS 记录添加数字签名,允许解析器验证 DNS 响应的真实性和完整性。

  • 防止篡改:确保用户从 DNS 查询中获得的信息未被篡改。


反向 DNS 查找

反向 DNS 查找 是将 IP 地址映射回对应域名的过程,主要用于以下场景:

  • 网络诊断:管理员使用反向 DNS 查找来确定某个 IP 地址对应的域名,帮助识别网络流量来源。

  • 电子邮件安全:许多邮件服务器通过反向 DNS 查找验证发件人的合法性,防止垃圾邮件和欺诈行为。


常见 DNS 记录类型

DNS 记录用于定义如何使用域名以及配置相关服务。以下是几种常见的 DNS 记录类型:

  • A 记录:将域名映射到 IPv4 地址(如 example.com -> 192.0.2.1)。

  • CNAME 记录:设置别名,将一个域名指向另一个域名(如 www.example.com -> example.com)。

  • MX 记录:指定接收邮件的邮件服务器(对于设置电子邮件服务至关重要)。

  • TXT 记录:存储文本信息,常用于验证域名所有权和实施 SPF、DKIM 等电子邮件安全协议。


重点总结

  • DNS 是互联网的核心基础设施之一,负责将人类可读的域名转换为机器可识别的 IP 地址。

  • DNS 查询过程 包括本地缓存检查、递归查询、迭代查询等多个步骤。

  • DNSSEC 提供了额外的安全层,防止 DNS 记录被篡改。

  • 反向 DNS 查找 有助于网络诊断和提高电子邮件安全性。

  • 理解不同类型的 DNS 记录 对于配置和维护网站、邮件服务至关重要。


思考题

  1. 在 DNS 查询过程中,如果本地缓存没有找到所需记录,接下来会发生什么?

  2. DNSSEC 是如何防止 DNS 缓存投毒攻击的?

  3. 为什么企业需要设置 MX 记录?如果不正确配置 MX 记录,可能会导致什么后果?