DNS原理介绍DNS是域名系统(DomainNameSystem)的缩写,该系统用于命名组织到域层次结构中的计算机和网络服务。在Internet上域名与IP地址之间是一一对应的,域名虽然便于人们记忆,但机器之间只能互相认识IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器。DNS命名用于Internet等TCP/IP网络中,通过用户友好的名称查找计算机和服务。当用户在应用程序中输入DNS名称时,DNS服务可以将此名称解析为与之相关的其他信息,如IP地址。因为,你在上网时输入的网址,是通过域名解析系解析找到相对应的IP地址,这样才能上网。其实,域名的最终指向是IP。TLD:Top-LevelDomain顶级域名gTLD:GenericTop-LevelDomain通用顶级域名ccTLD:Countrycodetop-leveldomain国家及地区顶级域名通用顶级域名(gTLD,二级域名).com,用于商业公司.net,用于网络服务.org,用于组织协会等.gov,用于政府部门.edu,用于教育机构.mil,用于军事领域.int,用于国际组织根域名服务器目前互联网全球共有13台域名根服务器,编号为从A-M.这13个根服务器中,1个为主根服务器,其余12个为辅根服务器。有9个放置在美国(含主根服务器),2个放在欧洲,分别位于英国和瑞典,亚洲有1个位于日本。我国早在2003年就拥有了第一个根服务器的镜像——F根镜像,这是由国际互联网协会和中国电信共同建立的。在2005年9月,I根的管理机构“瑞典国家互联网交换中心”在CNNIC设立了中国第二个根镜像。网通在国内开通的是第三个镜像服务器DNS的体系结构DNS的分布式数据库是一个倒树状的层次化结构,这个数据库是以域名为索引的。每个域名实际上就是这棵逆向树的路径。树的最上层是根,延伸下去可以有很多分支,这些分支的交叉点被成为节点,每个节点仍然可以继续向下分。整个树的最大深度不得超过127层,每个节点都有一个可以长达63byte的文本标号。DOMAINSANDZONES“”comeduorgasunmicrosoftcomdomaina.comdomaintech.a.comzone区和域(ZONE和DOMAIN)在BIND的配置过程中,有一个非常重要的概念就是区(zone),区和域的关系密切但不一样。区域(zone):区域是一个用于存储单个DNS域名的数据库,它是域名称空间树状结构的一部分,DNS服务器是以区域为单位来管理域名空间的,区域中的数据保存在管理它的DNS服务器中。当在现有的域中添加子域时,该子域既可以包含在现有的区域中,也可以为它创建一个新区域或包含在其他的区域中。一个DNS服务器可以管理一个或多个区域,同时一个区域可以由多个DNS服务器来管理。用户可以将一个域划分成多个区域,分别进行管理以减轻网络管理的负荷。从管理目的来看,域名空间被分割成的多个范围称作区,每个区从一个节点开始并向下扩展到末节点或其他区开始的节点。每个区的数据被存储在一个域名服务器中,由它来通过DNS协议回答关于区的质讯授权和非授权DNS设计成树状结构,是为通过授权实现分散管理。每个域都有一个域服务器包含了这个域的所有信息。还可以分成若干个子域,域服务器只保留指向子域服务器的指针我们称从根开始逐级向下可以被找到的服务器为授权服务器。如果一台服务器不被任何一台授权服务器所承认,或者说任何授权服务器都不包含到它的指针,它可能维护也能不维护任何域的信息。这就是一台非授权服务器。DNS的分类针对zone有哪些类型来分:1、主域名服务器(master)2、辅域名服务器(slave)3、辅域名服务器(stub)4、转发服务器(forward)5、线索服务器(hint)针对配置文件的内容1、授权域名服务器(注册)2、高速缓存域名服务器(衡水只有两台2级的缓存服务器)3、混合服务器(注册和缓存服务并存)主域名服务器(MASTER)英文叫做masterserver(bind8以后),或primaryserver(bind4以后),包括了一个区的主拷贝,这份拷贝来自于一些文本文件,叫做zone或hosts文件,文本的内容就是该区的所有域名信息。主域名服务器特点:1、该区内只有一个2、对整个区的数据具有权威性,可以对数据进行维护。3、直接从本地读取hosts文件而获得本域信息。备注:主域名服务器是针对一个区来讲,如果该服务器负责多个区的数据,那么它在不同的区角色是不同的。辅域名服务器(SLAVE)英文叫做slaveserver(bind9以后)或secondaryserver(bind4)辅助域名服务器使用一个叫域传输的复制过程,调入其他域名服务器的内容。但通常情况下,数据是直接从主服务器上传输过来。使用辅助域名服务器的主要目的是实现容错和工作负载的分担。特点:1、一个域内可以由多个辅助域名服务器。2、配置辅助域名服务器不需要编写hosts文件,它从主域名服务器上得到。转发域名服务器(FORWARD)一个域名服务器在提供某个区的数据查询请求的时候,可能会向其他的域名服务器转发一部分或是所有不能满足的查询请求,被称作转发服务器.备注1:转发服务器一般用于用户不希望站点内的服务器直接和外部服务器通讯的情况下。备注2:stub、hint服务器很少用到。DNS的工作原理DNS分为Client和Server,Client扮演发问的角色,也就是问Server一个DomainName,而Server必须要回答此DomainName的真正IP地址。而当地的DNS先会查自己的资料库。如果自己的资料库没有,则会往该DNS上所设的的DNS询问,依此得到答案之后,将收到的答案存起来,并回答客户。在每一个缓存服务器中都有一个快取缓存区(Cache),这个快取缓存区的主要目的是将该名称服务器所查询出来的名称及相对的IP地址记录在快取缓存区中,这样当下一次还有另外一个客户端到次服务器上去查询相同的名称时,服务器就不用在到别台主机上去寻找,而直接可以从缓存区中找到该笔名称记录资料,传回给客户端,加速客户端对名称查询的速度域名解析过程ClientLocalDNS“”164293510“”12910“”1Cname:(domaininformationGroper)域信息搜索器(dig)是一种用于从域名服务器那里收集信息的命令行工具。搜索有两种模式:针对一条请求的简单模式和执行多查询的批模式。dig的命令格式dig[@服务器]域dig可以清晰而完整的显示DNS的响应信息例:#dig@a.root-servers.net.ns还可以利用dig进行区传送例:#dig@dnsl.runstone.comrunstone.comaxfr/ixfrNSLOOKUP用法介绍nslookups是一个向因特网域名服务器发送请求的程序,它可以模拟解析器或域名服务器的行为,以致于成为一个较好的故障诊断和排除的工具。命令格式:交互式和非交互式交互式允许向名服务器查询多个主机和域或者打印出在一个域中的主机列表。非交互式模式用来显示一个主机或域的名字或被请求的信息A(Address)记录是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的webserver上。同时也可以设置您域名的二级域名。MX(MailExchanger)记录是邮件交换记录,它指向一个邮件服务器,用于电子邮件系统发邮件时根据收信人的地址后缀来定位邮件服务器。例如,当Internet上的某用户要发一封信给user@mydomain.com时,该用户的邮件系统通过DNS查找mydomain.com这个域名的MX记录,如果MX记录存在,用户计算机就将邮件发送到MX记录所指定的邮件服务器上。NS(NameServer)记录是域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。