DNS and BIND 介紹及安裝

  • DNS

    • DNS是什么

    • 為什么要用DNS

    • 域名

  • BIND

DNS是什么

DNS:Domain Name System,域名系統
DNS作為域名和IP地址相互映射的一個分布式數據庫,能夠讓用戶更方便的訪問互聯網。它的正向映射是吧一個主機和IP地址關聯起來,它的反向映射則是IP地址到主機名。
DNS協議運行在UDP協議上,使用53端口。

為什么要用DNS

  • 連接到互聯網上的主機不計其數。當我想要訪問www.magedu.com這臺主機的時候,是如何查找到它的呢?
    假如,我的電腦想要訪問www.magedu.com這個網站。由于底層網絡是只能理解IP地址,而我的電腦不知道www.magedu.com這臺主機的IP地址。所以我的電腦會向最近的遠端DNS服務器發送請求查詢www.magedu.com的IP地址。DNS服務器收到查詢請求之后,把查詢到的結果(IP:101.200.188.230)再返還給我的電腦。然后我的電腦再通過IP地址進行訪問。
    1.jpg
    如圖所示:

    1. 我的電腦向DNS服務器發送查詢請求

    2. DNS服務器將查詢的結果返還給我的電腦

    3. 我的電腦通過IP地址訪問www.magedu.com

域名

  • DNS名字空間
    DNS名字空間被組織成一個“樹”形結構。每個完整的域名(例如,www.magedu.com)是這棵樹的分支上的一個結點。
    完整限定域名(FQDN,Fully Qualified Domain Name)是到一個DNS對象的完整路徑,包括最后的一個點。例如,magedu.com域里的一臺為www的主機,其FQDN就是www.baidu.com。
    2.jpg
    以上述的域名為例說明,magedu網址是由兩部分組成,標號magedu是這個域名的主體,而最后的標號com則是該域名的后綴,代表的這是一個com國際域名,是頂級域名。而前面的www是網絡名,為www的域名。
    DNS規定,域名中的標號由英文字母和數字組成,每個組成部分(標號)不能超過63個字符,整個FQDN(完整域名)全長不超過256個字符。FQDN不區分大小寫,但是它們通常都采用小寫。RFC2181對域名放開了限制。

  • 域名級別
    域名分為:
    國際頂級域名:.com,.net,.org,.edu等
    國家地區頂級域名:.cn,.de,.jp,.hk,.uk,.us等
    除了頂級域名外,還有二級域名,就是靠近頂級域名的左側的字段。如:www.magedu.com中,.magedu就是二級域名。接下來還有三級域名,即靠近二級域名的左側的字段,以此類推還有四級域名等等。

  • DNS查詢類型
    遞歸查詢:客戶機向根服務器發送請求,根服務器并不返回真實的答案,而是推薦它下級的服務器,以此類推,直到查詢IP地址返回給客戶機。
    迭代查詢:客戶機向DNS服務器發送請求,DNS服務器直接回復答案給客戶機。

  • 域名解析
    正向解析:FQDN到IP地址的解析。
    反向解析:IP地址到FQDN的解析。

  • 域名服務器的分類

    服務器的類型 說明
    主服務器 維護所負責解析的域內解析庫的服務器
    從服務器 從主DNS服務器或其它從DNS服務器“復制”(區域傳送)一份解析庫
    緩存服務器 緩存以前的查詢,通常沒有本地的區
    轉發服務器 負責非本地域名的本地查詢
  • 一次完整的查詢過程
    以上述域名www.magedu.com為例。客戶機向最近的遠端DNS服務器發送查詢請求,DNS服務器首先查看緩存中是否有www.magedu.com這條記錄。如果沒有就向根服務器發送查詢請求,根服務器會告訴你要去請求.com頂級服務器。之后DNS服務器再向頂級域名服務器發送查詢請求,得到的回復是向.magedu這個二級域名服務器發送查詢請求。最終,DNS服務器向二級域名發送請求并得到正確答案返回給客戶機。同時將此次查詢的結果寫入緩存之中,以便下次的查詢。
    3.jpg

  • 資源記錄
    DNS層次結構中的每一個區(zone),都有與之相關的一組資源記錄。資源記錄的基本格式是:
    name [TTL] IN rr_type value
    記錄的類型

    類型 名稱 功能
    SOA Start Of Authority 定義一個DNS區
    NS Name Server 標識服務器,授權子域
    A IPv4 Address 名字到地址的轉換
    AAAA IPv6 Address 名字到IPv6地址的轉換
    PTR Pointer 地址到名字的轉換
    MX Mail Exchanger 控制郵件的路由
    CNAME Canonical Name 主機的昵稱或別名
  • 記錄類型解釋

