zoukankan      html  css  js  c++  java
  • CentOS7安装和配置dns服务器

    (1)dns介绍

    1.基本介绍

    名字解析:
    	NetBIOS名:localhost  wins hosts 
    	FQDN:完全限定域名,www.baidu.com	
    hosts文件:
    	作用:实现名字解析,主要为本地主机名丶集群节点提供快速解析,集中式数据库
    dns服务器:
    	作用:实现名字解析(将主机名解析成ip地址),分布式数据库
    

    2.dns解析流程:客户端解析www.baidu.com

    1)客户端查询自己的缓存(windows中的hosts文件也是缓存),如果没有将查询发送到/etc/resolv.conf中的dns服务器
    2)如果本地DNS服务器对于请求的信息具有权威性,会将权威答案发送到客户端
    3)如果dns服务器在其缓存中有请求信息,则将(非权威答案)发送到客户端
    4)如果缓存中没有该查询信息,dns服务器将搜索权威DNS服务器以查找信息
    	从根区域开始,按照dns层次结构向下搜索,直至对于信息具有权威的名称服务器,为客户端获取答案,dns服务器将信息传递给客户端,并在自己的缓存中保留一个副本
    	转发到其它服务器
    

    3.权威服务器和非权威服务器

    权威服务器:存储并提供某个区域的实际数据,例如126.com的DNS服务器,记录了126.com域中的所有主机的记录;是权威服务器返回的dns解析结果就是权威服务器返回的结果
    	master:主dns服务器,包含原始区域的数据
    	slave:备dns服务器,通过区域传输从master服务器获取区域数据的副本
    非权威服务器:不存储某个区域的实际数据,仅缓存dns服务器,虽然可以提供查询,但查询的内容不具有权威性
    

    4.正向区域和反向区域

    正向解析:域名解析为ip
    反向解析:ip地址解析成域名
    

    (2)配置仅有缓存功能的dns服务器

    0.关闭防火墙和selinux

    systemctl stop firewalld.service 
    systemctl disable firewalld.service
    sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/sysconfig/selinux
    setenforce 0
    

    1.安装bind和启动服务

    yum install bind bind-chroot -y 
    systemctl restart named 
    systemctl enable named 
    

    2.修改配置文件

    #vim /etc/named.conf 
    zone "." IN {
            type hint;
            file "named.ca";											//根区域,文件在选项directory(var/named)配置的目录下,全球13台根服务器
    };
    options {
            listen-on port 53 { any; };									//监听端口在所有ipv4接口上
            listen-on-v6 port 53 { any; };								//监听端口在所有ipv6接口上
            directory       "/var/named";								//数据库文件存储位置
            allow-query     { any; };									//允许任意主机查询
            forward first;												//当客户端发起查询,不是自己的区域,首先向forwarders服务器发起查询
            forwarders { 114.114.114.114;114.114.115.115; };			//转发到上一级的DNS服务器
    		};
    

    3.语法检测重启服务和验证测试

    #named-checkconf /etc/named.conf                                             //检查主配置文件
    #systemctl restart named 
    说明:当客户端的dns服务器为这台服务器的时候,如果该配置里面没有forward参数,默认发起查询会向根节点发起查询,全球有13台根服务器;如果配置forward选项,客户端发起的请求会转发forward的dns
    测试:客户端dns服务器指向这台服务器,dig www.baidu.com ;然后在dns服务器上tcpdump -i ens33  -nn port 53
    

    (3)配置dns服务器正向区域:dnstest.com

    1.主配置文件 :相当于在域名服务商申请域名

    #vim /etc/named.conf 
    options {
            directory       "/var/named";								//数据库文件存储位置
    		};
    zone "testdns.com" IN {												//创建域dnstest.com
            type master;
            file "testdns.com.zone";                                                                //数据文件在/var/named目录下
    };
    

    2.数据库文件(区域文件),在域名服务提供的页面上做解析

    #vim /var/named/testdns.com.zone
    $TTL    600									//设置缓存记录10分钟
    @       IN      SOA     @       root( 2018051600 1H 15M 1W 1D)			//起始授权记录,用于指出DNS服务器,必须配置,()里面的内容用于主从复制使用
    @       IN      NS      dns					//指区域所授权的主机是ns主机,必须配置
    dns     IN      A       192.168.1.31        //dns服务器本机ip                            
    www  100   IN      A       192.168.1.32		//www.testdns.com解析成192.168.1.32
    @		IN		A		192.168.1.32		//直接对域名进行解析,这里对域名testdns.com解析成192.168.1.32这个ip
    
    说明:缓存时间有三种,优先级最大生效
    	$TTL 600 										//缓存时间10分钟;优先级中
    	( 2018051600 1H 15M 1W 1D)						//这里1D是缓存时间1天;优先级最低
    	www  300   IN      A       192.168.1.32			//缓存时间5分钟;优先级最大生效
    

    3.检测语法和重启服务

    named-checkconf /etc/named.conf                 //检查配置文件
    named-checkzone testdns.com /var/named/testdns.com.zone         //检查区域数据文件,
    systemctl restart named 
    在客户端测试:dig www.testdns.com         //如果从权威服务器获取的解析结果,flags标志位有aa记录
    

    (4)客户端工具详解

    1.dig(linux工具)

    dig www.baidu.com 						//使用/etc/resolv.conf设置的dns
    dig @114.114.114.114					//使用指定的dns
    

    2.host(linux工具)

    host www.baidu.com 						//等同于host -t A www.baidu.com ,正向解析,查询A记录
    host 114.114.114.114					//反向解析,查询PTR记录
    host www.baidu.com 114.114.114.114 		//使用指定的dns服务器114.114.114.114 解析
    host -t SOA baidu.com 					//查询某个域的SOA记录
    host -t NS baidu.com 					//查询某个域的NS记录
    host -t MX	baidu.com 					//查询某个域的邮件服务器
    

    3.nslookup(linux/windows工具)

    nslookup www.baidu.com 					
    nslookup 114.114.114.114 
    #nslookup 								//进入nslookup交互界面
    set q=soa 								//设置查询soa记录
    baidu.com 
    set q=a									//设置查询A记录
    www.baidu.com 
    

    4.ipconfig(windows工具)

    ipconfig /flushdns 					//清空dns缓存
    ipconfig /displaydns 				//显示dns缓存信息
    ipconfig /release 					//释放ipv4地址
    ipconfig /renew 					//更新ipv4地址
    

    (5)配置主从复制

    1.从服务器配置

    #vim /etc/named.conf 
    zone "testdns.com" IN {
            type slave;                                            //类型从
            masters { 192.168.1.32; };                    //指定master服务器ip地址
            file "slaves/testdns.com.zone";            //数据文件放置在哪里
            };
    #systemctl restart named 
    

    2.主服务器配置

    #vim /etc/named.conf 
    zone "testdns.com" IN {
            type master;
            file "testdns.com.zone";
            allow-transfer { 192.168.1.33; };
            };
    
  • 相关阅读:
    C#基础
    自动化测试
    C# 数据结构题目
    .NET基础知识
    Sharepoint题目
    题目总结2
    数据库索引
    题目总结(2014-1-10)
    Stack详解
    SpringBoot入门基础知识点
  • 原文地址:https://www.cnblogs.com/lovelinux199075/p/9044718.html
Copyright © 2011-2022 走看看