DNS

DNS 是域名管理系統

 udp/53  tcp/53 (主從)

 

NDS的作用:
將域名解析成IP地址 正向解析  A記錄
將IP地址解析成域名 發向解析  PTR記錄

 

hosts文件:
一般生產環境中,服務器的hosts文件保存其他服務器的主機名和ip地址

根域(.):13根域服務器(1臺主根 美國 12輔根:9臺美國 歐洲2臺 瑞典 英國 亞洲1臺 日本)
常見的頂級域名:
com. 商業組織
cc. 商業組織
org. 非盈利性組織機構
gov. 政府單位
net. 網絡、通訊機構
int. 國際組織
cn.  中國
tw.  中國臺灣
hk. 中國香港

 

BIND軟件:
一款開源軟件,90%以上的企業用的bind軟件;由美國加州大學伯克利分校開發和維護的。
現在由互聯網系統協會負責開發維護。

1、關閉防火牆和selinux
2、配置yum源
3、軟件三步曲
(查看|安裝|軟件列表)

# rpm -q bind 是否安裝

# rpm -aq|grep ^bind
bind-libs-9.8.2-0.17.rc1.el6_4.6.x86_64  庫文件
bind-9.8.2-0.17.rc1.el6_4.6.x86_64  服務端軟件
bind-utils-9.8.2-0.17.rc1.el6_4.6.x86_64 工具包


# rpm -ql bind
/etc/logrotate.d/named 日誌輪轉
/etc/named  服務的主目錄
/etc/named.conf 主配置文件
/etc/rc.d/init.d/named 啓動腳本
/etc/named.rfc1912.zones 子配置文件(定義區域文件)
/usr/sbin/named 二進制命令
/usr/sbin/named-checkconf 檢測配置文件語法的命令
/usr/sbin/named-checkzone 檢測區域文件語法的命令
/var/log/named.log 日誌文件
/var/named  數據主目錄
/var/named/data
/var/named/dynamic
/var/named/named.ca   根域區域文件
/var/named/named.empty
/var/named/named.localhost  正向區域文件的模板
/var/named/named.loopback   反向區域文件模板
/var/named/slaves 備用dns服務器數據目錄
/var/run/named  進程

 

4、瞭解配置文件
5、根據需求通過修改配置文件來完成服務的搭建
需求:
www.bbs.net ——> 192.168.1.110
192.168.1.110 ——>www.bbs.net

1>修改主配置文件
# vim /etc/named.conf

options {
        listen-on port 53 { 127.0.0.1;any;  };定義監聽方式;全網監聽
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { localhost;any; }; 允許任何人來查詢
        recursion yes;  支持遞歸

        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;
...
};

2> 修改子配置文件
vim /etc/named.rfc1912.zones
....
zone "bbs.net" IN {   定義管理的域bbs.net
        type master;
        file "bbs.net.zone";  指定區域文件,默認/var/named   文件名必須一致
        allow-update { none; };
};
zone "1.168.192.in-addr.arpa" IN {  
        type master;
        file "192.168.1.zone";
        allow-update { none; };
};


3> 在/var/named目錄下,創建相應的正向和反向的區域文件

# cd /var/named/
# cp -p named.localhost bbs.net.zone
# cp -p named.loopback 192.168.1.zone 一定要加-p 文件名要和子配置文件一樣。


$TTL 1D :緩存生存週期1天
@:當前域
IN:互聯網
SOA:開始給哪個域授權
rname.invalid. 郵箱
(
    0       ; serial 更新序列號
    1D      ; refresh 更新間隔
    1H      ; retry  失敗重試
    1W      ; expire  區域文件的過期時間
    3H )    ; minimum 緩存的生存週期
NS:nameserver DNS服務器
A:A記錄 正向解析
AAAA:ipv6 地址
CNAME:別名
MX 5:郵件交互記錄 數字代表優先級  數字越小優先級越高
$GENERATE:批量解析

vim bbs.net.zone   正向解析
$TTL 1D
@ IN SOA bbs.net. rname.invalid. (
                      0 ; serial
                      1D ; refresh
                      1H ; retry
                      1W ; expire
                      3H ) ; minimum

@       NS      dns1.bbs.net. 
dns1    A       10.1.1.1  dns服務器
www     A       192.168.1.110  解析後的IP

注意:
前面2行代表dns服務器地址;在正向區域文件裏必不可少

vim 192.168.1.zone    反向解析

$TTL 1D
@       IN SOA  bbs.net. rname.invalid. (
                   0       ; serial
                  1D      ; refresh
                  1H      ; retry
                  1W      ; expire
                  3H )    ; minimum
@       NS      dns1.bbs.net.
110     PTR    
www.bbs.net.

 