SOA
一個SOA記錄標記出一個區,即位于DNS域名空間中相同位置的一組資源記錄的開始位置。一個DNS域的數據通常至少包括兩個區:一個區用來把主機名轉換成IP地址,稱為正向區,其他一些區把IP地址反向映射到主機名,稱為反向區。

例如:
magedu.com.    86400    IN  SOA    ns.magedu.com.  admin.magedu.com.    (
               2016040201    ; 序列號
               2H    ;刷新時間
               10M    ;重試時間
               1W    ;過期時間
               1D    ;否定答案的TTL值
)

NS
NS(域名服務器)記錄標識一個區的權威服務器(主服務器和從服務器),并把子域授權給其他機構。NS記錄通常直接放在這個區的SOA記錄后面

注意:一個區域可以有多條NS記錄
例如:
magedu.com.  IN  NS  ns1.magedu.com.
magedu.com.  IN  NS  ns2.magedu.com.

注意:
相鄰的兩個資源記錄的name相同時,后續的可以省略。
對NS記錄而言,任何一個NS記錄后面的服務器名字,都應該在后續有一個A記錄。

MX
電子郵件系統使用MX記錄來更有效地路由郵件。MX記錄優先于郵件發送方所指定的目的地址,在大多數情況下,它將郵件指向接收方網點的郵件主機。

一個區域內,MX記錄可有多個,但是每個記錄的value之前應該有一個數字(0-99)。表示此服務器的優先級,數字越小優先級越高。
例如:
magedu.com.  IN  MX 10  mx1.magedu.com.
             IN  MX 20  mx2.magedu.com.

注意:
    對MX記錄而言,任何一個MX記錄后面的服務器名字,都應該在后續有一個A記錄。

A
A記錄是DNS數據庫的核心。它們提供了主機名到IP地址的映射,而這以前實在/etc/hosts文件中指定的。一個主機通常給它的每個網絡接口都有一條A記錄。

例如:
ns1  IN  A  101.200.188.230

AAAA
AAAA記錄提供主機名到IPv6地址的映射。

PTR
PTR記錄提供IP地址到主機名的反向映射。反向映射記錄存在于in-addr.arpa這個域,并且以IP地址各字節逆序的形式命名。

例如:
101  IN  PTR  www.magedu.com.

CNAME
CNAME記錄為之際多分配幾個名字。通常,這些別名要么用來將某項功能與主機關聯起來,要么用來縮短一個長主機名。

例如:
web.magedu.com.  IN  CNAME  www.magedu.com.

BIND

BIND指Berkeley Internet Name Domain(伯克利因特網域名)系統,它是ISC提供的一種開源軟件包,為Linux、UNIX、Mac OS和Windows系統實現了DNS協議。

BIND安裝

BIND需要兩個包:bindbind-utils,通過yum來進行安裝:

~]# yum install bind bind-utils -y

主DNS的配置

一、修改/etc/named.conf

[root@ns1 ~]# vim /etc/named.conf

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

