首页 > 代码库 > DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置

DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置

DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置

一、DNS简介

1、DNS

? ?DNS是域名系统(Domain Name System)的简称,它是一个将域名和IP相互映射的分布式数据库。有了DNS服务器,我们只需要记录一个网站的域名即可访问,而再也不需要记忆那一串长长的IP地址了。全球有386台根服务器,被编号为A到M共13个标号,编号相同的根服务器使用同一个IP,386台根服务器总共只使用13个IP,因此可以抵抗针对其所进行的分布式拒绝服务攻击(DDoS)。中国大陆在北京有两台编号为L的根服务器镜像,编号为F、I、J的各一,共5台镜像,所以刚才提到的那个故障应该就是国内的DNS根域镜像的故障。

2、分布式数据库

? ?早期的网络比较单一,域名也比较少,所以hosts文件可以说是比较简单的数据库了,但到了后来网络的爆炸式发展,一个hosts文件、一台服务器、一组DNS集群都不能扛得住越来越多的主机请求,所以到后来出现了分布式数据库,把一个数据库切成n片,放到不同的主机上来解析客户端的请求,当需要解析不同的主机时,就到不同的服务器上去实现,以到达缓解根服务器巨大的压力。

3、域名的划分

? ?根域:.

? ?一级域:.com,.org,.mil,.gov,.edu,.net

? ?国家域:.cn,.hk,.tw,.jp,.us,.uk,.ir,.iq

? ?二级域:www.ibm.com中的ibm就是二级域名

? ?主机名:上面的www是主机而不是域名

技术分享

FQDN(Full Qualified Domain Name):安全合格域名,按照中国人的习惯是从大到小写,但老外习惯从小往大了写,就像写信一样,自底向上,所以一个FQDN应该是"www.ibm.com."。

4、DNS查询方式

1)递归查询(recursion)

? ?客户端只发出一次请求,要求对方给出最终结果。如果客户端要查找的内容直接在服务器上得到结果,刚给出的答案是一个权威答案,否则就是一个参考答案。

2)迭代查询(iteration)

? ?客户端发出一次请求,服务器替代客户端一次次的去请求以获得最终答案,所以迭代查询是服务器代为其查询,因此,客户端指向的DNS服务器,一定是允许给本地主机做递归的。

技术分享

5、资源记录(Resource Record)

? ?DNS数据库文件中的每一个条目叫做资源记录,它是一个纯文本文件,只能包含资源记录或宏定义。

? ?资源记录的格式:

? ?Name ? ? [ttl] ? ?IN ? rr_type(资源记录类型)? ?Value

1)、SOA:

? ?Start of Authority,起始授权

? ?SOA必须是区域数据库文件的第一条记录

? ?name:只能是区域名称,通常可以简写为@,如google.com

? ?value:主DNS的FQDN

? ?例:@ ? ?600 ? ?IN ? ?SOA ? ? ns.google.com. ? ? dnsadmin.google.com.(

? ? ? ? ? ? ? ? ? ? ? ? ? ?serial number;序列号,不能超过10位,如:2014120901

??

??

??

? ? ? ? ? ? ? ? ? ? ? ? ? refresh time;刷新时间,第每隔多久到主服务器检查一次

? ? ? ? ? ? ? ? ? ? ? ? ? ?retry time;重试时间,如果刷新失败,多久重试

? ? ? ? ? ? ? ? ? ? ? ? ? ?expire time;过期时间

? ? ? ? ? ? ? ? ? ? ? ? ? ?negative answer ttl;否定答案的ttl )

? ?上面的那个dns.admin.google.com.是管理员邮箱,第一个点代表的是@,但这里@是一个宏,所以就用.代替了。

? ?注意:SOA后面ns.google.com.中最后面那个.一定不能省略,如果省略,系统会默认给补上你的区域名称。

2)、NS: 一个区域数据文件可以有多个NS记录;

? ?Name Server,域名服务器

? ?name:区域名称,通常可以简写为@

? ?value:DNS服务器的FQDN(可以使用相对名称)

????注意:

  1. 相邻的资源记录name相同时,后面的可省去。
  2. 任何一个value中指定的FQDN,在其域的正向解析文件中应该有A记录;

??

3)、A

? ?Address,IP地址,负责FQDN——>IP的解析

? ?name:FQDN(可以使用相对名称)

? ?value:IP

4)、AAAA

? ?IPv6地址

5)、MX:一个区域数据文件可以有多个MX记录;

? ?Mail eXchanger:邮件交换器,可以有多个,那就需要做优先级

? ?name:区域名称,用于标识smtp服务器

? ?value:包含优先级和FQDN,优先级的范围:0-99,数字越小,级别越高

6)、CNAME:定义别名的

? ?Canonical Name,别名记录

? ?name:FQDN

? ?value:FQDN

??

7)、PTR

? ?负责IP——>FQDN的解析,只能定义在反向区域数据文件中,反向区域名称为逆向网络地址加.in-addr.arpa.后缀组成

? ?name:IP,逆向的主机地址,如:93.251.16.172.in-addr.arpa.

? ?value:FQDN,这里的FQDN不需要有A记录,反向区域中不能出现A记录和MX

?注意:但凡value上是FQDN,那么这个FQDN都需要有一个A记录,否则不能解析,PTR除外

?

?

?

接下来是我自己完全实战出来的步骤:所以我来和大家一起分享下

?

?

DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置