DNS(DomainNameSystem,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53
DNS的分布式数据库是以域名为索引的,每个域名实际上就是一颗很大的逆向树中的路径,这棵逆向树称为域名空间。这棵树的层次结构如下图,和Linux文件系统的结构非常相似。在顶端,树有唯一的一个根域。在根下又可以有多个任意的分支,这些分支点称为“顶级域”。而在每个顶级域下又可以有多个相同的“二级域”,而树的深度不得超过127层。
2、本地DNS服务器收到请求后直接查找本服务器是否有此记录,如果有就直接返回域名对应的地址给客户端,那么这个域名的解析就完成了,这个就称为一次“递归查询”;
3、如果本地DNS没有查找到对应的记录,那么此DNS服务器就会请求根域找服务器的地址(当然本地DNS服务器也可能不找根DNS而是直接转发到其他DNS服务器进行域名解析,但是如果被转发的那台DNS服务器不是的权威服务器还是需要进行找根服务器);
4、根服务器接收到请求后就会去找国际域名服务器列表,然后会返回服务器的地址给本地DNS服务器;
5、本地DNS服务器收到服务器地址后,就会找服务器进行顶级域服务器地址的解析,然后DOS服务器会返回服务器的地址给本地DNS服务器;
PS:在这个查询过程中,客户端发出的请求就是递归查询,而DNS服务器发出的请求就是迭代查询;另外,还有一个名词就是权威服务器(权威应答),意思就是真正负责你的域名记录解析的服务器称为权威服务器,其他解析都不能称为权威应答。
通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。DNS的主要作用是进行主机名的解析。
解析:根据用户提供一种名称,去查询解析库,以得到另一种名称。正向解析与反向解析使用不同的解析库。DNS采用两种查询机制:递归和迭代。
客户端向DNS服务器发起查询请求,DNS服务器搜索本地解析库没有结果,于是向根域发起查询请求,根域告诉DNS服务器服务器上有它需要的资源,DNS服务器又向服务器发起查询请求,结果被告知.服务器上有它想要的结果,最后终于在.服务器上找到了解析记录,并返回给了客户端。
1,自己注册的域名。设置域名解析,将自己域名指向自己公网IP主机上。如自己搭建云服务器,并使用自己域名时的使用场景。这是引导域名“导入”方向。
2,公共DNS解析服务。如将本地电脑网络连接属性里面的,将自动或默认的,改为设置为114电信或223阿里公共DNS地址使用。这是上网解析需要,这是引导域名访问上网“导出”方向的用途。