基本概念
网络通信本质上依靠的是 IP 地址。但是人直接记 IP 地址不方便,所以实际访问网站时,通常使用域名,如`www.baidu.com`,DNS 的作用就是将难以记忆的域名转换成计算机通信需要的 IP 地址。
域名系统
域名:主机字符标识的方式。域名又分为顶级域名、次级域名、主机名等,一个URL结构大致是:主机名.次级域名.顶级域名. 最后的 `.` 标识根域,通常可以忽略不写
DNS server(域名解析服务器):负责将域名解析成ip地址,维护域名与ip地址映射数据的数据库。常见公用DNS服务器:8.8.8.8(谷歌)、114.114.114.114(电信)、223.5.5.5(阿里云)
DNS服务器根据管理区域可以划分成三类服务器:
- 主服务器:一个区域内的官方权威服务器
- 从服务器:内容与主服务器一致,可视为主服务器的备份
- 缓存服务器:缓存常用dns解析记录
DNS 查询
DNS属于分布式系统,没有一个DNS服务器能保存所有映射数据。因此DNS查询一般无法一次获取结果,需要多次查询,而DNS查询方式有两种:
- 迭代查询
每一级 DNS 服务器返回下一步该询问的DNS服务器,客户端需要逐级继续查询,最终找到权威 DNS 后得到结果。 - 递归查询
客户端把查询请求交给 DNS 服务器后只需等待,如果这个 DNS 服务器没有查到,它会继续帮客户端去问其他 DNS 服务器,无需客户端再参与,直到查询成功返回数据给客户端
客户端向本地DNS服务器查询一般采用递归查询方式,DNS服务器向其他DNS服务器查询采用迭代查询
DNS记录类型
- A 解析成ipv4地址
- AAAA 解析成ipv6地址
- NS 提供权威服务器列表
- MX 邮件服务器记录
- PTR 反向查询,根据ip查询域名
- CNAME 别名记录
DNS协议
DNS属于应用层协议,使用传输层的UDP协议和53端口
Comments NOTHING