zoukankan      html  css  js  c++  java
  • CentOS笔记——配置DNS服务器

    前话

    咳咳,这次Linux系统的DNS服务器搭建我不得不记下来。,这错误真的太蛋疼了,我整整弄了两天才解决问题(抱歉我很蠢)。

    也许有人会和我犯同样的错误,给大家分享一下经验。

    首先总结一下知识点:

    • DNS文件配置(named.conf)

    • 正向解析文件配置(xxx.zone)

    • 反向解析文件配置(xxx.rev)

    • 配置文件检查

    • Named服务启动

    • 务必记得关闭系统防火墙!!!我就死在两天了!!!

    下面开始配置实例。


    配置实例

    为了方便下面的理解,我这里列出参与测试的虚拟机

    系统 角色 域名 IP
    CentOS7 DNS服务器 192.168.217.130
    Window Server 2003 网站服务器 pwc.cn 192.168.217.101
    Window Server 2003 DNS客户机 192.168.217.131

    第一步,安装DNS服务

    命令行输入以下命令:

    yum -y install bind-chroot.x86_64

    回车键后yum会自动下载安装服务以及其依赖文件,等待下载完成,安装完成示例如下:

    install dns

    为了方便后面测试,我们需要安装其余两个命令行工具,分别输入以下命令

    yum -y install net-tools.x86_64

    yum -y install bind-utils.x86_64

    到这里,我们启动一下DNS服务试试,输入以下命令:

    service named start

    start dns

    启动成功,接着我们关闭DNS服务。

    到这里,DNS服务安装完成

    第二步,配置DNS文件

    首先,我们找到/etc/named.conf文件并进入其所在目录,输入命令行 vi named.conf进行查看编辑,named.conf文件内容如下 :

    options { //服务器的全局配置选项及一些默认设置
            listen-on port 53 { 127.0.0.1; }; //监听IP和端口,此处监听本地IP
            listen-on-v6 port 53 { ::1; }; //对ip6支持
            directory       "/var/named";  //区域文件存储目录
            dump-file       "/var/named/data/cache_dump.db"; //dump cach的目录directory
            statistics-file "/var/named/data/named_stats.txt";
            memstatistics-file "/var/named/data/named_mem_stats.txt";
            forwarders     { 1.1.1.1; 2.2.2.2; }; // 如果域名服务器无法解析时,将请求交由1.1.1.1;2.2.2.2来解析
            allow-query    { localhost; };   //指定允许进行查询的主机
            allow-transfer { none; }; //指定允许接受区域传送请求的主机,说明白一点就是辅dns定义,比如辅dns的ip是3.3.3.3,那么可以这样定义{ 3.3.3.3; },要不然主辅dns不能同步
            recursion yes;
            dnssec-enable yes;
            dnssec-validation yes;
    
            bindkeys-file "/etc/named.iscdlv.key";
            managed-keys-directory "/var/named/dynamic";
    
             pid-file        "/var/run/named/named.pid"; //存着named的pid
             session-keyfile-direction "/run/named/session.key";
    };
    
    logging { //指定服务器日志记录的内容和日志信息来源
            channel default_debug {
                    file "data/named.run";
                    severity dynamic;
            };
    
    zone "." IN {   //根域名区域,下面指定file文件中包含全球13个根域名服务器地址
            type hint;
            file "name.ca";
    };
    
    include "/etc/named.rfc1912.zones";
    include "/etc/named.root.key";
    

    要添加自己的解析域,只需在内容后面添加zone即可。
    另外,我们要注意zone内的type,该type值有三种,如下:

    • hint,存根区域
    • master,主要区域
    • slave,辅助区域

    下面,我们对其进行修改,加上自己的域名解析,修改后内容如下(只展示需修改和添加的部分):

    options { //服务器的全局配置选项及一些默认设置
            listen-on port 53 { any; };  //修改为any,表示监听本机所有IP
            allow-query    { any; };    //修改为any,表示接收所有DNS解析请求
    };
    
    zone "." IN {   //根域名区域,下面指定file文件中包含全球13个根域名服务器地址
            type hint;
            file "name.ca";
    };
    
    //下面我们自己添加解析域
    
    zone "cn" IN {  //正向解析
            type master;
            file "cn.zone";
    };
    
    zone "217.168.192.in-addr.arpa" IN {  //反向解析,注意
            type master;
            file "cn.rev";
    };
    
    
    include "/etc/named.rfc1912.zones";
    include "/etc/named.root.key";
    
    

    这时,我们命令行键入如下命令进行DNS配置文件检查:

    named-checkconf /etc/named.conf

    如果回车键后没有错误提示,表示改配置没有错误

    到这里,我们就配置好了DNS配置文件。但是还没结束,下面我们要创建新添加的两个zone区域文件,分别是cn.zone正向解析文件,和cn.rev反向解析文件

    第三步,正向解析文件配置

    首先,我们进入文件夹 /var/named,然后我们创建一个名为 cn.zone 的文件,键入如下命令:

    vi cn.zone

    进入编辑模式,添加如下内容:

    $TTL 3H          //M/H/D/W分别代表分/时/天/周,纯数字表示秒
    @           IN  SOA luoyefengqiao.  root. (
                                2016011701;serial 
                                1D; refresh
                                1H; retry
                                1W; expire
                                3H ) ; minimum
    
    ;  ‘;’作为注释的开头
    
    ;  Zone NS records
    ;
    
    @                       NS  luoyefengqiao.
    
    ;
    ;  Zone records
    ;
    
    pwc                     A       192.168.217.101
    www.pwc                 CNAME   pwc.cn.
    

    保存推出后,我们键入如下命令对其配置进行检查:

    named-checkzone cn /var/named/cn.zone

    如果返回 ok 表示没有错误。

    到这里,我们的正向解析配置文件基本完成。

    第四步,反向解析文件配置

    我们在同样目录创建一个名为 cn.rev 的文件,键入如下命令:

    vi cn.rev

    进入编辑模式,添加如下内容:

    $TTL 3H
    @           IN  SOA luoyefengqiao.  root. (
                                2016011701;serial 
                                1D; refresh
                                1H; retry
                                1W; expire
                                3H ) ; minimum
    
    @                       NS  luoyefengqiao.
    
    101                     PTR pwc.cn.
    

    保存退出,然后我们同样键入检查命令:

    named-checkzone cn /var/named/cn.rev

    输出 ok 表示没有错误

    到这里,反向解析文件配置完成。

    第五步,启动DNS服务

    1. 我们需要修改 /etc/resolv.con 文件,该实例添加内容 nameserver 192.168.217.130
      resolv.conf

    2. 我们输入命令 service named start
      named start test
      输出了如上内容,好像成功了。
      接着我们试试 nslookup pwc.cn,然而解析不出pwc.cn的IP。

    3. 我们输入命令 service named status -l ,然后我们可以看到如下信息:
      namde status
      看到红色文字,原来是正向反向解析文件访问受限。
      所以我们输入命令 chmod -R 777 cn.* 对两个文件赋予最大权限。
      接着我们输入命令 service named restart 重启DNS服务,然后再输入 service named status -l 检查状态。
      named restart
      输出如上,说明DNS服务启动基本成功。

    4. 我们在DNS服务器中输入命令 nslookup pwc.cnnslookup www.pwc.cn ,DNS服务器本机解析基本没问题。
      nslook test
      然而,我们在DNS客户机dos命令窗口输入 nslookup pwc.cn 或者 nslookup www.pwc.cn 却请求DNS解析失败
      dns erro

    解析失败!!!为啥!!!
    这个问题困扰了我两天,客户机 ping DNS服务器可以连通啊,为啥客户机对DNS服务器请求解析错误???
    DNS服务器检查了没有iptables防火墙服务啊,selinux服务也关闭了啊,为啥为啥为啥???

    最后一步,关闭firewalld防火墙

    最后找了好久,终于找到真理,centos7的默认是不带iptables防火墙的,它带的是firewalld防火墙服务。所以,输入以下命令:

    service firewalld stop

    要永远关闭它自行谷歌百度:)

    然后客户机dos输入 nslookup www.pwc.cn 或者 nslookup pwc.cn 或者浏览器输入都可以成功解析。

    succ

    感想

    最后能够解决问题感觉真好。

  • 相关阅读:
    SVN分支的创建与使用
    在微信小程序中使用阿里图标库Iconfont
    C#WebApi的创建与发布
    C#WebService的创建与发布
    浏览器中js怎么将图片下载而不是直接打开
    c#将图片Image转换为内存流MemoryStream
    vscode中html和vue没有自动补全,需要怎么配置
    无法上网重置网络处理
    ie7下<a href="javascript:;">标签不反应
    新建类时,显示标明可访问类型
  • 原文地址:https://www.cnblogs.com/pwc1996/p/5957861.html
Copyright © 2011-2022 走看看