DNS是个什么东东

工做中常常用到或者听到DNS,什么内网服务器,DNS服务器,啥也别想,你问下本身,你知道什么是DNS吗?数据库

若是你很是清楚,OK,那你确定是鼠标点错了,赶忙关了这个页面吧,若是你不是很清楚,知道一点,那太好了,你来对了,咱们今天一块儿来看看DNS究竟是个什么东东。后端

DNS服务器:

Domain Name Server,域名服务器数组

背景:


系统 (Domain Name System 或Domain Name Service) 的缩写,它是由解析器和域名服务器组成的。浏览器

域名服务器是指保存有该网络中全部主机的域名和对应IP地址,并具备将域名转换为IP地址功能的服务器。其中域名必须对应一个IP地址,而IP地址不必定有域名。域名系统采用相似目录树的等级结构。缓存

域名服务器为客户机/服务器模式中的服务器方,它主要有两种形式:安全

一、主服务器和转发服务器。将域名映射为IP地址的过程就称为“域名解析”。在Internet上域名与IP地址之间是一对一(或者多对一)的,也可采用DNS轮循实现一对多,域名虽然便于人们记忆,但机器之间只认IP地址,它们之间的转换工做称为域名解析,域名解析须要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器。服务器

二、DNS 命名用于 Internet等 TCP/IP网络中,经过用户友好的名称查找计算机和服务。当用户在应用程序中输入 DNS 名称时,DNS 服务能够将此名称解析为与之相关的,是经过域名解析系统解析找到了相对应的IP地址,这样才能上网。其实,域名的最终指向是IP。   网络

在IPV4中IP是由32位二进制数组成的,将这32位二进制数分红4组每组8个二进制数,将这8个二进制数转化成十进制数,就是咱们看到的IP地址,其范围是在0~255之间。架构

由于,8个二进制数转化为十进制数的最大范围就是0~255。如今已开始试运行、未来必将代替IPv4的IPV6中,将以128位二进制数表示一个IP地址。性能

你们都知道,当咱们在上网的时候,一般输入的是网址,其实这就是一个域名,而咱们计算机网络上的计算机彼此之间只能用IP地址才能相互识别。再如,咱们去一WEB服务器中请求一WEB页面,咱们能够在浏览器中输入网址或者是相应的IP地址,例如咱们要上新浪网,咱们能够在IE的地址栏中输入网址,也可输入IP地址,可是这样子的IP地址咱们记不住或说是很难记住,因此有了域名的说法,这样的域名会让咱们容易的记住。   

DNS:Domain Name System 域名管理系统域名是由圆点分开一串单词或缩写组成的,每个域名都对应一个唯一的IP地址,这一命名的方法或这样管理域名的系统叫作域名管理系统。   

申请了DNS后,客户能够本身为域名做解析,或增设子域名。客户申请DNS时,建议客户一次性申请两个。   

DNS服务器在域名解析过程当中的查询顺序为:本地缓存记录、区域记录、转发域名服务器、根域名服务器。

 原理:

DNS分为 ClientServer,Client扮演发问的角色,也就是问Server一个 Domain Name,而Server必需要回答此Domain Name的真正 IP地址。而当地的DNS先会查本身的资料库。若是本身的资料库没有,则会往该DNS上所设的DNS服务器询问,依此获得答案以后,将收到的答案存起来,并回答客户。DNS服务器会根据不一样的受权区(Zone),记录所属该网域下的各名称资料,这个资料包括网域下的次网域名称及主机名称。在每个名称服务器中都有一个快取缓存区(Cache),这个快取缓存区的主要目的是将该名称服务器所查询出来的名称及相对的IP地址记录快取缓存区中,这样当下一次还有另一个客户端到此服务器上去查询相同的名称 时,服务器就不用在到别台 主机上去寻找,而直接能够从缓存区中找到该笔名称记录资料,传回给客户端,加速客户端对名称查询的速度。例如:
DNS服务器
当DNS客户端向指定的DNS服务器查询网际网路上的某一台主机名称 DNS服务器会在该资料库中找寻用户所指定的名称 若是没有,该服务器会先在本身的快取缓存区中查询有无该笔纪录,若是找到该笔名称记录后,会从DNS服务器直接将所对应到的IP地址传回给客户端 ,若是名称服务器在资料记录查不到且快取缓存区中也没有时,会向最接近的名称服务器去要求帮忙找寻该名称的IP地址 ,在另外一台服务器上也有相同的动做的查询,当查询到后会回复本来要求查询的服务器,该DNS服务器在接收到另外一台DNS服务器查询的结果后,先将所查询到的主机名称及对应IP地址记录到快取缓存区中 ,最后在将所查询到的结果回复给客户端。
 

 

