1.在CentOS6.X上,使用BIND(Berkeley Internet Name Domain)来管理DNS。
2.FQDN: Fully Qualified Domain Name 完全限定域名。由主机名与域名组成。
3.在整个DNS系统的最上方是.(小数点)这个DNS服务器(成为root).最早在它下面的就只有.com,.edu,.gov,.mil,.org,.net这种特殊区域以及以国家为分类的第二层的主机名,这两者成为Top Level Domains(TLDs).
        -- 一般顶级域名(Genetic TLDs,gTLD):例如.com,.org等
        -- 地区顶级层域名(Country Code TLDs,ccTLD),例如.cn,.uk等 
4.每一个上一层的DNS服务器所记录的信息,其实只有其下一层的主机名而已。
5.通过DNS查询主机名IP的流程(以www.example.edu.com为例)
----客户端向DNS服务器发出查询请求,DNS服务器收到后,先查看本身有没有记录,若无则向.root查询 (无转发的情况)
----向最顶层.root查询,DNS服务器会向.root询问www.example.edu.com在哪里,但是.root只知道.com的信息
     此时.root会告知,不知道这部主机的IP,但是你可以向.com询问,.com的地址是这个。
----向第二层的.com服务器查询,与上面的流程相同。
----向第三层的.edu.com服务器查询,与上面的流程相同。
----向第四次的.example.edu.com查询,此时DNS服务器向其询问,.example.edu.com回答说:“没错,这台主机是我的,
     它的IP地址是********。
----DNS服务器记录缓存并回报给用户。缓存存活的时间一般为24小时,以服务器的设置有关。
6.通常DNS是以UDP这个较为快速的数据传输协议来查询的,但是万一没有办法查询到完整的信息是,就会再次以TCP这个协议来重新查询。所以在防火墙规则中要同时放行TCP和UDP的53端口(另外还有rdnc这个953端口)。
7.要让主机名对应IP能让其他计算机查询到,有以下两种方式:
----上层DNS授权区域查询权,让你自己设置DNS服务器。
----直接请上层DNS服务器来帮你设置主机名的对应。
8.拥有区域查询权后,所有的主机名信息都已自己为准,与上层无关。即使上层ISP的主机名能够查询到IP或者IP与自己设置的不相同。
9.DNS数据库的记录:
----正解:从主机名查询到IP的流程。
----反解:从IP查询到主机名的流程。
----区域(zone):不管是正解还是反解,每个域的记录就是一个区域(zone)。
10.正解的主要标志:
正解文件资源记录格式:
[domain]  [ttl]         IN [[RR type] [RR data]]
[待查数据][暂存时间(秒)]   [资源类型] [资源内容]
主机名.    IN    A/AAAA     IPv4/IPv6的IP地址
域名.    IN  NS/SOA/MX 名称服务器名字/管理域名的七个重要参数/接收邮件的服务器名字
主机别名.  IN    CNAME  实际代表这个主机别名的主机名字
RR type主要有:
----SOA:就是开始验证的缩写(Start of Authority).主要是管理这个域的七个重要参数:
MasterDNS主机名,管理员E-mail,序号Serial,更新频率Refresh,失败重新尝试时间Retry,失效时间Expire,缓存时间TTL
----NS:名称服务器的缩写(Name Server).管理域的主机。
----A,AAAA:就是地址(Address)的缩写.A为IPv4的IP地址,AAAA为IPv6的IP地址。
----MX:在MX前会有顺序数字,越小表示优先级越高。接受邮件的服务器主机名字。
----CNAME:格式为  主机别名.  IN  CNAME  实际代表这个主机别名的主机名字。  
11.反解的主要标志:
----除了服务器必备的NS和SOA之外,最重要的就是PTR,就是指向(PoinToR)的缩写,后面记录的数据就是反解的主机名。
反解的zone就是将IP反过来写,并在结尾加上.in-addr.arpa.的结尾字样。eg:
dig -x 120.114.100.101
;;ANSWER SECTION:
101.100.114.120.in-addr.arpa. 3600 IN PTR www.ksu.edu.tw.
反解最重要的是:后面的主机名尽量使用完整的FQDN,即加上小数点(.)。
12.若有反解的需求,就需要向你的直属上层ISP申请才行,除非你取得的是整个Class C以上等级的IP网段,ISP才有可能给你IP反解析权。
13.自行架设DNS服务器时,最好采用Master/Slave架构,客户端查询的时候是随机的,先进先出,所以要保证数据的一致性。
不论是Master还是Slave的数据库,都会有一个代表该数据库新旧的”序号“,这个序号越大表示越新。其同步过程主要有2种:
----Master主动告知:Master在修改了数据库内容并加大数据库的序号后,重启DNS,那Master会主动告知Slave来更新数据库。
----Slave主动提出要求:Slave会定时向Master查看数据库的序号,当发现Master序号>Slave序号时,则开始更新。
14.DNS在Client中的配置文件主要有:
----/etc/hosts
----/etc/resolv.conf:ISP的DNS服务器IP记录处
----/etc/nsswitch.conf:这个文件决定先使用/etc/hosts,还是先使用/etc/resolv.conf的设置
其格式为: hosts: files dns   //files在前,表示hosts先。dns在前,表示resolv.conf先
15.DNS正反解查询命令:
----host:
host [-a] FQDN [server]:若有添加[server]参数,则是指定用server这台来查询
host -l 域名:主要用于系统管理员查询整个区域的相关设置。
----nslookup:
nslookup [FQDN] [server]:在不加任何参数的情况下可进入nslookup这个软件的操作界面
----dig:
dig [options] FQDN [@server]:
options的主要参数说明:
+trace:就是从.开始追踪,并将每一个阶段的DNS服务器查询出来。
-t type:查询的主要数据soa,mx,sname,a,aaaa,ns等。
-x:查询反解信息。
16.查询域管理者的相关信息:whois
17.DNS所需要的软件:bind-libs/bind-utils/bind/bind-chroot
其中bind-chroot是用于将某个目录制定为bind的根目录,这样bind便不能离开根目录,加强了系统安全。
CentOS6.x默认是将BIND锁定在/var/named/chroot目录下。CentOS6.x已经通过在启动脚本中将相关目录进行的连接:
mount --bind /var/named /var/named/chroot/var/named 数据库文件默认放置的目录
mount --bind /var/run/named /var/named/chroot/var/run/named 程序执行时某人放置pid-file的目录
mount --bind /etc/named.conf /var/named/chroot/etc/named.conf 程序的主配置文件
mount --bind /etc/sysconfig/named /var/named/chroot/etc/sysconfig/named chroot的配置参数文档

 

整理自:鸟哥的linux私房菜服务器篇