在早期的网络世界中,网络主机将主机名映射到ip保存在一个共享静态的文件hosts中。由hosts文件实现网络中域名的管理。但internet的计算机迅速增加时,通过一个中心授权机为所有Internet主机管理一个主机文件的工作将无法进行。文件会随着时间的推移而增大,这样按当前和更新的形式维持文件以及将文件分配至所有站点将变得非常困难,甚至无法完成,于是便产生了DNS服务器。
DNS:Domian Name System ,c/s架构,udp/tcp,端口53,应用层协议。
基本概念:
FQDN:Full Qualified Domain Name,完整主机名 www.baidu.com.
. 根
.com 顶级域
.baidu.com 二级域
www 主机名
域:
TLD:Top Level Domain 顶级域(组织域.com .net .edu和国家域.cn .hk .tw)
SLD:Second-level-Domain 二级域,如下
baidu.com域,以下是二级域中的完整主机名
www.baidu.com
mail.baidu.com
DNS解析方式(每个域都有两个区域):
正向解析:FQDN-->IP
反向解析:IP-->FQDN
区域:baidu.com域有
FQDN-->IP正向解析库,称一个区域
IP-->FQDN反向解析库,称一个区域
DNS查询类型:
递归查询:
由客户端发出解析主机名的请求后,由Local DNS负责完成解析任务(客户端不负责),若Local DNS缓存无结果则会请求根服务器,根服务器返回顶级域服务器的ip后,Local DNS会继续向.com请求解析,.com会返回baidu.com二级域的ip,Local DNS继续请求二级域的ip,得到www.baidu.com对应的ip地址,缓存在本地后返回给客户端。
迭代查询:客户端发出解析主机名的请求,Local DNS返回无缓存和根服务器ip地址后就不负责了,由客户端发送解析请求到根服务器……如下图:
DNS服务器类型:
负责解析至少一个域(权威答案):
主名称服务器:维护所负责解析的域数据库的服务器,读写均可;
从名称服务器:从主DNS服务器复制一份解析库,只能读操作;
复制操作实施方式:
序列号:即数据库的版本号,主服务器数据库内容发生变化,版本号递增;
刷新时间间隔:从服务器多久到主服务器检查序列号更新状况;
重试时间间隔:从服务器从主服务器请求同步解析失败时,再次发起尝试请求的时间间隔;
过期时长:从服务器始终联系不到主服务器时,多久之后放弃从主服务器同步数据;若真联系不上时,停止提供服务;
否定答案的缓存时长:否定答案缓存多久
不负责域解析(非权威答案):
缓存名称服务器(Local DNS)
常见域名解析方式:
A记录:域名对应的ip,多个域名可以指向同一个ip,多个ip不可以指向多个域名;
CNAME记录:canonical name别名解析,为一个域名设置一个或多个别名,如baidu.com是a.shifen.com的别名;
NS记录:又称名称服务器,这个区域由哪些DNS服务器负责解析;
SOA记录:在众多NS记录中指定主服务器负责解析;
MX记录:邮件交换记录