DNS,NS,TTL相互关系

DNS,NS,TTL

DNS

  • DNS Domain Name Server 域名服务器 域名虽然便于人们记忆 但网络中的计算机之间只能互相认识IP地址 它们之间的转换工作称为域名解析 域名解析需要由专门的域名解析服务器来完成 DNS 就是进行域名解析的服务器

NS

  • NS Name Server 即DNS的NS记录 是用来做授权的 向下授权 用来指定该域名由哪个DNS服务器来进行解析

  • 问题:dns和ns的关系?
    -该访问者指定的DNS服务器(或是他的ISP,互联网服务商,动态分配给他的)8.8.8.8就会试图为他解析myhost.abc.com,当然8.8.8.8这台DNS服务器由于没有包含myhost.abc.com这条信息,因此无法立即解析,这个时候会请求NS服务器,最终定位到dns.abc.com这台DNS服务器,dns.abc.com这台DNS服务器将myhost.abc.com对应的IP地址告诉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到期则又会重复上面的过程。

每一个DNS服务器包含了它所管理的DNS命名空间的所有资源记录。资源记录包含和特定主机有关的信息,如IP地址、提供服务的类型等等。
DNS,NS,TTL相互关系

  • 请求dns会请求哪一个,这个由什么控制?
    该访问者通过NS指定的DNS服务器或者他的ISP,互联网服务商,动态分配给他。

DNS负载均衡

  • DNS域名解析负载均衡有如下优点:
  1. 将负载均衡的工作交给DNS,省去了网站管理维护负载均衡服务器的麻烦。
  2. 技术实现比较灵活、方便,简单易行,成本低,使用于大多数TCP/IP应用。
  3. 对于部署在服务器上的应用来说不需要进行任何的代码修改即可实现不同机器上的应用访问。
  4. 服务器可以位于互联网的任意位置。
  5. 同时许多DNS还支持基于地理位置的域名解析,即会将域名解析成距离用户地理最近的一个服务器地址,这样就可以加速用户访问,改善性能。
  • DNS域名解析也存在如下缺点:
  1. 目前的DNS是多级解析的,每一级DNS都可能缓存A记录,当某台服务器下线之后,即使修改了A记录,要使其生效也需要较长的时间,这段时间,DNS任然会将域名解析到已下线的服务器上,最终导致用户访问失败。
    每一个DNS服务器包含了它所管理的DNS命名空间的所有资源记录。资源记录包含和特定主机有关的信息,如IP地址、提供服务的类型等等

  2. 不能够按服务器的处理能力来分配负载。DNS负载均衡采用的是简单的轮询算法,不能区分服务器之间的差异,不能反映服务器当前运行状态,所以其的负载均衡效果并不是太好。

  3. 可能会造成额外的网络问题。为了使本DNS服务器和其他DNS服务器及时交互,保证DNS数据及时更新,使地址能随机分配,一般都要将DNS的刷新时间设置的较小,但太小将会使DNS流量大增造成额外的网络问题。

    事实上,大型网站总是部分使用DNS域名解析,利用域名解析作为第一级负载均衡手段,即域名解析得到的一组服务器并不是实际提供服务的物理服务器,而是同样提供负载均衡服务器的内部服务器,这组内部负载均衡服务器再进行负载均衡,请请求发到真实的服务器上,最终完成请求。