Linux 構建DNS主從服務器


Linux 構建DNS主從服務器
 CentOS release 6.8 (Final) 構建DNS主從服務器。
主服務器:192.168.18.42
從服務器:192.168.18.41
-----------------------------------------------------------------
一般而言,DNS服務器配置流程主要分為3步:
 
(1)建立主配置文件named.conf,即其主要是設置DNS服務器能管理哪些區域(zone)以及對應文件名和存儲路徑;(/etc/named.conf和/etc/named.rfc1912.zones)
(2)建立區域文件,依據named.conf文件中指定的路徑來建立區域文件,此文件主要記錄該區域內的資料記錄;(/var/named/renn.db和/var/named/renn.rev);
文件名在named.rfc1912.zones的配置自定義(file "renn.db";).
(3)重新加載配置文件或重啟named服務使用配置生效。
 
(chkconfig named on、chkconfig --add named、service named start/restart)
 
區域Type:
master: 主域服務
    slave: 從域服務
    stub: 只復制主域的NS記錄,屬於BIND特有功能.
    hint: 設定初始化設置根域服務器所用的參數.
    forward: 域轉發設置
 
//安裝主程序
  #yum -y install bind bind-chroot bind-utils
  #rpm -qa bind*
bind-9.8.2-0.47.rc1.el6_8.4.x86_64
bind-libs-9.8.2-0.47.rc1.el6_8.4.x86_64
bind-utils-9.8.2-0.47.rc1.el6_8.4.x86_64
bind-chroot-9.8.2-0.47.rc1.el6_8.4.x86_64
----------------------------------------------
(1)bind : 提供了域名服務的主要程序及相關文件;
(2)bind-utils : 提供了對DNS服務器的測試工具程序(如:nslookup、dig etc)
(3)bind-chroot : 為bind提供一個偽裝的根目錄以增強安全性;
(注:新版本CentOS 6.x 已將chroot所需使用的目錄,透過mount --bind的功能進行目錄鏈接了,故在CentOS 6.x中,根本無須切換到/var/named/chroot/了,只需按常規目錄操作 即可!)
請cat /etc/sysconfig/named目錄,其下是不是有“ROOTDIR="/var/named/chroot”
(4)caching-nameserver : 為配置BIND作為緩存域名服務器提供必要的默認配置文件,這些文件在配置主、從域名服務器時也可作為參考。(CentOS 6.x后沒有caching-nameserver包了) 
----------------------------------------------

一 構建DNS主服務器。

(1)建立主配置文件named.conf,即其主要是設置DNS服務器能管理哪些區域(zone)以及對應文件名和存儲路徑;
  #vim /etc/named.conf 
  ---------------
  //僅僅修改幾個地方, any; 可以用IP或IP段替代。如 192.168.18.0/24;
options {
    listen-on port 53 { any; };
    //listen-on-v6 port 53 { ::1; };  //注銷
    allow-query     { any; };
  ---------------
  #cd /etc
  #cp -p named.rfc1912.zones named.rfc1912.zones.bak
  #vim named.rfc1912.zones
  ----------------------------
 // Shift+G跳到行尾添加
  zone "renn.info" IN {//設置正向DNS區域名稱
    type master;
    file "renn.db"; //設置對應的正向區域地址數據庫文件
    allow-transfer {192.168.18.41;}; //允許下載區域數據庫信息的從域名服務器IP地址
};
 
zone "18.168.192.in-addr.arpa" IN {//設置反向DNS區域名稱
    type master;
    file "renn.rev";//設置對應的反向區域地址數據庫文件
    allow-transfer {192.168.18.41;}; //允許下載區域數據庫信息的從域名服務器IP地址
};
  ------------------------------
  #named-checkconf //沒有消息就是好消息
  
  (2)建立區域文件,依據named.conf文件中指定的路徑來建立區域文件,此文件主要記錄該區域內的資料記錄;
 
//正向解析配置文件:
  #cd /var/named/
  #vim renn.db
#空間的日志會把tab和一些空格給弄沒了,我比較懶,調理幾次不行就沒弄了。 
  --------------------------------
$TTL 86400
@    IN    SOA    @  root (
    0;Serial
    3H;Refresh
    1H;Retry
    1W;expire
    1D);minimun
@  IN  NS  ns1.renn.info.
IN  NS  ns2.renn.info.
IN  A  192.168.18.42
IN  MX  5 mail.renn.info.
ns1  IN A  192.168.18.42
ns2  IN A      192.168.18.41
mail  IN A  192.168.18.42
www  IN A  192.168.18.42
zabbix  IN A 192.168.18.121
jenkins IN A 192.168.18.41
gitlab IN A 192.168.18.41
  --------------------------------
  #named-checkzone renn.info /var/named/renn.db 
zone renn.info/IN: loaded serial 0
OK
 
//反向解析配置文件:
  #vim renn.rev
  ---------------------------
$TTL86400
@    IN    SOA    localhost.    root.localhost. (
    0;Serial
    3H;Refresh
    1H;Retry
    1W;Expire
    1D);Mininum
@ IN NS  ns1.renn.info.
IN NS  ns2.renn.info.
42 IN PTR ns1.renn.info.
41 IN PTRns2.renn.info.
@ IN MX 5 mail.renn.info.
42 IN PTR mail.renn.info.
42 IN PTR www.renn.info.
42 IN PTR jenkins.renn.info.
41 IN PTR gitlab.renn.info.
41 IN PTR zabbix.renn.info.
  ---------------------------
#   named-checkzone 18.168.192.in-addr.arpa renn.rev 
zone 18.168.192.in-addr.arpa/IN: loaded serial 0
OK
(3)重新加載配置文件或重啟named服務使用配置生效
  # chkconfig --list named
  # chkconfig named on
  # chkconfig --list named
  # chkconfig --add named
  # service named restart
  # cat /etc/resolv.conf
nameserver 192.168.18.42
------------------------------------------

二、構建從DNS服務器

從域名服務器作為主服務器的冗余備份,與主域名服務器一起,同時提供本域內主機名與IP地址的解析,從域名服務器的地址數據庫需從主域名服務器中定期更新。
 
(1)建立主配置文件named.conf,即其主要是設置DNS服務器能管理哪些區域(zone)以及對應文件名和存儲路徑;
  # vim /etc/named.conf 
  ---------------
  //僅僅修改幾個地方, any; 可以用IP或IP段替代。如 192.168.18.0/24;
options {
    listen-on port 53 { any; };
    //listen-on-v6 port 53 { ::1; };  //注銷
    allow-query     { any; };
  ---------------
  # cd /etc
  # cp -p named.rfc1912.zones named.rfc1912.zones.bak //養成備份的好習慣
  # vim named.rfc1912.zones
  ----------------------------
 // Shift+G跳到行尾添加
  zone "renn.info" IN {//設置正向DNS區域名稱
    type slave;
    masters {192.168.18.42;};
    file "slaves/renn.db";
};
 
zone "18.168.192.in-addr.arpa" IN {//設置反向DNS區域名稱
    type slave;
    masters {192.168.18.42;};
    file "slaves/renn.rev";
};
  ------------------------------
  # chkconfig named on
  # ls /var/named/slaves/  //Nothing
  # service named restart
  # ls /var/named/slaves///同步成功生成renn.db 和 renn.rev
  # tail /var/log/messages//查看日志
 
#修改配置/var/named/下的renn文件后記得耍一下。
#rndc reload
#dig jenkins.renn.top
#WIN主機也清一下緩存
#ipconfig /flushdns
#cmd  --- ping jenkins.renn.top


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM