二、域名解析过程
1、如果本地的dns解析器有缓存直接返回;
2、查找本地hosts文件,根据对应的映射返回IP;
3、指定DNS服务器,DNS服务器有缓存直接返回;
4、解析域名,将请求交给根域DNS(如果没开启转发,全球13个根域DNS);
5、根域告诉DNS服务器.com的DNS地址;
6、DNS服务器查找.com解析www.baidu.com;
7、.com域DNS告诉DNS服务器baidu.com的DNS;
8、DNS服务器查找baidu.com DNS;
9、baidu.com 返回www.baidu.com的IP地址给DNS服务器;
10、DNS服务器将DNS响应报文返回给用户。
三、DNS解析记录分类
1、SOA:描述域管理NS,主从DNS服务器同步参数。
2、NS:域DNS服务器FQDN
3、A:域名到IP的映射
4、MX:域邮件服务器
5、CNAME:域名别名
6、PTR:IP到域名的映射
DNS软件介绍
1、软件名称:BIND
2、监听端口:udp53(解析)、tcp53(区域传送)
3、相关文件:
                                            /etc/named.conf:配置文件
                                            /etc/named.rfc1912.zones:定义正解、反解区域
                                            /var/named:存放DNS数据的默认目录
                                            /var/named/data/named.run:DNS的日志文件
四、DNS解析的工具
1、nslookup
2、host
3、dig
五、DNS安装过程
[root@www ~]# yum insatll bind bind-chroot bind-utils -y  //centos
[root@www ~]# apt-get install bind9  //ubuntu
配置主配置文件:
[root@www ~]# vim /etc/named.conf
.........
listen-on port 53 { any; };
allow-query     { any; };
[root@www ~]# service named start  //启动named服务
验证服务是否正常启动
[root@www ~]# ps -aux| grep named
[root@www ~]# lsof -i:53
六、DNS的正向解析配置
假设要解析一个域test.com
[root@www ~]# vim /etc/named.rfc1912.zones
.......
zone "test.com" IN {
        type master;
        file "test.com.zone";
};
配置对应的A记录:
[root@www ~]# cp /var/named/named.localhost  /var/named/test.com.zone
[root@www ~]# chown root.named /var/named/test.com.zone
[root@www ~]# vim /var/named/test.com.zone
$TTL 1D
@         IN       SOA       test.com.     admin.test.com.  (200 1H 15M 1W 1D )
@         IN       NS         www.test.com.
www     IN       A           10.50.63.185
[root@www ~]# service named restart  //重启named服务
[root@www ~]# dig @localhost www.test.com   //dig测试DNS是否正常解析
七、DNS的反向解析配置
编辑/etc/named.rfc1912.zones
[root@www ~]# vim /etc/namd.rfc1912.zones
.........
zone "63.50.10.in-addr.arpa" IN {     //注意命名规则,IP:10.50.63.0/24--->60.50.10.in-addr.arpa
        type master;
        file "10.50.63.zone";
        allow-update { none };
};
编辑对应的PTR记录
$TTL 1D
@         IN       SOA        test.com.     admin.test.com.  (200 1H 15M 1W 1D )
@         IN       NS           www.test.com.
185       IN       PTR        www.test.com   //第一列的数字为IP的末位
[root@www ~]# service named restart   //重启named服务
[root@www ~]# dig @localhost -x 10.50.63.185  //验证DNS反解是否正常
八、配置DNS实现负载均衡
将DNS中配置的一个域名对应多个IP时,DNS将会返回客户端不同的IP,这样就会达到负载均衡的效果。
$TTL 1D
@         IN      SOA       test.com.     admin.test.com.  (200 1H 15M 1W 1D )
@         IN      NS         dns.test.com
www     IN     A            10.50.63.185
www     IN     A            10.50.63.186
www     IN     A            10.50.63.187
[root@www ~]# service named restart
[root@www ~]# dig @localhost www.test.com
九、配置纯缓存的DNS服务
纯缓存的DNS服务器就是本身并不维护zone文件,只是简单地把DNS请求转发给指定的DNS服务器,然后把结果返回给客户端同时把该结果记录在系统缓存中。等下次相同的请求,直接将该记录返回给客户端。
[root@www ~]# cat /etc/named.conf
options{
        ..........
        forward only;
        forwarders {
                223.5.5.5;
                223.6.6.6;
                8.8.8.8;
                8.8.4.4;
        };
        ...........
};
[root@www ~]# dig @localhost www.baidu.com   //dig测试
十、主从DNS搭建
优点:
提供冗余,避免单点故障;
均衡负载查询需求,提高系统可用性;
主服务器(10.50.63.183)配置:/etc/named.rfc1912.zones
zone "test.com" IN {
        type master;
        file "test.com.zone";
        allow-update { none; };
        allow-transfer { 10.50.82.44; };
};
zone "63.50.10.in-addr.arpa" IN {
        type master;
        file "10.50.63.zone";
        allow-update { none };
        allow-transfer { 10.50.82.44; };
};
从服务器(10.50.82.44)配置:
zone "test.com" IN {
        type slave;
        file "slaves/test.com.zone";
        masters { 10.50.63.185; };
};
zone "63.50.10.in-addr.arpa" IN {
        type slave;
        file "slaves/10.50.63.zone";
        masters { 10.50.63.185; };
};
主从DNS服务器重启DNS服务:service named restart
在从服务器上查看解析文件是否同步
[root@www ~]# ll /var/named/slaves/
[root@www ~]# dig @localhost -x 10.50.63.185原文:http://blog.51cto.com/gdutcxh/2109118