DNS系统:层次域名空间、域名服务器、解析过程。

6.2 DNS系统

DNS(Domain Name System)是互联网使用的命名系统,用于将便于人们使用的机器名字转换为IP地址。

核心特点

  • 联机分布式数据库系统,采用客户/服务器方式
  • 大多数名字在本地解析,仅少量解析需在互联网上通信
  • 分布式架构,单个计算机故障不影响整体运行
  • 传输层协议:UDP,端口号53

三大组成部分:层次域名空间、域名服务器、解析器。


6.2.1 层次域名空间

命名规则

  • 采用层次树状结构,每个域名由标号序列组成,标号之间用点(.)隔开
  • 标号由英文字母和数字组成,不区分大小写,除连字符(-)外不使用其他标点符号
  • 每个标号不超过63个字符,完整域名不超过255个字符
  • 级别最低的域名在最左边,级别最高的顶级域名在最右边

顶级域名分类

类型 说明 示例
国家顶级域名(nTLD) 国家和某些地区的域名 cn(中国), us(美国), uk(英国)
通用顶级域名(gTLD) 最早7个:com, net, org, int, edu, gov, mil
后续增加:aero, biz, info, name, pro, museum等
com(公司企业), edu(美国教育机构)
基础结构域名 只有一个:arpa 用于反向域名解析

6.2.2 域名服务器

域名服务器按层次安排,分为四种类型:

类型 作用
根域名服务器 最高层次,知道所有顶级域名服务器的IP地址。全球13个逻辑根(a.rootservers.net ~ m.rootservers.net),采用任播技术,返回顶级域名服务器IP
顶级域名服务器 管理该顶级域名下注册的所有二级域名,返回查询结果或授权域名服务器IP
授权域名服务器 总能将管辖的主机名转换为IP地址,每台主机至少有两个
本地域名服务器 不属于层次结构,是主机发出DNS查询请求的第一站(如ISP、学校、系级服务器)

6.2.3 域名解析过程

查询方式

  • 递归查询:主机向本地域名服务器查询时使用。本地域名服务器全权负责处理,将最终结果返回主机。
  • 迭代查询:本地域名服务器向根域名服务器查询时使用。根域名服务器返回下一级域名服务器地址,由本地域名服务器继续查询。

解析过程示例(查询y.abc.com)

  1. 主机m.xyz.com向本地域名服务器dns.xyz.com发起递归查询
  2. 本地域名服务器向根域名服务器发起迭代查询
  3. 根域名服务器返回顶级域名服务器dns.com的IP。
  4. 本地域名服务器向顶级域名服务器dns.com查询。
  5. 顶级域名服务器返回权限域名服务器dns.abc.com的IP。
  6. 本地域名服务器向权限域名服务器dns.abc.com查询。
  7. 权限域名服务器返回y.abc.com的IP。
  8. 本地域名服务器将结果返回给主机m.xyz.com。

缓存机制:为提高效率,域名服务器和主机都使用高速缓存,映射关系会在一段时间后丢弃。

例题

  • 2010年40题:递归解析时,用户主机发送1条请求,本地域名服务器发送多条请求(向根、顶级、授权等)。选B。
  • 2016年40题:迭代查询下,若本地域名服务器有缓存,最少0次;最多需查询根、顶级、授权共3次。选C。

习题

  1. DNS的主要功能是(B. 将域名解析为IP地址)

  2. DNS系统使用的传输层协议是(C. 两者都有可能)
    (DNS主要用UDP,但区域传输等场景可能用TCP)

  3. 关于DNS缓存的说法,正确的是(B. 缓存可以提高DNS查询的效率)

  4. 主机查询域名对应的IP地址时,首先向(D. 本地域名服务器)发送查询请求

  5. 根域名服务器的全球数量是(C. 13个集群,分布全球)

  6. 在DNS解析过程中,如果客户端配置使用递归查询,查询过程的步骤通常包括(B. 客户端只与本地DNS服务器交互,本地DNS服务器代表客户端完成查询)


笔记结束