DNS于linuxserver该服务名是named,和named服务相关的软件bind。

周围环境:

    系统版本号:VBOX虚拟机centos6.0。

本机内网IP 192.168.2.198。

一、安装软件bind。

1.显示bind相关的软件包。

        [root@localhost ~]# yum list bind*

        bind.i686 

        bind-chroot.i686

        bind-devel.i686

        bind-dyndb-ldap.i686

        bind-libs.i686

        bind-sdb.i686

        bind-utils.i686 


    2.安装必要包。主要安装三个软件包,其它的眼下没有必要安装。

bind成功安装后server是named。

        [root@service ~]# yum install bind bind-libs bind-utils -y

    3.查看bind安装产生的文件。主要用到两个文件。例如以下:

        [root@localhost ~]# rpm -ql bind | less

        /etc/NetworkManager/dispatcher.d/13-named

        /etc/logrotate.d/named

        /etc/named

        /etc/named.conf----------------主配置文件

        /etc/named.iscdlv.key

        /etc/named.rfc1912.zones-------zone配置文件,include到主配置文件

        /etc/named.root.key

        /etc/portreserve/named

        /etc/rc.d/init.d/named

        /etc/rndc.conf

        /etc/rndc.key

        /etc/sysconfig/named

        ....非常多行....






二、配置DNS缓存server

    1.打开/etc/named.conf文件配置改动options配置块内下面选项:

        listen-on port 53 { 127.0.0.1; }; 改为 listen-on port 53 { 127.0.0.1; 192.168.2.198;};  //192.168.2.198是我的内网IP,依据自己情况改动。

        #listen-on-v6 port 53 { ::1; }; //凝视掉,假设不用的话。

        allow-query     { localhost; }; 改为 allow-query     { any; };


        保存退出;

    2.打开配置/etc/named.rfc1912.zones, 即主配置文件named.conf底部include进来的zone文件。