options {
    listen-on port 53 { 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     { any; };
    recursion yes;

//    dnssec-enable yes;
//    dnssec-validation yes;
//    dnssec-lookaside auto;

    /* Path to ISC DLV key */
//    bindkeys-file "/etc/named.iscdlv.key";

//    managed-keys-directory "/var/named/dynamic";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

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

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

二、編輯/etc/named.rfc1912.zones文件,在最后添加如下兩項

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

......省略......
zone "iamyanglei.com" IN {                       #正向解析
    type master;                                 #類型為主DNS
    file "iamyanglei.com.zone";                  #正向解析文件位置
};

zone "1.168.192.in-addr.arpa" IN {               #反向解析
    type master;                                 #類型為主DNS
    file "192.168.1.zone";                       #反向解析文件位置
};

三、在/var/named/目錄中添加正向解析文件iamyanglei.com.zone

[root@ns1 named]# vim iamyanglei.com.zone

$TTL 86440
@        IN        SOA        ns1.iamyanglei.com.    admin.iamyanglei.com.    (   #SOA字段
                        2016051101              #版本號,同步一次+1
                        1H                      #更新時間
                        2M                      #更新失敗,重試更新時間
                        3D                      #更新失敗多長時間后此DNS失效時間
                        1D                      #解析不到請求不予回復的時間
)
        IN        NS        ns1.iamyanglei.com.     #域名服務器
        IN        MX    10    mx1.iamyanglei.com.     #定義郵件服務器,10指優先級
ns1        IN        A        192.168.1.104           #ns1域名服務器的IP地址
mx1        IN        A        192.168.1.111           #mx1郵件服務器的IP地址
www        IN        A        192.168.1.121           #www.iamyanglei.com的IP地址
cname        IN        CNAME    www                 #別名

檢查語法錯誤

[root@ns1 named]# named-checkconf
[root@ns1 named]# named-checkzone "iamyanglei.com.zone" /var/named/iamyanglei.com.zone 
zone iamyanglei.com.zone/IN: loaded serial 2016051101
OK

四、在/var/named/目錄中添加反向文件192.168.1.zone

[root@ns1 named]# vim 192.168.1.zone

$TTL 86440
@        IN        SOA        ns1.iamyanglei.com.    admin.iamyanglei.com.    (
                    2016051101
                    1H
                    2M
                    2D
                    1D
)
        IN        NS        ns1.iamyanglei.com.
104        IN        PTR        ns1.iamyanglei.com.
111        IN        PTR        mx1.iamyanglei.com.
121        IN        PTR        www.iamyanglei.com.

檢查語法錯誤

[root@ns1 named]# named-checkconf 
[root@ns1 named]# named-checkzone "192.168.1.zone" /var/named/192.168.1.zone 
zone 192.168.1.zone/IN: loaded serial 2016051101
OK

五、更改兩個自定義區域文件的權限為640和屬組為named

[root@ns1 named]# chmod 640 iamyanglei.com.zone 192.168.1.zone 
[root@ns1 named]# chown :named iamyanglei.com.zone 
[root@ns1 named]# chown :named 192.168.1.zone

六、重啟DNS,然后進行正向方向解析測試

[root@ns1 named]# service named restart
[root@ns1 named]# dig -t A www.iamyanglei.com @192.168.1.104        #正向解析

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.7 <<>> -t A www.iamyanglei.com @192.168.1.104
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12805
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;www.iamyanglei.com.        IN    A

;; ANSWER SECTION:
www.iamyanglei.com.    86440    IN    A    192.168.1.121

;; AUTHORITY SECTION:
iamyanglei.com.        86440    IN    NS    ns1.iamyanglei.com.

;; ADDITIONAL SECTION:
ns1.iamyanglei.com.    86440    IN    A    192.168.1.104

;; Query time: 0 msec
;; SERVER: 192.168.1.104#53(192.168.1.104)
;; WHEN: Thu May 12 04:48:38 2016
;; MSG SIZE  rcvd: 86

[root@ns1 named]# dig -x 192.168.1.104 @192.168.1.104        #反向解析

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.7 <<>> -x 192.168.1.104 @192.168.1.104
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37907
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;104.1.168.192.in-addr.arpa.    IN    PTR

;; ANSWER SECTION:
104.1.168.192.in-addr.arpa. 86440 IN    PTR    ns1.iamyanglei.com.

;; AUTHORITY SECTION:
1.168.192.in-addr.arpa.    86440    IN    NS    ns1.iamyanglei.com.

;; ADDITIONAL SECTION:
ns1.iamyanglei.com.    86440    IN    A    192.168.1.104

;; Query time: 0 msec
;; SERVER: 192.168.1.104#53(192.168.1.104)
;; WHEN: Thu May 12 04:51:18 2016
;; MSG SIZE  rcvd: 106

從DNS的配置

一、從服務器的/etc/named.conf文件配置和主DNS一樣。
二、編輯區域文件/etc/named.rfc1912.zones,在后面添加正反解析

zone "iamyanglei.com" IN {                  #正向解析
    type slave;                             #類型從DNS
    master { 192.168.1.104; };              #主DNS的IP地址
    file "slaves/iamyanglei.com.zone";      #iamyanglei.com.zone拷貝到slaves目錄下
};

zone "1.168.192.in-addr.arpa" IN {          #反向解析
    type slave;                             #類型從DNS
    master { 192.168.1.104; };              #主DNS的IP地址
    file "slaves/192.168.1.zone";           #192.168.1.in-addr.arpa拷貝到slaves目錄下
};

三、重啟DNS,查看/var/named/slaves目錄,會出現192.168.1.zoniamyanglei.com.zone兩個文件

[root@ns2 ~]# service named restart
Stopping named:                                            [  OK  ]
Starting named:                                            [  OK  ]
[root@ns2 ~]# ls /var/named/slaves/
192.168.1.zone  iamyanglei.com.zone

四、測試正向解析

[root@ns2 ~]# dig -t NS iamyanglei.com @192.168.1.104

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.7 <<>> -t NS iamyanglei.com @192.168.1.104
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46687
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 2

;; QUESTION SECTION:
;iamyanglei.com.            IN    NS

;; ANSWER SECTION:
iamyanglei.com.        86440    IN    NS    ns2.iamyanglei.com.
iamyanglei.com.        86440    IN    NS    ns1.iamyanglei.com.

;; ADDITIONAL SECTION:
ns1.iamyanglei.com.    86440    IN    A    192.168.1.104
ns2.iamyanglei.com.    86440    IN    A    192.168.1.106

;; Query time: 1 msec
;; SERVER: 192.168.1.104#53(192.168.1.104)
;; WHEN: Thu May 12 05:08:38 2016
;; MSG SIZE  rcvd: 100

主從同步

在主DNS的/var/named/iamyanglei.com.zone中添加一條A記錄

[root@ns1 named]# cat iamyanglei.com.zone 
$TTL 86440
@        IN        SOA        ns1.iamyanglei.com.    admin.iamyanglei.com.    (
                        2016051102          #版本號+1
                        1H
                        2M
                        3D
                        1D
)
        IN        NS        ns1.iamyanglei.com.
        IN        NS        ns2.iamyanglei.com.
        IN        MX    10    mx1.iamyanglei.com.
ns1        IN        A        192.168.1.104
ns2        IN        A        192.168.1.106
mx1        IN        A        192.168.1.111
www        IN        A        192.168.1.121
cname    IN        CNAME    www
img        IN        A        192.168.1.104       #添加的A記錄

主DNS重讀配置文件

[root@ns1 named]# service named reload
Reloading named:                                           [  OK  ]

到從DNS上查看是否同步復制過來

[root@ns2 ~]# cat /var/named/slaves/iamyanglei.com.zone 
$ORIGIN .
$TTL 86440    ; 1 day 40 seconds
iamyanglei.com        IN SOA    ns1.iamyanglei.com. admin.iamyanglei.com. (
                2016051102 ; serial             #版本號跟隨主DNS
                3600       ; refresh (1 hour)
                120        ; retry (2 minutes)
                259200     ; expire (3 days)
                86400      ; minimum (1 day)
                )
            NS    ns1.iamyanglei.com.
            NS    ns2.iamyanglei.com.
            MX    10 mx1.iamyanglei.com.
$ORIGIN iamyanglei.com.
cname            CNAME    www
img            A    192.168.1.104                   #新的A記錄
mx1            A    192.168.1.111
ns1            A    192.168.1.104
ns2            A    192.168.1.106
www            A    192.168.1.121

原創文章,作者:黑白子,如若轉載,請注明出處:http://www.www58058.com/16152

(0)
黑白子黑白子
上一篇 2016-05-28 16:11
下一篇 2016-05-28

相關推薦

  • linux進程管理

    linux系統進程查看及管理工具 對于服務器來說重要的IO 設備磁盤網絡 pstree,ps,pidof,pgrep,top,htop,glances,pmap,vmstat,dstat,kill,pkill,job,bg,fg,nohup,nice,renice,killall….. pstree命令: pstree-display …

    Linux干貨 2016-09-09
  • lvs

    Lvs 一、lvs集群的類型:4類工作模式 1.1、lvs-nat 特點:通過將請求報文中的目標地址和目標端口修改為挑選出的某RS的RIP和PORT實現轉發。 客戶端訪問lvs集群服務,此時報文的源地址為cip,目標地址為vip,通過lvs進行dnat轉發后端服務器主機,此時,報文的源地址為cip,目標地址為rip;后端主機響應時,報文源地址為rip,目標地…

    Linux干貨 2016-10-30
  • Linux基本命令總結

    一.目錄相關的命令 mkdir rmdir tree cd ls pwd   二.文件相關命令 less cat more tac rev stat head tail cut grep cp mv rm touch rename   三.分析文本的工具 wc sort uniq cut    

    2017-09-10
  • 馬哥教育網絡班N22期+第五周課程練習

    1、顯示當前系統上root、fedora或user1用戶的默認shell; ~]# grep -E "^(root|user1|fedora)" /etc/passwd | awk -F: '{ print $1 $7 }' root/bin/bash user1/bin/bash fedora/bin/bash 2、…

    Linux干貨 2016-10-17
  • 網絡N23期第四周grep

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 [root@localhost ~]# cp -R /etc/skel /home/tuser1 && chmod g-r,o-r /home/tuser1 [root@localhost ~]# ls -l…

    系統運維 2016-12-05
  • 磁盤配額

        磁盤配額可以限制指定賬戶能夠使用的磁盤空間,這樣可以避免因某個用戶的過度使用磁盤空間造成其他用戶無法正常工作甚至影響系統運行。在服務器管理中此功能非常重要,但對單機用戶來說意義不大。 配置配額系統:     綜述:     &nbs…

    Linux干貨 2016-09-06

評論列表(6條)

  • stanley
    stanley 2016-05-29 15:28

    已置頂

  • wangquan8628
    wangquan8628 2016-06-13 14:18

    寫的不錯

    • Deandre
      Deandre 2017-04-24 05:07

      @wangquan8628Infidelity sttitsaics?Can someone provide a link to a REPUTABLE website showing the infidelity statistics of men vs. that of women. I’m writing a college paper and need a reputable survey. I need to know what percentage of men cheat in their marriage compared to how many women do the same.Reputable website + the right statistics WILL get best answer.Thanks

  • sky138170
    sky138170 2016-06-13 14:22

    對實驗很有幫助,再加上原理就更好了

  • sky138170
    sky138170 2016-06-13 14:35

    0801+簡單明了,通俗易懂,解釋很詳細!對我幫助很大!不錯!不錯

    • xxrenzhe
      xxrenzhe 2016-06-13 14:58

      @sky138170回復在原始博客下是無效評論哦,要評論在《馬哥教育首屆IT技術博客大賽–復審階段》帖子下才有效哦!

欧美性久久久久