1、区域解析库
每个域都要维护一个区域解析库,而区域解析库都是由一条条的记录组成的,而每一条记录就被称为资源记录(resource record RR).
我们知道大多数域名下面都不仅仅有www服务器,可能还会有mail、oa、CRM等服务,用来标识不同服务的资源记录类型是不一样的,也就是说资源记录有多种类型,常见的资源记录类型有7种:A/AAAA/PRT/SOA/NS/CNAME/MX
l SOA记录:任何解析库的第一条都必须是SOA记录,start of authority 起始授权记录,一个区域解析库有且仅能有一个SOA记录,且必须在第一条。说明当前这个区域解析库为哪一个区域所用,由谁负责。
l A记录:作用是把FQDN解析成为IPV4的IP地址
l AAAA记录:使用是把FQDN解析成为IPV6的IP地址
l PTR:pointer 指针记录,作用是把IP解析成为FQDN,反向解析。
l NS:name server 专用于标识当前区域的DNS服务器
l CNAME:canonical name 别名记录
l MX:mail exchanger邮件交换器,当我们写邮件的时候收件人通常会这样写746620446@qq.com,其实我们想把邮件发送给746620446这个用户,但是首先肯定会是先找到QQ.COM然后通过QQ.COM再找到746620446这个用户,那么QQ.COM其实是一台服务器主机,这个记录就是用来标识QQ.COM对应的那台服务器主机的Ip地址,总结就是一名话,当有人给QQ.COM这个区域发送邮件时由谁来中转此邮件,毕竟不能一下直接发给746620446 这个用户,必须要有一个中转服务器,然后通过中转服务器再转发给746620446这个用户。
2、资源记录的通用格式
name [TTL] IN rr-type value
name:当前的区域的名字,例如magedu.com. 注意最后的点一定不能省略。
TTL可以省略,可以从全局继承,也可以自行定义,单位是秒,所谓的TTL就是DNS记录在客户端的缓存时长,默认单位是秒。
@可以用于引用当前区域的名字
IN代表internet,没有实际意义,可以当做固定格式。
rr-type当前资源记录的类型,rr是资源记录的缩写。
value由多个字段组成,其中以SOA的格式最为奇特。
3、SOA记录
SOA记录与其它记录不同的是就是value部分,SOA的value部分由很多的字段组成。
value:有以下三部分组成:
- 负责当前区域的主DNS服务器FQDN,也可以使用当前区域的名字,用@可表示当前区域的名字
- 当前区域管理员的邮箱地址,但是地址不能有@符号,一般用.来代替,例如15069028007.163.com
- (主从服务器协调属性的定义以及否定的答案的统一的TTL)
例如:
baidu.com. 86400 IN SOA www.baidu.com. zhanghe.163.com. ( 2017102501 序列号 2H 刷新时间 10M 重试时间 1W 过期时间,一星期 1D 否定答案的TTL,一天 )
NOTE:如果后面不加单位,默认是秒
4、A记录
name某主机的FQDN,例如www.magedu.com.
value:主机名对应主机的IP地址
例如:
www.magedu.com. IN A 1.1.1.1 www.magedu.com. IN A 1.1.1.2 #多条会出现轮询
同一个名字可以通过多条记录定义多个不同的值,此时DNS服务器会以轮询的方式响应。
同一个值也可能有多个不同的定义名字,通过多个不同的名字指向向一个值,,这种效果也可以通过CNAME实现
mx1.magedu.com. IN A 1.1.1.3 mx2.magedu.com. IN A 1.1.1.3
注意:
*.magedu.com. IN A 1.1.1.4 magedu.com. IN A 1.1.1.4
避免用户写错名称给错误答案,可通过泛域名解析进行解析到某个特定地址。
5、AAAA记录
与A记录的作用是一样,用于IPV6而已,此处略过。
6、PTR记录
name vlue
name是IP地址有特定的格式,把IP地址反过来写,比如1.2.3.4要写成4.3.2.1而且有特定后缀:in-addr.arpa.所以完成的写法为:
4.3.2.1.in-addr-arpa.
value:FQDN
例如:
4.3.2.1.in-addr.arpa. IN PTR www.magedu.com.
注意:网络地址及后缀可以省略,主机地址依然需要反着写。
7、NS记录
name:当前区域的名字
value:当前区域某DNS服务器的主机名,例如ns.magedeu.com.
注意,一个区域可以有多个NS记录
例如:
magedu.com. IN NS ns1.magedu.com. magedu.com. IN NS ns2.magedu.com.
注意:
相邻的两个资源记录的name相同时,后续的可以省略
对NS记录而言,任何一个ns记录后面的服务器名字,都应该在后续有一个A记录。
8、MX记录
name 当前区域的名字
value:当前区域的某邮件服务器(smtp服务器)主机名
一个区域内,MX记录可以有多个,但每个记录的value之意应该有一个数字(0-99),表示此服务器的优先级,数据越小优先级越高。
例如:
magedu.com. IN MX 10 mx1.magedu.com. IN MX 20 mx2.magedu.com.
注意:对mx记录而言,任何一个MX记录后面的服务器名字,都应该在后续有一个A记录
9、CNAME记录
name:别名的FQDN
value:真正名字的FQDN
例如:
web.magedu.com. IN CNAME www.magedu.com.