1. 程式人生 > >架構師成長之路6.3 DNS服務器搭建(部署單臺DNS)

架構師成長之路6.3 DNS服務器搭建(部署單臺DNS)

html car default stat ttl 3.2 系統配置 ret true

點擊返回架構師成長之路

架構師成長之路6.3 DNS服務器搭建(部署單臺DNS)

1.安裝bind

yum -y install bind-utils bind bind-devel bind-chroot bind-libs

2.編輯/etc/named.conf

  • 全局配置:options {};
  • 日誌子系統配置:logging {};
  • 區域定義:本機能夠為哪些zone進行解析,就要定義哪些zone。
    zone "ZONE_NAME" IN {};

註意:任何服務程序如果期望其能夠通過網絡被其它主機訪 問,至少應該監聽在一個能與外部主機通信的IP地址上。

options {
  version "1.1.1";
  listen-on port 53 {any;};  #表示使用53端口
  directory "/var/named/chroot/etc/";#用來指定zone(A記錄/MX記錄等)文件配置路徑,註意chroot加強安全性
  pid-file "/var/named/chroot/var/run/named/named.pid"; #當服務起來的時候,pid的位置
  allow-query { any; };#允許解析訪問的權限,可以是ip地址或ip段
  Dump-file "/var/named/chroot/var/log/binddump.db";
  Statistics-file "/var/named/chroot/var/log/named_stats";#可以看到解析數量/成功率等,用於監控
  zone-statistics yes;# 配置yes,才能寫入
  memstatistics-file "log/mem_stats";
  empty-zones-enable no; #不允許配置zone,卻沒有記錄
  forwarders {202.106.196.115;8.8.8.8; };#外部轉發至以下IP地址
};

key "rndc-key" { # 生成rndc控制命令的key文件,rndc與bind之間使用md5認證
        algorithm hmac-md5;
        secret "Eqw4hClGExUWeDkKBX/pBg==";
};

controls {
       inet 127.0.0.1 port 953  #連接的實際是953,不是53
               allow { 127.0.0.1; } keys { "rndc-key"; };
 };

logging {  #指定日誌記錄分類和他們的目標位置
  channel warning {
    file "/var/named/chroot/var/log/dns_warning" versions 10 size 10m;#日誌輪轉10次,每次10M 
    severity warning;
    print-category yes;
    print-severity yes;
    print-time yes;
  };
  channel general_dns {
    file "/var/named/chroot/var/log/dns_log" versions 10 size 100m;#日誌輪轉10次,每次100M
    severity info;
    print-category yes;
    print-severity yes;
    print-time yes;
  };
  category default {
    warning;
  };
  category queries {
    general_dns;
  };
};

include "/var/named/chroot/etc/view.conf";  # viem簡單實現智能DNS功能

3.編輯/etc/rndc.key

內容需要與/etc/named.conf中的key一樣

key "rndc-key" {
        algorithm hmac-md5;
        secret "Eqw4hClGExUWeDkKBX/pBg==";
};

4.編輯/etc/rndc.conf

默認沒有此文件。

key "rndc-key" {
        algorithm hmac-md5;
        secret "Eqw4hClGExUWeDkKBX/pBg==";
};

options {
        default-key "rndc-key";
        default-server 127.0.0.1;
        default-port 953;
};

5.編輯/var/named/chroot/etc/view.conf

view "View1" {  #View1只是一個view名稱 
             allow-transfer {
                #dns-ip-list; 
        };      
             notify  yes;
             also-notify {
                #dns-ip-list; 
        };
       
#  ixfr-from-differences yes;
zone "carlos.com" {
        type    master;  #master:表示定義的是主域名服務器,slave :表示定義的是輔助域名服務器 
        file    "carlos.com.zone"; #與文件對應的zone文件
        allow-transfer {  #允許誰同步信息
                192.168.56.14;   
        };
        notify  yes; #當我的master配置文件發生變更時,通知以下IP
        also-notify {
                192.168.56.14;
        };
  };
        zone "forward.com" {
             type    forward;
              forwarders { 10.255.253.220; };
        };
};

6.編輯/var/named/chroot/etc/com.zone

\$ORIGIN .   #zone生效的域
\$TTL 3600       ; 1 hour
carlos.com                  IN SOA  op.Carlos.com. dns.carlos.com. (
                                2000       ; serial  #多DNS時候,以數量增加確認同步是否正常
                                900        ; refresh (15 minutes)#同步數據超15min失敗
                                600        ; retry (10 minutes)#同步失敗後10min重傳一次
                                86400      ; expire (1 day)# 過期時間1day
                                3600       ; minimum (1 hour)#TTL
                                )
                        NS      op.carlos.com.
\$ORIGIN carlos.com.
shanks              A       1.2.3.4
  op                A       1.2.3.4

7.修改目錄權限  

cd /var && chown -R named.named named/ #修改目錄權限
/etc/init.d/named start  #啟動
chkconfig named on   #加開機啟動

8.監聽端口

技術分享圖片

技術分享圖片

.....

架構師成長之路6.3 DNS服務器搭建(部署單臺DNS)