zoukankan      html  css  js  c++  java
  • Centos 5.2安装配置DNS服务器

    BIND安装配置(主从)
    我的系统环境:centos 5.2

    作者:哈密瓜


    主:
    我采用的是yum安装
    [root@linux src]#yum -y install bind*

    生成rndc控制命令的key文件
    [root@linux usr]# sbin/rndc-confgen > /etc/rndc.conf 
    从rndc.conf文件中提取named.conf用的key 
    [root@linux usr]# cd /etc
    [root@linux etc]# tail -10 rndc.conf | head -9 | sed s/# //g >

    /var/named/chroot/etc/named.conf 
    自动在/var/named/chroot/etc下生成named.conf文件

    进入/var/named/chroot/etc
    [root@linux etc]# cd /var/named/chroot/etc
    现在named.conf文件中有了rndc-key区段
    [root@linux etc]# more named.conf
    key "rndc-key" {

               algorithm hmac-md5;

               secret "Nd0nLoL8t4Mv0iSpqP1noA==";

    };


    controls {

               inet 127.0.0.1 port 953

                       allow { 127.0.0.1; } keys { "rndc-key"; };

    };
    然后我们来完善它:
    [root@linux etc]#vi named.conf
    options { 
    directory "/var/named"; 

    }; 

    zone "." IN { 
    type hint; 
    file "named.ca"; 
    }; 

    zone "localhost" IN { 
    type master; 
    file "localhost.zone"; 
    }; 

    zone "0.0.127.in-addr.arpa" IN { 
    type master; 
    file "named.local"; 
    }; 

    zone "learningsky.org" IN { 
    type master; 
    file "learningsky.zone"; 
    allow-transfer { 192.168.22.155 ; };  //192.168.22.155为本机网关
    notify yes;
    also-notify { 192.168.22.155 ; };   //使用notify指令会自动通知所有这个域的所有在

    ns记录上的机器,also-notify指令可以用来通知所有不在ns记录上的dns服务器.
    }; 

    zone "22.168.192.in-addr.arpa" IN { 
    type master; 
    file "22.168.192"; 
    allow-transfer { 192.168.22.155 ; };
    notify yes;
    also-notify { 192.168.22.155 ; };
    };

    key "rndc-key" {

               algorithm hmac-md5;

               secret "Nd0nLoL8t4Mv0iSpqP1noA==";

    };


    controls {

               inet 127.0.0.1 port 953

                       allow { 127.0.0.1; } keys { "rndc-key"; };

    };

    进入/var/named/chroot/var/named
    [root@linux etc]# cd /var/named/chroot/var/named

    建立localhost.zone文件
    [root@linux named]#vi localhost.zone
    $TTL       86400
    $ORIGIN localhost.
    @                          1D IN SOA          @ root (
                                               42                 ; serial (d. adams)
                                               3H                 ; refresh
                                               15M                ; retry
                                               1W                 ; expiry
                                               1D )               ; minimum

                               1D IN NS           @
                               1D IN A            127.0.0.1

    建立named.local文件
    [root@linux named]#vi named.local
    $TTL       86400
    @          IN         SOA        localhost. root.localhost.  (
                                             1997022700 ; Serial
                                             28800         ; Refresh
                                             14400         ; Retry
                                             3600000       ; Expire
                                             86400 )       ; Minimum
                     IN         NS         localhost.

    1          IN         PTR        localhost.


    dig命令直接生成named.ca文件
    [root@linux named]#dig > named.ca
    建立learningsky.org域名正向解析文件
    [root@linux named]#vi learningsky.zone
    $TTL       86400
    $ORIGIN learningsky.org.
    @               1D      IN SOA  dns.learningsky.org.  root.mail.learningsky.org.

    (

                                              1053891162
                                               3H
                                               15M
                                               1W
                                               1D )

                          1D  IN NS             dns.learningsky.org.
                          1D  IN MX       5        mail.learningsky.com.
    dns                   IN A             192.168.22.150    //192.168.22.150为本机IP
    mail                  IN A             192.168.22.150
    www                   IN A             192.168.22.150

    建立learningsky.org域名反向解析文件
    [root@linux named]#vi 22.168.192
    $TTL 86400
    @ IN SOA dns.learningsky.org. root.mail.learningsky.org.(
                                              20031001;
                                              7200;
                                              3600;
                                              43200;
                                              86400);
    @                     IN NS dns.learningsky.org.
    150                   IN PTR dns.learningsky.org.
    150                   IN PTR mail.learningsky.org.
    150                   IN PTR www.learningsky.org.                                


    [root@linux named]#netstat -an |grep :53
    tcp           0         0 192.168.22.150:53              0.0.0.0:*               

          LISTEN     

         
    tcp           0         0 127.0.0.1:53                   0.0.0.0:*               

          LISTEN     

         
    udp           0         0 192.168.22.150:53              0.0.0.0:*               

                  

         
    udp           0         0 127.0.0.1:53                   0.0.0.0:*               

                  

         

    修给reslov.conf
    [root@linux named]#vi /etc/reslov.conf
    nameserver 192.168.22.150
    search learningsky.org

    [root@linux etc]# ps -aux|grep named
    Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
    named       13310  0.0  0.5  38160  2900 ?           Ssl  14:53      0:00

    /usr/sbin/named -u

    named -t /var/named/chroot
    root        13375  0.0  0.1      5212      688 pts/1       R+      16:08     

    0:00 grep named

    [root@linux etc]#more nsswitch.conf
    # To use db, put the "db" in front of "files" for entries you want to be
    # looked up first in the databases
    #
    # Example:
    #passwd:       db files nisplus nis
    #shadow:       db files nisplus nis
    #group:        db files nisplus nis

    passwd:        files
    shadow:        files
    group:         files

    #hosts:        db files nisplus nis dns
    hosts:         files dns

    # Example - obey only what nisplus tells us...
    #services:      nisplus [NOTFOUND=return] files
    #networks:      nisplus [NOTFOUND=return] files
    #protocols:  nisplus [NOTFOUND=return] files
    #rpc:           nisplus [NOTFOUND=return] files
    #ethers:        nisplus [NOTFOUND=return] files
    #netmasks:      nisplus [NOTFOUND=return] files       

    bootparams: nisplus [NOTFOUND=return] files

    ethers:        files
    netmasks:      files
    networks:      files

    [root@linux etc]# more host.conf
    order hosts,bind

    启动named
    /[root@linux etc]# usr/local/sbin/named

    测试DNS
    [root@linux etc]# nslookup
    >www.learningsky.org
    Server:            192.168.22.150
    Address:           192.168.22.150#53

    Name:      www.learningsky.org
    Address: 192.168.0.244

    >192.168.22.250
    Server:            192.168.22.250
    Address:           192.168.22.250#53

    150.22.168.192.in-addr.arpa        name = dns.learningsky.org.
    150.22.168.192.in-addr.arpa        name = www.learningsky.org.
    150.22.168.192.in-addr.arpa        name = mail.learningsky.org.

    >set type=MX
    >learningsky.org
    Server:            192.168.22.150
    Address:           192.168.22.150#53

    learningsky.org mail exchanger = 5 mail.learningsky.com.
    >exit

    主DNS配置完成。

    从:
    安装跟主的一样,不同的就是named.conf
    named.conf内容:
    options {
    directory "/var/named";

    }; 

    zone "." IN {
    type hint;
    file "named.root";
    }; 

    zone "localhost" IN {
    type master;
    file "localhost.zone";
    }; 

    zone "0.0.127.in-addr.arpa" IN {
    type master;
    file "named.local";
    }; 

    zone "learningsky.org" IN {
    type slave;
    file "learningsky.zone";
    masters { 192.168.22.150; };
    }; 

    zone "22.168.192.in-addr.arpa" IN {
    type slave;
    file "22.168.192";
    masters { 192.168.22.150; };
    };

    key "rndc-key" {
              algorithm hmac-md5;
              secret "80hKqo5bkGMAqHqeAlaLCA==";
    };

    controls {
              inet 127.0.0.1 port 953
                      allow { 127.0.0.1; } keys { "rndc-key"; };
    };

    注:
    1、主从同步的两台机器要在同一个时区,时间相差不要太大。
    2、主的dns服务器在修改了正向解析文件跟反向分解析文件时,要修改相应的 serial(通常

    是加数值,这个值必须主的要大于从的,要不同步不了)
    3、/var/named/chroot这个文件的宿主要是named,不是那权限other也要是7
    4、红色字体一定要注意,同步关键……

  • 相关阅读:
    敏捷开发感想
    团队分工
    My Partner‘s Code View
    课堂上面的练习
    APP测试用例
    Android App测试计划和设计测试矩阵
    BugReport-智慧农业APP
    图书管理系统的活动图和时序图
    图书管理系统用例图
    对图书管理系统5W1H的分析
  • 原文地址:https://www.cnblogs.com/fjping0606/p/4428718.html
Copyright © 2011-2022 走看看