保护技巧

编辑
DNS解析是Internet绝大多数应用的实际定址方式;它的出现完美的解决了企业服务与企业形象结合的问题,企业的DNS名称是Internet上的身份标识,是不可重覆的惟一标识资源,Internet的全球化使得DNS名称成为标识企业的最重要资源。
1.使用DNS转发器
DNS转发器是为其余DNS服务器完成DNS查询的DNS服务器。使用DNS转发器的主要目的是减轻DNS处理的压力,把查询请求从DNS服务器转给转发器, 从DNS转发器潜在地更大DNS高速缓存中受益。  [3] 
使用DNS转发器的另外一个好处是它阻止了DNS服务器转发来自互联网DNS服务器的查询请求。若是你的DNS服务器保存了你内部的域DNS资源记录的话, 这一点就很是重要。不让内部DNS服务器进行递归查询并直接联系DNS服务器,而是让它使用转发器来处理未受权的请求。
2.使用只缓冲DNS服务器
只缓冲DNS服务器是针对为受权域名的。它被用作递归查询或者使用转发器。当只缓冲DNS服务器收到一个反馈,它把结果保存在高速缓存中,而后把 结果发送给向它提出DNS查询请求的系统。随着时间推移,只缓冲DNS服务器能够收集大量的DNS反馈,这能极大地缩短它提供DNS响应的时间。
把只缓冲DNS服务器做为转发器使用,在你的管理控制下,能够提升组织安全性。内部DNS服务器能够把只缓冲DNS服务器看成本身的转发器,只缓冲 DNS服务器代替你的内部DNS服务器完成递归查询。使用你本身的只缓冲DNS服务器做为转发器可以提升安全性,由于你不须要依赖你的ISP的DNS服务 器做为转发器,在你不能确认ISP的DNS服务器安全性的状况下,更是如此。
3.使用DNS广告者(DNS advertisers)
DNS广告者是一台负责解析域中查询的DNS服务器。
除DNS区文件宿主的其余DNS服务器以外的DNS广告者设置,是DNS广告者只回答其受权的域名的查询。这种DNS服务器不会对其余DNS服务器进行递归 查询。这让用户不能使用你的公共DNS服务器来解析其余域名。经过减小与运行一个公开DNS解析者相关的风险,包括缓存中毒,增长了安全。  [3] 
4.使用DNS解析者
DNS解析者是一台能够完成递归查询的DNS服务器,它可以解析为受权的域名。例如,你可能在内部网络上有一台DNS服务器,受权内部网络域名服务器。当网络中的客户机使用这台DNS服务器去解析时,这台DNS服务器经过向其余DNS服务器查询来执行递归 以得到答案。
DNS服务器和DNS解析者之间的区别是DNS解析者是仅仅针对解析互联网主机名。DNS解析者能够是未受权DNS域名的只缓存DNS服务器。你可让DNS 解析者仅对内部用户使用,你也可让它仅为外部用户服务,这样你就不用在没有办法控制的外部设立DNS服务器了,从而提升了安全性。固然,你也 可让DNS解析者同时被内、外部用户使用。
5.保护DNS不受缓存污染
DNS缓存污染已经成了日益广泛的问题。绝大部分DNS服务器都可以将DNS查询结果在答复给发出请求的主机以前,就保存在高速缓存中。DNS高速缓存 可以极大地提升你组织内部的DNS查询性能。问题是若是你的DNS服务器的高速缓存中被大量假的DNS信息“污染”了的话,用户就有可能被送到恶意站点 而不是他们原先想要访问的网站。
绝大部分DNS服务器都可以经过配置阻止缓存污染。WindowsServer 2003 DNS服务器默认的配置状态就可以防止缓存污染。若是你使用的是Windows 2000 DNS服务器,你能够配置它,打开DNS服务器的Properties对话框,而后点击“高级”表。选择“防止缓存污染”选项,而后从新启动DNS服务器。  [3] 
6.使DDNS只用安全链接
不少DNS服务器接受动态更新。动态更新特性使这些DNS服务器能记录使用DHCP的主机的主机名和IP地址。DDNS可以极大地减
轻DNS管理员的管理费用 ,不然管理员必须手工配置这些主机的DNS资源记录。
然而,若是未检测的DDNS更新,可能会带来很严重的安全问题。一个恶意用户能够配置主机成为台文件服务器、Web服务器或者数据库服务器动态更新 的DNS主机记录,若是有人想链接到这些服务器就必定会被转移到其余的机器上。  [3] 
你能够减小恶意DNS升级的风险,经过要求安全链接到DNS服务器执行动态升级。这很容易作到,你只要配置你的DNS服务器使用活动目录综合区 (Active Directory Integrated Zones)并要求安全动态升级就能够实现。这样一来,全部的域成员都可以安全地、动态更新他们的DNS信息。
7.禁用区域传输  [3] 
区域传输发生在主DNS服务器和从DNS服务器之间。主DNS服务器受权特定域名,而且带有可改写的DNS区域文件,在须要的时候能够对该文件进行更新 。从DNS服务器从主力DNS服务器接收这些区域文件的只读拷贝。从DNS服务器被用于提升来自内部或者互联网DNS查询响应性能。
然而,区域传输并不只仅针对从DNS服务器。任何一个可以发出DNS查询请求的人均可能引发DNS服务器配置改变,容许区域传输倾倒本身的区域数据 库文件。恶意用户可使用这些信息来侦察你组织内部的命名计划,并攻击关键服务架构。你能够配置你的DNS服务器,禁止区域传输请求,或者仅允 许针对组织内特定服务器进行区域传输,以此来进行安全防范。
8.使用防火墙来控制DNS访问  [3] 
防火墙能够用来控制谁能够链接到你的DNS服务器上。对于那些仅仅响应内部用户查询请求的DNS服务器,应该设置防火墙的配置,阻止外部主机链接 这些DNS服务器。对于用作只缓存转发器的DNS服务器,应该设置防火墙的配置,仅仅容许那些使用只缓存转发器的DNS服务器发来的查询请求。防火墙策略设置的重要一点是阻止内部用户使用DNS协议链接外部DNS服务器。
9.在DNS注册表中创建访问控制
在基于Windows的DNS服务器中,你应该在DNS服务器相关的注册表中设置访问控制,这样只有那些须要访问的账户才可以阅读或修改这些注册表设置。  [3] 
HKLM\CurrentControlSet\Services\DNS键应该仅仅容许管理员和系统账户访问,这些账户应该拥有彻底控制权限。
10.在DNS文件系统入口设置访问控制
在基于Windows的DNS服务器中,你应该在DNS服务器相关的文件系统入口设置访问控制,这样只有须要访问的账户才可以阅读或修改这些文件。  [3] 
应用服务防火墙
针对以上的问题AX有一个解决方式,就是DNS应用服务 防火墙,AX在这问题有三个有力的方法,能够有效的缓解这些攻击所形成的影响:
一、首先将非DNS协定的封包过滤(Malformed Query Filter)
二、再来将经由DNS服务器查询到的讯息作缓存(DNS Cache)
三、若是真的遇到大量的正常查询、AX能够启动每秒的连线控制(Connection Rate Limit)
Malformed Query Filter:
这种非正常的 封包一般都是用来将对外网络的频宽给撑爆,固然也会形成DNS服务器的忙碌,因此AX在第一线就将这类的封包过滤,正确的封包传递到后方的服务器,不正常的封包自动过滤掉避免服务器的负担。
DNS Cache:
当DNS查询的回应回到AX时,AX能够预先设定好哪些Domain要Cache哪些不须要Cache,若是有Cache,当下一个一样的查询来到AX时,AX就能从Cache中直接回应,不须要再去DNS服务器查询,一方面减轻了DNS服务器的负担,另外一方面也加快了回应的速度。
再者,当企业选用此功能时更能仅设定公司的Domain作Cache,而非关此Domain的查询一概不Cache或者拒绝回应,这样更能有效的保护企业的DNS服务器。
而ISP之类需提供大量查询的服务,更适合使用此功能,为DNS服务提供更好更快的回应。
Connection RateLimit:
当查询的流量大到必定的程度时,例如同一个Domain每秒超过1000个请求,此时在AX上能够启动每秒的连线控制,控制进入到后端DNS服务器的查询量,超过的部分直接丢弃,更严格的保护DSN服务器的资源。
相信许多人期待在突飞猛进的网际网络中看到创新的网络技术,并能提供更好的网络应用服务。而确保DNS服务的不间断持续运做并让DNS服务所提供的资讯是正确的,这也是一切网络应用服务的基础
相关文章
相关标签/搜索