首先了解一下DNS解析中的几个概念
一、A记录
A (Address) 记录是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的web server上。同时也可以设置您域名的子域名。通俗来说A记录就是服务器的IP,域名绑定A记录就是告诉DNS,当你输入域名的时候给你引导向设置在 DNS的A记录所对应的服务器。
二、子域名
子域名道理等同二级域名,不过比二级域名更加延伸,比如我们继续扩展该域名的主机名,设置主机名为bbs.at,那么就可以建立一个三级域 名:bbs.at.abc.com,当然也可以建立四级域名bbs.at.go.abc.com,五级域名 bbs.at.go.home.abc.com……,依次类推,可以建立无限级别的域名,我们统称这些域名为顶级域名abc.com的子域名。
三、CNAME别名指向记录
CNAME (Canonical Name)记录,通常称别名指向。在这里,您可以定义一个主机别名,比如设置ftp.google.com,用来指向一个主机www.google.com,那么以后就可以用ftp.google.com来代替访问www.google.com了。
四、MX记录
MX记录也叫做邮件路由记录,用户可以将该域名下的邮件服务器指向到自己的mail server上,然后即可自行操控所有的邮箱设置。您只需在线填写您服务器的IP地址,即可将您域名下的邮件全部转到您自己设定相应的邮件服务器上。简单的说,通过操作MX记录,您才可以得到以您域名结尾的邮局。
五、TXT 记录
TXT 记录,一般指为某个主机名或域名设置的说明,如: admin IN TXT “管理员, 电话:13901234569″ mail IN TXT “邮件主机, 存放在xxx , 管理人:AAA” Jim IN TXT “contact: abc@mailserver.com” 也就是您可以设置 TXT ,以便使别人联系到您。
六、SRV 记录
SRV 记录:一般是为Microsoft的活动目录设置时的应用。DNS可以独立于活动目录,但是活动目录必须有DNS的帮助才能工作。为了活动目录能够正常的 工作,DNS服务器必须支持服务定位(SRV)资源记录,资源记录把服务名字映射为提供服务的服务器名字。活动目录客户和域控制器使用SRV资源记录决定 域控制器的IP地址。 此技术细节请参考相应网站。
七、TTL值
TTL值全称是“生存时间(Time To Live)”,简单的说它表示DNS记录在DNS服务器上缓存时间。要理解TTL值,请先看下面的一个例子: 假设,有这样一个域名myhost.abc.com(其实,这就是一条DNS记录,通常表示在abc.com域中有一台名为myhost的主机)对应IP 地址为1.1.1.1,它的TTL为10分钟。这个域名或称这条记录存储在一台名为dns.abc.com的DNS服务器上。现在有一个用户在浏览器中键入一下地址(又称URL):http://myhost.abc.com 这时会发生什么呢?该访问者指定的DNS服务器(或是他的ISP,互联网服务商, 动态分配给他的)8.8.8.8就会试图为他解释myhost.abc.com,当然8.8.8.8这台DNS服务器由于没有包含 myhost.abc.com这条信息,因此无法立即解析,但是通过全球DNS的递归查询后,最终定位到dns.abc.com这台DNS服务器,dns.abc.com这台DNS服务器将myhost.abc.com对应的IP地址1.1.1.1告诉8.8.8.8这台DNS服务器,然有再由 8.8.8.8告诉用户结果。8.8.8.8为了以后加快对myhost.abc.com这条记录的解析,就将刚才的1.1.1.1结果保留一段时间,这就是TTL时间,在这段时间内如果用户又有对myhost.abc.com这条记录的解析请求,它就直接告诉用户1.1.1.1,当TTL到期则又会重复上面的过程。
八、泛域名与泛解析
泛域名是指在一个域名根下,以 *.Domain.com 的形式表示这个域名根所有未建立的子域名。 泛解析是把*.Domain.com 的A 记录解析到某个IP 地址上,然后别人通过任意的前缀.domain.com访问都能访问到你解析的站点上。
例如:域名根 name.com 只建立了 www.name.com 和 name.com 这两个域名记录,那么 ftp.name.com mail.name.com bbs.name.com 等域名记录是不存在的,但为域名根 name.com 建立泛域名记录 *.name.com 后,*.name.com 就涵盖了 ftp.name.com mail.name.com bbs.name.com 等所有不存在的子域名记录。您可以定义 *.name.com 指向一个 IP ,那么当访问者无论是输入 ftp.name.com mail.name.com 或 bbs.name.com 的时候,访问者都将直接访问您定义 *.name.com 的那个 IP 。
九、域名绑定
什么是域名绑定域名绑定是指,域名绑定是指域名和主机(即某个服务器)的空间绑定,其实就是在虚拟服务器上设置或者WEB服务器上设置,使一个域名被指导向一特定空间, 访问者访问你的域名的时候就会打开你存放在该空间上的网页,简单来说其实就是把域名解析到服务器IP,然后在服务器上设置该域名有权限访问的过程。
十、域名转向
域名转向我们又称为域名(URL)指向或域名转发,当用户地址栏中输入您的域名时,将会自动跳转到您所指定的另一个网络地址(URL)。 假设abc.com是您注册的域名,则通过URL转发服务可以实现当用户访问http://www.abc.com时,自动转向访问另外一个URL,如:我的空间不支持绑定到目录功能,所以为了方便访问者,我就设置:http://bbs.bnnb.net来访问,这个是设置了通过URL转发服务转发到http: //www.bnnb.net/bbs上面来实现的,这样您就可以轻松实现多个域名指向一个网站或网站子目录;另外,通过URL转发服务,可以方便的实现 将您的中文域名,设置自动转发到您的英文域名主站点。域名转发的另外一个好处就是可以把长域名压缩,用短域名的转向代替,让你的访客不需输入那么长的域名。
现在来了解DNS解析的大致过程
1、在浏览器中输入www.baidu.com域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析。
2、如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析。
3、如果hosts与本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/ip参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。
4、如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析,此解析不具有权威性。
5、如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。这台负责.com域的服务器收到请求后,如果自己无法解析,它就会找一个管理.com域的下一级DNS服务器地址(baidu.com)给本地DNS服务器。当本地DNS服务器收到这个地址后,就会找baidu.com域服务器,重复上面的动作,进行查询,直至找到www.baidu.com主机。
6、如果用的是转发模式,此DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析,上一级服务器如果不能解析,或找根DNS或把转请求转至上上级,以此循环。不管是本地DNS服务器用是是转发,还是根提示,最后都是把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。