4、語法檢測
# named-checkconf /etc/named.conf
# named-checkconf /etc/named.rfc1912.zones
# named-checkzone bbs.net.zone bbs.net.zone

 

5、啓動服務
# service named start

 

6、測試驗證
# nslookup www.bbs.net
# nslookup 192.168.1.110

 

 

 

---------->  主從 DNS 搭建:
     
        環境:  
               1、靜態 IP 地址
               2、系統時間包保持一致( 同步系統時間 )
   

  搭建時間同步服務器:
   
    端口 123   UDP 協議
方法一:  ntp  時間同步服務器,需要外網,自己本身需要同步時間,客戶端同步需要等1-3分鐘
        1、安裝 ntp 軟件
        # yum install ntp     使用yum安裝


        2、修改配置文件   
             # vim  /etc/ntp.conf
                ...
                restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap     允許哪個網段同步時間
  
         3、重啓服務    # service ntpd restart     重啓後需等待 3 分鐘
         4、client端同步時間
    # ntpdate 192.168.1.2
  3 Aug 16:12:24 ntpdate[4056]: step time server 192.168.1.2 offset -134852339.592429 sec

               
                    
方法二: xinted 服務  一般用於局域網中,同步速度快

# cd  /etc/xinetd.d/
# vim  time-dgram  
service time
{
# This is for quick on or off of the service
        disable         = no   將yes變成no

}

 

# vim time-stream
service time
{
# This is for quick on or off of the service
        disable         = no 將yes變成no
...
}

重啓xinetd  服務 ——> client端同步時間:  rdate -s 192.168.1.2


# netstat -nltup|grep 37
      tcp        0      0 :::37                       :::*                        LISTEN      2795/xinetd
      udp        0      0 :::37                       :::*                                    2795/xinetd

 

搭建主從DNS 服務步驟:
 
    1、 系統時間保持一致
             計劃任務( 2 臺都需要 ):*/2 * * * *  rdate   -s  192.168.1.2
        
    2、 環境    ( 靜態IP 地址)
              master :192.168.1.102   —> dns 已搭建好
              slave :192.168.1. 3

   (master 端 ) :
     1>  修改主配置文件
       #vim /etc/named.conf
options {
        listen-on port 53 { 127.0.0.1;any; };
        allow-transfer {192.168.1.3;};     限制只有192.168.1.3下載數據
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { localhost;any; };
        recursion yes;
....
};

子配置文件 /etc/named.rfc1912.zones 不需要修改
 
2>  修改相應的區域文件
        # cd  /var/named
        # vim  redhat.org.zone
            $TTL 1D
            @       IN SOA  redhat.org. rname.invalid. (
                                                    0       ; serial
                                                    1D      ; refresh
                                                    1H      ; retry
                                                    1W      ; expire
                                                    3H )    ; minimum
            @       NS      dns1.redhat.org.
            dns1    A       192.168.1.102
            www     A       192.168.1.2

            @       NS      slave.uplook.com.      添加2行,當master 有問題可以向slave 去解析
            slave   A       192.168.1.3

其他區域文件同樣需要加

           # vim 192.168.1.zone
                $TTL 1D
                @       IN SOA  @ rname.invalid. (
                                                        0       ; serial
                                                        1D      ; refresh
                                                        1H      ; retry
                                                        1W      ; expire
                                                        3H )    ; minimum
                @       NS      dns1.redhat.org.
                3       PTR     vip.test.net.
                2       PTR    
www.redhat.org.
               
                @       NS      slave.uplook.com.
                3       PTR     slave.uplook.com.


   (slave 端 ) :
  
    1、 軟件三步曲   #yum -y install bind
 
    2、 修改主配置文件
#vim /etc/named.conf
  options {
        listen-on port 53 { 127.0.0.1;any; };
        allow-transfer {192.168.1.3;};    限制只有192.168.1.3下載數據
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { localhost;any; };
        recursion yes;
  ....
  };


    3、 修改子配置文件     ( 不需要創建區域文件 )
   
       # vim  /etc/named.rfc1912.zones
           ...       增加如下內容
           zone "redhat.org" IN {
                        type slave;
                         masters {192.168.1.102;};      ——>  master dns IP
                         file "slaves/redhat.org.zone";
           };
           zone "test.net" IN {
                        type slave;
                        masters {192.168.1.102;};
                        file "slaves/test.net.zone";
           };
           zone "1.168.192.in-addr.arpa" IN {
                        type slaves;
                        masters {192.168.1.102;};
                        file "slaves/192.168.1.zone";
           };

 
    4、 語法檢測    #named - checkzone  ....
   
    5、 測試驗證
        #dig  @192.168.1.102 
www.redhat.org
        #dig  @192.168.1.3  www.redhat.org
       
通過修改master 區域文件的版本號或者更改系統時間 來測試


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章