凝视掉bind自己主动生成的除下面zone块,也就是除了下面两块意外的都凝视掉:

        zone "localhost" IN { //正向解析配置

                type master;

                file "named.localhost";  //文件相对于/var/named/文件夹

                allow-update { none; };

        };

        zone "1.0.0.127.in-addr.arpa" IN { //反向解析配置

                type master;

                file "named.loopback";  //文件相对于/var/named/文件夹

                allow-update { none; };

        };


    3.配置正向解析文件

    [root@localhost named]# vim /var/named/named.localhost

        填写下面内容:

        $TTL 1D

        @       IN SOA  localhost. root.localhost. (

                    201406251006    ; serial    //序列号,随便写我一般写成单签日期时间

                    1D      ; refresh           //命令slave多久进行一次主动更新。

1H      ; retry             //假设到了refresh的时间,可是slave却无法连接master时,那么多久之后,slave会再次的主动尝试与主机连线。

                    1W      ; expire            //假设slave一直无法与master连接上,那么经过多久的时间后,则命令slave不要在连接master了。

3H )    ; minimum           //没有指定生存期的数据,能够保存在数据库中的时间。及TTL

        IN NS   localhost.

        IN A    127.0.0.1


    4.配置反向解析文件,实际上就是把正向解析的配置文件复制一份。然后把里面的A记录反过来写“A”写成“PTR”

        [root@localhost named]# vim /var/named/named.loopback

    填写例如以下内容:

        $TTL 1D

        @       IN SOA  localhost. root.localhost. (

                                        201406251006    ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

        IN NS   localhost.

        IN PTR  localhost.


    5.改动named的相关文件属组为named

        [root@localhost named]# chown :named /var/named/named*

    6.检查配置文件。相关命令named-checkconf、named-checkzone

        [root@localhost named]# named-checkconf [/etc/named.conf] //检查主配置文件,假设没有输出错误信息表示正常。

[root@localhost named]# named-checkzone "localhost" /var/named/named.localhost //检查正向解析配置

        zone localhost/IN: loaded serial 20140625

        OK

        [root@localhost named]# named-checkzone "1.0.0.127.in-addr.arpa" /var/named/named.loopback  //检查反向解析配置

        zone 1.0.0.127.in-addr.arpa/IN: loaded serial 20140625

        OK


    7.启动named服务

        [root@localhost named]# service named start //或者用/etc/init.d/named start启动

        启动 named:                                               [确定]

        [root@localhost named]# service named status //查看服务执行状态

        version: 9.8.2rc1-RedHat-9.8.2-0.23.rc1.el6_5.1

        CPUs found: 1

        worker threads: 1

        number of zones: 18

        debug level: 0

        xfers running: 0

        xfers deferred: 0

        soa queries in progress: 0

        query logging is OFF

        recursive clients: 0/0/1000

        tcp clients: 0/100

        server is up and running

        named (pid  2144) 正在执行...


    8.測试NDS

        a.使用命令dig測试

            [root@localhost named]# dig -t A localhost @127.0.0.1 //后面@127.0.0.1表示用本机解析,假设不想每次都写改动/etc/resolv.conf文件,加入nameserver 127.0.0.1

            ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.23.rc1.el6_5.1 <<>> -t A localhost @127.0.0.1

            ;; global options: +cmd

            ;; Got answer:

            ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58945

            ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0





            ;; QUESTION SECTION:

            ;localhost. IN
A





            ;; ANSWER SECTION:

            localhost. 86400
IN A
127.0.0.1





            ;; AUTHORITY SECTION:

            localhost. 86400
IN NS
localhost.





            ;; Query time: 3 msec

            ;; SERVER: 127.0.0.1#53(127.0.0.1)

            ;; WHEN: Wed Jun 25 10:25:28 2014

            ;; MSG SIZE  rcvd: 57

            

            [root@localhost named]# dig -t NS localhost @127.0.0.1

            ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.23.rc1.el6_5.1 <<>> -t NS localhost @127.0.0.1

            ;; global options: +cmd

            ;; Got answer:

            ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36123

            ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1





            ;; QUESTION SECTION:

            ;localhost. IN
NS





            ;; ANSWER SECTION:

            localhost. 86400
IN NS
localhost.





            ;; ADDITIONAL SECTION:

            localhost. 86400
IN A
127.0.0.1





            ;; Query time: 2 msec

            ;; SERVER: 127.0.0.1#53(127.0.0.1)

            ;; WHEN: Wed Jun 25 10:29:55 2014

            ;; MSG SIZE  rcvd: 57


        

        b.使用nslookup命令測试

            [root@localhost named]# nslookup

            > server 127.0.0.1

            Default server: 127.0.0.1

            Address: 127.0.0.1#53

            > set q=A

            > localhost

            Server: 127.0.0.1

            Address: 127.0.0.1#53





            Name: localhost

            Address: 127.0.0.1

            > set q=NS

            > localhost

            Server: 127.0.0.1

            Address: 127.0.0.1#53





            localhost nameserver = localhost.

            >exit


            

三、配置DNS主域名解析server。如果域名是itxingzhe.com

    1.打开编辑/etc/named.rfc1912.zones文件。加入例如以下内容。

        [root@localhost etc]# vim /etc/named.rfc1912.zones

        zone "itxingzhe.com" IN { //正向解析

                type master;

                file "named.itxingzhe.com.zone";

                allow-update { none; };

        };





        zone "2.168.192.in-addr.arpa" IN { //反向解析,注意IP写法是反过来的网段。

type master;

                file "named.2.168.192.arpa";

                allow-update { none; };

        };


    2.到/var/named文件夹下创建正/反向解析配置文件。

        a.正向解析配置

            [root@localhost named]# vim /var/named/named.itxingzhe.com.zone

            $TTL 1D

            @       IN SOA  ns1.itxingzhe.com. root.itxingzhe.com. (

                                                    20140625        ; serial

                                                    1D      ; refresh

                                                    1H      ; retry

                                                    1W      ; expire

                                                    3H )    ; minimum

                                    IN NS   ns1.itxingzhe.com.

                                    IN A    192.168.2.198

            www.itxingzhe.com.      IN A    192.168.2.198

            ftp.itxingzhe.com.      IN A    192.168.2.198

            //其它的域名一次类推


        b.反向解析配置

            [root@localhost named]# vim /var/named/named.2.168.192.arpa

            $TTL 1D

            @       IN SOA  ns1.itxingzhe.com. root.itxingzhe.com. (

                                                    20140625        ; serial

                                                    1D      ; refresh

                                                    1H      ; retry

                                                    1W      ; expire

                                                    3H )    ; minimum

                                    IN NS   ns1.itxingzhe.com.

            198                     IN PTR  ns1.itxingzhe.com.

            198                     IN PTR  www.itxingzhe.com.


        c.改动配置文件属组为named

            [root@localhost named]# chown :named /var/named/named.2.168.192.arpa /var/named/named.itxingzhe.com.zone

            //这样也能够

            [root@localhost named]# chown :named /var/named/named*


    3.检查配置文件

        參考以上“二、6.检查配置文件”。

        [root@localhost named]# named-checkconf

        [root@localhost named]# named-checkzone "itxingzhe.com" /var/named/named.itxingzhe.com.zone 

        zone itxingzhe.com/IN: loaded serial 20140625

        OK

        [root@localhost named]# named-checkzone "named.2.168.192.arpa" /var/named/named.2.168.192.arpa 

        zone named.2.168.192.arpa/IN: loaded serial 20140625

        OK


    4.重新启动named服务或又一次载入配置文件

        [root@localhost named]# service named restart

        停止 named:.                                              [确定]

        启动 named:                                               [确定]

        或

        [root@localhost named]# /etc/init.d/named reload

        又一次加载named:          
                                  [确定]

    5.測试DNS

        參考以上“二、8.測试DNS”。

        [root@localhost named]# dig -t A www.itxingzhe.com @192.168.2.198//測试A记录

        ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.23.rc1.el6_5.1 <<>> -t A www.itxingzhe.com

        ;; global options: +cmd

        ;; Got answer:

        ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62759

        ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1





        ;; QUESTION SECTION:

        ;www.itxingzhe.com. IN
A





        ;; ANSWER SECTION:

        www.itxingzhe.com. 86400
IN A
192.168.2.198





        ;; AUTHORITY SECTION:

        itxingzhe.com. 86400
IN NS
ns1.itxingzhe.com.





        ;; ADDITIONAL SECTION:

        ns1.itxingzhe.com. 86400
IN A
192.168.2.198





        ;; Query time: 3 msec

        ;; SERVER: 192.168.2.198#53(192.168.2.198)

        ;; WHEN: Wed Jun 25 11:24:20 2014

        ;; MSG SIZE  rcvd: 85

        

        [root@localhost named]# dig -t NS itxingzhe.com @192.168.2.198 //測试NS记录,注意这里的域名是不带www的

        ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.23.rc1.el6_5.1 <<>> -t NS itxingzhe.com @192.168.2.198

        ;; global options: +cmd

        ;; Got answer:

        ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35904

        ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1





        ;; QUESTION SECTION:

        ;itxingzhe.com. IN
NS





        ;; ANSWER SECTION:

        itxingzhe.com. 86400
IN NS
ns1.itxingzhe.com.





        ;; ADDITIONAL SECTION:

        ns1.itxingzhe.com. 86400
IN A
192.168.2.198





        ;; Query time: 3 msec

        ;; SERVER: 192.168.2.198#53(192.168.2.198)

        ;; WHEN: Wed Jun 25 11:25:01 2014

        ;; MSG SIZE  rcvd: 65

        

        [root@localhost named]# dig -x 192.168.2.198 //反向解析结果

        ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.23.rc1.el6_5.1 <<>> -x 192.168.2.198

        ;; global options: +cmd

        ;; Got answer:

        ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65411

        ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1





        ;; QUESTION SECTION:

        ;198.2.168.192.in-addr.arpa. IN
PTR





        ;; ANSWER SECTION:

        198.2.168.192.in-addr.arpa. 86400 IN
PTR ns1.itxingzhe.com.

        198.2.168.192.in-addr.arpa. 86400 IN
PTR www.itxingzhe.com.





        ;; AUTHORITY SECTION:

        2.168.192.in-addr.arpa. 86400
IN NS
ns1.itxingzhe.com.





        ;; ADDITIONAL SECTION:

        ns1.itxingzhe.com. 86400
IN A
192.168.2.198





        ;; Query time: 5 msec

        ;; SERVER: 192.168.2.198#53(192.168.2.198)

        ;; WHEN: Wed Jun 25 11:26:12 2014

        ;; MSG SIZE  rcvd: 123


        

四、DNS从server配置。如果从serverIP是192.168.2.199

    1.安装bind软件。

    2.配置localhost的zone配置(或者直接copy主DNSserver上的localhost配置文件)。參考(二、配置DNS缓存server);

    3.配置vim /etc/named.rfc1912.zones加入例如以下内容:

        zone "itxingzhe.com" IN { //正向解析从server

            type slave;

            master {192.168.2.198;};

            file "slaves/named.itxingzhe.com.zone"; 

        };

        zone "2.168.192.in-addr-arpa" IN { //反向解析从server

            type slave;

            master {192.168.2.198;};

            file "slaves/named.2.168.192.arpa";

        };


        配置文件会自己主动从主DNSserver同步过来。不用手动配置。

    4.重新启动named服务;

    5.ll slaves/查看数据是否同步过来。

    

    注意:selinux会从影响server变速箱。请关闭selinux。

命令setenforce 0

版权声明:本文博主原创文章。博客,未经同意不得转载。

DNSserver内置笔记本的更多相关文章

  1. spring框架内置笔记本

    ◆基本介绍 目的:解决企业应用开发的复杂性 特征:使用主JavaBean更换EJB,它提供了许多其他的企业应用 范围:随你Java应用 Spring 框架是一个分层架构.由 7 个定义良好的模块组成. ...

  2. day16 函数的用法:内置函数,匿名函数

    思维导图需要补全 : 一共有68个内置函数: #内置:python自带 # def func(): # a = 1 # b = 2 # print(locals()) # print(globals( ...

  3. JSP学习笔记 - 内置对象 Request

    1.主要掌握以下5个内置对象及其所属类,必须学会在java docs里根据类名查找相应的方法 request     javax.servlet.http.HttpServletRequest res ...

  4. 一个禁用mac内置键盘的方法

    一个禁用mac内置键盘的方法 强大的 karabiner, 非常好用. 可以直接在有外接键盘连接的情况下, 禁用掉内置键盘 另外一个方法是启用mac的 鼠标键, 感觉用处不是很大, 修饰健并没有被禁用 ...

  5. TODO:Laravel 内置简单登录

    TODO:Laravel 内置简单登录 1. 激活Laravel的Auth系统Laravel 利用 PHP 的新特性 trait 内置了非常完善好用的简单用户登录注册功能,适合一些不需要复杂用户权限管 ...

  6. python黑魔法 -- 内置方法使用

    很多pythonic的代码都会用到内置方法,根据自己的经验,罗列一下自己知道的内置方法. __getitem__ __setitem__ __delitem__ 这三个方法是字典类的内置方法,分别对应 ...

  7. Entity Framework 6 Recipes 2nd Edition(11-12)译 -> 定义内置函数

    11-12. 定义内置函数 问题 想要定义一个在eSQL 和LINQ 查询里使用的内置函数. 解决方案 我们要在数据库中使用IsNull 函数,但是EF没有为eSQL 或LINQ发布这个函数. 假设我 ...

  8. 在DevExpress程序中使用内置的图标构建美观的界面元素

    在我们一般的程序中,为一般的界面元素添加一定的图标展示,有助于提升界面的整体的美观.结合排版布局,以及固定场景的图标,往往给用户非常好的直观感受:统一.美观.易理解.因此在一般的程序界面中,都尽量在略 ...

  9. Java第三方数据库连接池库-DBCP-C3P0-Tomcat内置连接池

    连接池原理 数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”.预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去.我们可以通过设定连接池 ...

随机推荐

  1. USACO sprime

    /* ID:kevin_s1 PROG:sprime LANG:C++ */ //N = 1仅仅可能为2,3,5,7.N > 1仅仅可能为1,3,7.9. N = i,到N = i + 1递推假 ...

  2. Gitblit配置

    Gitblit的安装配置及访问-windows (2013-09-11 11:52:31) 转载▼   分类: android基础 Git 是现在很流行的分布式版本控制工具,github更是人人皆知. ...

  3. virtio-blk分析

    和virtio-network相同,virtio-blk驱动程序使用Virtio机制Guest它提供了一个高性能的设备I/O方法.我们期待在这里virtio-blk实现. [点击查看全文] http: ...

  4. JDK源码学习系列03----StringBuffer+StringBuilder

                         JDK源码学习系列03----StringBuffer+StringBuilder 由于前面学习了StringBuffer和StringBuilder的父类A ...

  5. mac_Mac环境下怎样编写HTML代码?

    在Mac环境下,使用默认的文本编辑器编写的HTML的源代码, 使用不同的浏览器打开后,依旧还是显示源代码 推荐使用UltraEdit,问题就迎刃而解了

  6. Test SRM Level Three: LargestCircle, Brute Force

    题目来源:http://community.topcoder.com/stat?c=problem_statement&pm=3005&rd=5858 思路: 如果直接用Brute F ...

  7. WinCE CAB Manager 3.0学习

    VS自带智能设备打包工具,能实现打包.但是,打包安装部署之后,设备上面没有卸载,找了好多资料,最终都没有解决. WinCE CAB Manager3.0完美解决. 打包步骤如下, 一,打开WinCE ...

  8. TCP和UDP的差别

    简单的差别: TCP提供面向连接的.可靠的数据流传输,而UDP提供的是非面向连接的.不可靠的数据流传输. TCP传输单位称为TCP报文段,UDP传输单位称为用户数据报. TCP注重数据安全性,UDP传 ...

  9. XMPP得知--建立一个管理类

    参考其他demo之后,设立一个管理类的发现看起来更舒服,理-- 但在建立与server连接其中.发现 Connect Error: {     NSLocalizedDescription = &qu ...

  10. [Linux]scp 命令远程复制

    这些天来干预系统之前没有接触,建立使用用途良好的发展环境 scp命令,那么如何使用查询以下信息. scp是secure copy的缩写.主要用来linux系统之间的文件和文件夹的远程拷贝 能够非常ea ...