DNS解析及轮询

DNS

DNS的解析过程   全球13个根服务器
第一步:客户机提出域名解析请求,并将该请求发送给本地的域名服务器.
第二步:当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回.
第三步:如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址.
第四步:本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址.
第五步:重复第四步,直到找到正确的纪录.

一   DNS排错

NOERROR                             ##查询成功
NXDOMAIN                            ##DNS服务器提示不存在这样的名称
SERVFAIL                            ##DNS服务器停机或DNSSEC响应验证失败
REFUSED                             ##DNS服务器拒绝回答

二  高速缓存DNS
虚拟机IP:172.25.8.11 (server 服务器)
 

selinux  和 iptables  都关闭
1.安装DNS
yum install bind.x86_64 -y 
systemctl start named                   ###启动服务
cat /etc/rndc.key                       ###开始不存在,服务启动建立
cat /etc/services |grep domain          ###查看DNS的端口
2.配置named.conf
 vim /etc/named.conf
 10 options {
 11         listen-on port 53 { any; };                  ###开启53端口访问
 12         listen-on-v6 port 53 { ::1; };
 13         directory       "/var/named";
 14         dump-file       "/var/named/data/cache_dump.db";
 15         statistics-file "/var/named/data/named_stats.txt";
 16         memstatistics-file "/var/named/data/named_mem_stats.txt";
 17         allow-query     { any; };                    ###允许所有人访问
 18         forwarders { 172.25.254.250; };              ###如果没有就访问172.25.254.250
 19         /* 

 systemctl restart named


##测试

 虚拟机IP:172.25.8.10
 vim /etc/resolv.conf
 nameserver 172.25.8.11

 虚拟机IP:172.25.8.250
 vim /etc/resolv.conf
 nameserver 172.25.8.11
测试:
分别dig www.baidu.com  可以发现第一次慢 第二次快




DNS正向解析
配置named.conf文件 虚拟机IP:172.25.8.11 (服务器)

 注意:关掉防火墙 selinux
 vim /etc/named.conf
 10 options {
 11         listen-on port 53 { any; };                            ###开启53端口访问
 12         listen-on-v6 port 53 { ::1; };
 13         directory       "/var/named";
 14         dump-file       "/var/named/data/cache_dump.db";
 15         statistics-file "/var/named/data/named_stats.txt";
 16         memstatistics-file "/var/named/data/named_mem_stats.txt";
 17         allow-query     { any; };                              ###允许所有人访问
 18         /* 

配置named.rfc1912.zones
 vim /etc/named.rfc1912.zones
 19 zone "localhost" IN {                                           ###y6y复制,p粘贴
 20         type master;
 21         file "named.localhost";
 22         allow-update { none; };
 23 };
 24 
 25 zone "westos.com" IN {    ##要解析的域名
 26           type master;
 27           file "westos.com.zone";                      ###记录域名解析的文件
 28           allow-update { none; };
 29 };

 cp -p /var/named/named.localhost /var/named/westos.com.zone

配置westos.com.zone
 vim /var/named/dream.com.zone           ###结尾加点表示结束,如果没有会补(.dream.com)
  1 $TTL 1D                          ##解析缓存一天
  2 @    IN SOA  dns.westos.com. root.westos.com. ( ##dns服务器的名称 管理dns服务器的用户
  3                                         0       ; serial
  4                                         1D      ; refresh   #缓存刷新时间
  5                                         1H      ; retry     #解析错误尝试的时间
  6                                         1W      ; expire    #过期时间 1周
  7                                         3H )    ; minimum   
    ###主服务器挂了以后服务器至多工作的时间 可以保护dns防止ddos攻击
  8      NS      dns.westos.com.                                              ###nameserver:下面指向服务器的IP
  9 dns     A       172.25.8.11
 10 www     A       172.25.8.10      
systemctl restart named  

测试  采用真机测试IP 172.25.8.250
方法  dig  www.westos.com




测试结果:

DNS轮询

在dns正向解析的条件下
配置westos.com.zone
  vim /var/named/dream.com.zone
  1 $TTL 1D
  2 @       IN SOA  dns.westos.com. root.westos.com. (
  3                                         0       ; serial
  4                                         1D      ; refresh
  5                                         1H      ; retry
  6                                         1W      ; expire
  7                                         3H )    ; minimum
  8         NS      dns.westos.com.
  9 dns     A       172.25.8.11
 10 www     CNAME   login.westos.com.
 11 login   A       172.25.8.10
 12 login   A       172.25.8.250
 systemctl restart named


测试IP(172.25.8.250):


DNS反向解析

原理:将IP地址转化为域名,在DNS正向解析的条件下,虚拟机IP:172.25.8.11(服务器)
配置named.rfc1912.zones
 vim /etc/named.rfc1912.zones
 43 zone "0.in-addr.arpa" IN {
 44         type master;
 45         file "named.empty";
 46         allow-update { none; };
 47 };
 48 
 49 zone "8.25.172.in-addr.arpa" IN {
 50         type master;
 51         file "westos.com.ptr";
 52         allow-update { none; };
 53 };

cp -p /var/named/named.loopback /var/named/dream.com.ptr
配置dream.com.ptr
vim /var/named/dream.com.ptr
  1 $TTL 1D
  2 @       IN SOA  dns.westos.com. root.westos.com. (
  3                                         0       ; serial
  4                                         1D      ; refresh
  5                                         1H      ; retry
  6                                         1W      ; expire
  7                                         3H )    ; minimum
  8         NS      dns.westos.com.
  9 dns     A       172.25.8.11
 10 10      PTR     www.westos.com
 11 250     PTR     login.westos.com
 systemctl restart named



测试:真机测试   反向解析到login.westos.com

反向解析到www.westos.com

DNS双向解析

运用DNS双向解析,我们可以让内外网访问的网段不同。这里我们以外网访问172.25.8网段,内网访问192.25.8网段为例。
配置westos.com.inter
cp -p /var/named/westos.com.zone /var/named/westos.com.inter
vim /var/named/westos.com.inter 
$TTL 1D
@       IN SOA  dns.westos.com. root.westos.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.westos.com.
dns     A       192.25.8.11
www    CNAME    login.westos.com.
login   A       192.25.8.10
login   A       192.25.8.250

配置named.rfc1912.zones.inter
 cp -p /etc/named.rfc1912.zones  /etc/named.rfc1912.zones.inter
 vim /etc/named.rfc1912.zones.inter
 24 zone "westos.com" IN {
 25         type master;
 26         file "westos.com.inter";
 27        allow-update { none; };
 28 };

配置named.conf
vim /etc/named.conf
 50 #zone "." IN {
 51 #       type hint;
 52 #       file "named.ca";
 53 #};
 54 #
 55 #include "/etc/named.rfc1912.zones";
 56 #include "/etc/named.root.key";
 57  view localnet {
 58          match-clients { 172.25.8.11; };                                  ##    #这里为了测试方便把11当成内网,其他为外网。应该写localhost 
 59          zone "." IN {
 60          type hint;
 61          file "named.ca";
 62          };
 63  include "/etc/named.rfc1912.zones.inter";
 64  }; 
 65  view internet {
 66          match-clients { any; }; 
 67          zone "." IN {
 68          type hint;
 69          file "named.ca";
 70          };
 71  include "/etc/named.rfc1912.zones";
 72  }; 
systemctl restart named





测试:在IP:172.25.8.11(服务器)中/etc/resolv.conf加入nameserver 172.25.8.11,dig www.westos.com

在IP:172.25.8.10中dig www.westos.com

猜你喜欢

转载自blog.csdn.net/qq_41636653/article/details/81879735