域名服务器分为四种 有哪几种常用的域名服务器

服务器和域名之间有什么联系呢?域名是网络主机的别称或者叫代号 。服务器的理解有两种 。1.一台硬件服务器 。例如:imb的刀片机 。2.部署在硬件服务器上的软件应用服务器 。例如:apache、nginx、ftp等 。从你问的问题来看,你应该指的是软件服务器 。每台网络主机或者硬件服务器必须有一个ip地址才能被网络上的其它主机访问 。网络主机间是靠ip地址通讯的 。
域名就是这个ip的代号 。
为什么需要域名呢?就是便于人去识记,方便人去访问网络主机提供的服务 。
一个域名可以对应多个应用服务器,一个硬件服务器也可以有多个域名指向 。这个根据你的实际需要可以配置 。
域名和ip地址之间的转化,需要域名服务器去转化 。所以,我们去域名服务商购买域名的时候,其实就确定了由哪台域名服务器去解析 。
一个顶级域名下,我们又可以建立二级域名 。每个二级域名可以对应一台网络主机 。总之,域名与服务器之间,是多对多的关系 。希对你有帮助 。
域名、主机服务器、ip、网卡与网站之间的关系是什么?首先,你需要了解三个基础网络知识 。
1 DNS
1.1 DNS简单说就是你给它一个域名,它解析一个IP给你 。但是实际上情况不是这么简单的 。
【域名服务器分为四种 有哪几种常用的域名服务器】客户端发起一个DNS查询请求,提交一个完整主机名(例如www.abc.com)到设置的DNS服务器上,DNS服务器如果查询到相关记录,则返回这个记录 。对于IPv4,记录分为A记录或者CNAME 。A记录表示是一个IPv4的地址,CNAME表示为另外一个主机名(例如server1.realserver.com) 。A记录允许同名存在,多个不同的IP被对应到同一个主机名上,也允许使用根记录,本例中即为abc.com,不带任何前缀;CNAME不允许同名存在,不允许根记录,也不允许与A记录同名 。如果客户端得到的返回是一个CNAME,则会重新再来一次DNS查询去解析这个CNAME的IP 。对于这个CNAME的查询,可能返回另外的CNAME,则这个过程会很长,直至解析出A记录 。
1.2如果DNS服务器上没有查询到相关记录,则会询问上一层的DNS服务器 。如果上一层服务器解析出结果,则它在返回给用户结果时,顺便自己缓存一份 。缓存的时间由域名的TTL决定 。
1.3每个域名首先要注册在跟DNS上NS服务器名称 。当一个区域中最顶层的DNS也没有用户查询的主机名记录时,则会首先向INTERNET跟DNS获取这个NS服务器名称,并尝试向这个NS服务器发起查询请求 。NS服务器必须响应并响应这个查询 。如果DNS跟服务器无法被连接到、NS无法被找到、无法被连接到或者NS服务器无法解析,则本主机名最终解析失败 。
1.4 DNS如果返回多条A记录时,会生成一个有序集合 。这个排序根据历史查询散列,并根据访问者的IP所在区域优化 。客户端拿到的集合中的第一条IP通常为一个优化后的地址,但其他地址依旧可作为备选使用 。
1.5 DNS服务器通常不归主机管理商所有,并且由于需要快速响应,在查询的时候是无法判断主机状态和负载的 。但一些较大的机构,会自己拥有一个重新设计的DNS服务器,考虑到这些信息 。而对于这种情况,外部公网的DNS只能解析出一个CNAME,并交由这个DNS来进行后续解析(这个DNS被注册为这个CNAME对应的NS) 。这种设计下的DNS通常被认为是NLB(网络负载均衡)设计的一部份 。
1.6由于1.2提及的代理查询以及TTL的机制,DNS其实并不能良好的实现服务器的轮询负载均衡,但是可以实现区域优化查询,即对某个特定区域尽量返回其区域内的IP结果 。
2 HTTP头
在发起HTTP请求时,客户端会同时提交要访问的文件(一般在GET命令后)以及主机名(HOST字段),对方服务器会根据这个HOST来确定它要访问的域名 。所以一个主机在一个IP上并行存在多个不同的主机地址 。
3 NLB
通常的NLB有三种解决办法 。
3.1本地DNS加速,如1.5所述的方法 。
3.2 CDN(内容分发网络) 。CDN可以被看做是一个独立的HTTP代理网络 。使用CDN的时候,DNS应把域名解析到某个CDN的全球IP群上 。CDN服务器得到HTTP请求后,会在转发原真实服务器的数据时,本地缓存一份 。甚至可以实现数据的预推送 。因此CDN非常适合于静态数据的全球化缓存 。例如微软发布补丁、苹果发布新产品、Wordpress、Amazon网站的图片缓存都是使用了CDN技术 。
3.3虚拟IP地址 。通常情况下,一个IP不应该被设置到超过一个设备上,因为超过这个设置后,上层的路由器就不知道如何转发这个包了 。但是,如果路由器经过了设置(例如BGP协议或者专门设计的路由软件等),是可以在多个设备下共享同一个IP的 。这种共享既可以是物理的(多个设备同时使用一个IP,由上层路由进行分支选择或者广播、组播数据包),或者是轮询的(多个设备轮流使用一个IP,同时只有一个设备使用这个IP,而这个IP可以在多个设备间高速切换) 。如果某个应用必须基于IP地址(例如DNS服务本身),只能使用这种方式来处理 。
那么回头看你三个问题 。
Q1返回多个A纪录后,客户端会按照集合的顺序依次尝试访问 。这些数据在NS服务器上是单一存在的,但是会被多层DNS缓存 。
Q2 HTTP头段已经讲述 。
Q3希望你看过NLB段后能理解 。

    推荐阅读