理论课40分钟

27课:DNS域名系统

从域名到IP地址

教学目标

1理解DNS的层次结构
2掌握域名解析过程
3了解DNS记录类型

📖 课前导入

你在浏览器中输入 www.baidu.com,几毫秒后网页就加载出来了。但网络通信用的是IP地址,浏览器怎么知道百度的IP是什么?

答案就是DNS(域名系统)——互联网的"电话簿",它把人类友好的域名翻译成计算机使用的IP地址。

📚 一、DNS域名系统概述

什么是DNS?

DNS(Domain Name System,域名系统)是一个分布式数据库系统,提供域名与IP地址之间的映射服务。它使用UDP端口53(大量数据传输时用TCP端口53)。

www.baidu.com

人类友好的域名

→ DNS解析 →

110.242.68.66

计算机使用的IP地址

📚 二、域名的层次结构

域名是倒过来的"树"

根域(.)

.com

.cn

.org

.edu

↑ 顶级域(TLD)

baidu.com

tsinghua.edu.cn

↑ 二级域

www.baidu.com

mail.baidu.com

↑ 主机名(三级域)

常见顶级域名

.com — 商业机构
.org — 非营利组织
.edu — 教育机构
.gov — 政府
.cn — 中国
.net — 网络服务
.io — 技术类
.jp — 日本

📚 三、DNS解析过程 ⭐核心

完整的DNS解析流程

1. 浏览器缓存:先查浏览器自己的DNS缓存。有则直接使用。

2. 操作系统缓存:查本机hosts文件和系统DNS缓存。

3. 本地DNS服务器(递归查询):向配置的DNS服务器(如运营商DNS 114.114.114.114)发送查询请求。如果它有缓存就直接返回。

4. 根DNS服务器(迭代查询):本地DNS没有缓存,向根服务器查询。根服务器返回".com顶级域服务器的地址"。

5. 顶级域DNS服务器:本地DNS再向.com服务器查询。它返回"baidu.com权威DNS服务器的地址"。

6. 权威DNS服务器:本地DNS向baidu.com的权威DNS查询www.baidu.com,得到最终的IP地址。

7. 返回结果:本地DNS将结果缓存并返回给客户端。浏览器和操作系统也会缓存。

知识点

递归查询 vs 迭代查询

递归查询

客户端→本地DNS:"你帮我查到底,直到给我最终答案"

客户端只发一次请求,本地DNS负责全部后续查询。

迭代查询

本地DNS→根/顶级域/权威DNS:"我不知道,但你可以去问xxx"

每次只返回下一步应该问谁,本地DNS自己逐步追查。

📚 四、常见DNS记录类型

记录类型名称说明示例
A地址记录域名 → IPv4地址www.baidu.com → 110.242.68.66
AAAAIPv6地址记录域名 → IPv6地址google.com → 2404:6800::200e
CNAME别名记录域名 → 另一个域名www.baidu.com → www.a.shifen.com
MX邮件交换记录指定邮件服务器baidu.com → mx.maillb.baidu.com
NS名称服务器记录指定权威DNS服务器baidu.com → ns1.baidu.com
PTR反向解析记录IP地址 → 域名110.242.68.66 → www.baidu.com
TXT文本记录存储任意文本(如SPF)域名所有权验证等

📚 五、DNS诊断命令

nslookup命令
// 模拟终端 - 点击"执行下一条"或按回车运行命令
// 共 2 条命令,已执行 0
C:\>
ipconfig /displaydns 查看DNS缓存
// 模拟终端 - 点击"执行下一条"或按回车运行命令
// 共 2 条命令,已执行 0
C:\>

ipconfig /flushdns 清空本机DNS缓存,常用于DNS修改后的刷新。

DNS域名解析全过程

通过动画和Wireshark抓包演示DNS的完整解析过程,包括递归查询和迭代查询

10:00
DNS域名解析全过程推荐视频10:00

通过动画和Wireshark抓包演示DNS的完整解析过程,包括递归查询和迭代查询

✅ 课堂小测

随堂测验

1/5

DNS默认使用哪个传输层协议和端口号?

📋 本课小结

1

DNS:域名→IP的分布式映射系统,使用UDP端口53。

2

域名层次:根域 → 顶级域(.com) → 二级域(baidu.com) → 主机名(www)。

3

解析流程:缓存→本地DNS(递归)→根→顶级域→权威DNS(迭代)。

4

常用记录:A(IPv4)、AAAA(IPv6)、CNAME(别名)、MX(邮件)、NS(名称服务器)。