DNS

這里都以我本機的實驗為例

正向解析:就是從主機名到IP的解析過程

先在工作目錄/var/named/創建一個區域數據文件

zcylinux.io域為例:vim
/var/named/zcylinux.io.zone

$TTL  600     #設置全局變量TTL的值為600s

zcylinux.io.  IN    SOA   zcylinux.io.  nsadmin.zcylinux.io.   (

        2017052801

        1H

        1M

        1W

        1D )

 zcylinux.io.   IN    NS  dns.zcylinux.io. 表示zcylinux.io域中的DNS服務器是哪個主機

dns.zcylinux.io.  IN    A   172.16.250.31        ns服務器的正向解析記錄

www.zcylinux.io.  IN    A   172.16.0.1  www.zcylinux.io.的正向解析記錄

web             IN   CNAME    www       表示還有一個別名是web

每個完整的域名之后要加上點“.”,這個點表示完整的主機名FQDN,如果只寫了zcylinux.io,表示zcylinux.io.zcylinux.io.

保存后,修改文件的屬組:chown  :named zcylinux.io.zone

權限:chmod o= zcylinux.io.zone

在主配置文件/etc/named.conf或配置文件輔助文件/etc/named.rfc1912.zones中添加:

zone “zcylinux.io ” {

   type master {master|slave|hint|forward};

   file “zcylinux.io”;

};

/etc/named/目錄下:

  檢查語法錯誤:named-checkconf

      named-checkzone zcylinux.io zcylinux.io.zone

啟動named服務:systemctl start named

若是服務已經啟動:rndc reload systemctl reload named.service 來重新加載配置文件和區域數據文件

 

反向解析:就是從IP到主機名的過程

172.16這個網段的區域為例

    在/etc/named/目錄下編輯區域數據文件

    vim 172.16.zone

     $TTL 600

 

@    IN   SOA  zcylinux.io. nsadmin.zcylinux.io. (

    2017052801

    1H

    1M

    1W

     1D )

@    IN    NS    dns.zcylinux.io.

31.250 IN    PTR    dns.zcylinux.io.

1.0  IN    PTR    www.zcylinux.io.

@表示在zone中定義的zone_name

這里在左側只用添加ip地址的最后兩段,因為我們在之前已經定義好域了16.172.in-addr.arpa,因此在這里它會自動將其補全

定義區域:   

  在主配置文件或配置文件輔助文件中實現:

   zone “16.172.in-addr.arpa ”{

       type master {master|slave|hint|forward};

       file “172.16.zone”;

 };

注意:反向解析區域的名字反寫的網段地址.in-addr.arpa

檢查語法錯誤(工作目錄/etc/named/):named-checkconf

       named-checkzone  172.16.io  172.16.io.zone

啟動named服務:systemctl start named

若是服務已經啟動:rndc reload systemctl reload named.service 來重新加載配置文件和區域數據文件

反向解析與正向解析是兩個獨立的邏輯,不會互相干擾

/從:記得防火墻 iptables -F

     在主服務器的bind的主配置文件/etc/named.conf的每個zone中可以定義設置哪些從服務器來同步信息;主服務器更改信息時,要修改序列號(遞增),這樣從服務器才會同步信息。

zone “zcylinux.io” IN {

    type master;

     file “zcylinux.io.zone”;

    allow-transfer { 172.16.251.109; }; 多個ip地址時以分號隔開

};

在從服務器上只用修改bind主配置文件或輔助配置文件中的zone即可:

zone “zcylinux.io” IN {

    type slave;

    file “slaves/zcylinux.io.zone”; 將同步后的文件放置的位置,這里是相對路徑,實際路徑為/var/named/slaves/zcylinux.io.zone

    masters { 172.16.250.31; }; 主服務器的地址

};

zone “16.172.in-addr.arpa” IN {

    type slave;

    file “slaves/172.16.io.zone”;

    masters { 172.16.250.31; };

};

檢查語法錯誤(工作目錄/etc/named/):named-checkconf

重新加載:rndc reload

     通過觀察日志文件 tail
/var/log/messages
查看是否同步成功,成功會在/var/named/slaves/目錄下生成相應的文件

 

子域:

  當我們將DNS解析請求發給我們所指定的DNS服務器后,它會一級一級的去查找域名去解析,在這里每一級都是一個域,而且每個域都是上級的子域;每一級域只負責解析該域名,而對于下一級域名的解析只告訴所對應的DNS服務器地址,具體的解析交給下級來完成。

在上級域名加入一條記錄來指定子域

 

$TTL  600

 

zcylinux.io.    IN      SOA     zcylinux.io.    nsadmin.zcylinux.io.    (

                2017052702

                1H

                2M

                3W

                4D )

                IN      NS      dns.zcylinux.io.

dns.zcylinux.io. IN     A       172.16.250.31

www.zcylinux.io.  IN    A       172.16.0.1

web             IN      CNAME   www

 

ops.zcylinux.io.    IN   NS   dns.ops.zcylinux.io. //指定分割子域和負責人

dns.ops        IN   A    172.16.251.57  //負責人對應的識別信息

 

配置子域:在子域服務器上

vim /etc/named.rfc1912.zones

     zone
“ops.zcylinux.io” IN
  {

        type master;

        file “ops.zcylinux.io.zone”;

編輯正向解析文件:

vim ops.zcylinux.io.zone

$TTL    1D

 

@       IN      SOA     ops.zcylinux.io.                nsadmin.ops.zcylinux.io.        (

        2017052701

        1H

        1M

        1W

        1D)

@       IN      NS      dns.ops.zcylinux.io.

dns     IN      A       172.16.251.57

www     IN      A       172.16.253.69


區域轉發:

一般來說子域不知道父域的位置,無法解析父域。而要想能解析父域,我們需要用到轉發:

vim /etc/named.rfc1912.zones

zone
“zcylinux.io” IN {

        type forward;

        forward only|first;  //前者代表只去詢問父域,不論能否解析;后者是先轉給父域,不行再去找根。

        forwarders { 172.16.250.31;
172.16.251.109; };

};

 

 

全局轉發

     vim /etc/named.conf

         options {

… …

forward {only|first};

forwarders { SERVER_IP; };

.. …

    };

  

基本安全控制:

       acl 訪問控制列表:把一個或多個地址歸并一個命名的集合,隨后通過此名稱即可對此集全內的所有主機實現統一調用;

vim /etc/named.conf

     acl test {

        172.16.0.200;

        172.16.250.31;

};

設置區域查詢控制:

     vim /etc/named.rfc1912.zones

zone “zcylinux.io” IN {

        type master;

        file “zcylinux.io.zone”;

        allow-query { test; };

};

allow-transfer {}; 允許向哪些主機做區域傳送;默認為向所有主機;應該配置僅允許從服務器;

vim /etc/named.conf

     acl slavesrvs {

        172.16.251.109;

        127.0.0.0/8;

};

vim /etc/named.rfc1912.zones

     zone “zcylinux.io” IN {

        type master;

        file “zcylinux.io.zone”;

        //allow-query { test; };

        allow-transfer { slavesrvs; };

};

allow-recursion {}; 允許哪此主機向當前DNS服務器發起遞歸查詢請求;

vim /etc/named.conf

········

acl localnet {

        172.16.0.0/16;

        127.0.0.0/8;

};

········

allow-recursion { localnet; };

········

allow-update {}; DDNS,允許動態更新區域數據庫文件中內容

vim /etc/named.rfc1912.zones

     zone
“zcylinux.io” IN {

        type master;

        file “zcylinux.io.zone”;

        allow-update { none; };

};

測試工具:在測試時注意防火墻

     dig, host, nslookup

dig命令:

     dig [-t RR_TYPE] name [@SERVER] [query options]

     用于測試dns系統,因此其不會查詢hosts文件;

查詢選項:

     +[no]trace 跟蹤解析過程;

     +[no]recurse 進行遞歸解析;

注意:反向解析測試

     dig -x IP

模擬完全區域傳送:

     dig -t axfr DOMAIN [@server]

host命令:

     host [-t RR_TYPE] name SERVER_IP

nslookup命令

     nslookup [-options] [name] [server]

交互式模式:

     nslookup>

     server IP 以指定的IPDNS服務器進行查詢;

     set q=RR_TYPE:要查詢的資源記錄類型;

     name:要查詢的名稱;

rndc命令:named服務控制命令

     rndc status

     rndc flush

     rndc reload

原創文章,作者:Immortals、zcy,如若轉載,請注明出處:http://www.www58058.com/77185

(0)
Immortals、zcyImmortals、zcy
上一篇 2017-05-30 20:31
下一篇 2017-05-30 21:47

相關推薦

  • 計算機網絡基礎

    計算機網絡 指使用一定的通信線路,把地理位置上相對分散的、具有獨立自制能力的計算機系統等連接起來,在一定通信協議的約束與控制下,實現數據交換的目的! 計算機網絡體系結構 計算機網絡體系結構是一個分層次的模塊式結構,每一層完成一個功能,這種流式化的結構能提高生產力!網絡分層的好處 促進了標準化 各層次相互獨立,技術升級和擴展靈活性好 便于方案的設計 開放系統互…

    Linux干貨 2016-09-06
  • 第八周網絡基礎以及腳本聯系

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。 ![](http://i.imgur.com/5u2IMF8.png) 三層交換機:將路由技術和交換技術合二為一的技術,當對第一次數據流進行路由后,會產生一個MAC地址與IP地址相對應的映射表,當同樣的數據流再次通過時,將根據映射表進行數據交換而不在進行路由。 路由器:工作于網絡…

    Linux干貨 2017-03-30
  • 2016年8月11號學習博客

    shell腳本編程 shell腳本是包含一些命令或聲明,并符合一定格式的文本文件 shell腳本的用途有: 自動化常用命令 執行系統管理和故障排除 創建簡單的應用程序 處理文本或文件 命令查詢過程:別名–>內部變量–>hash–>$PATH ~]#bash -n 檢測腳本語法錯誤 ~]#bash -x 順…

    Linux干貨 2016-08-15
  • grep與正則表達式

    grep與正則表達式 grep與正則表達式 grep 正則表達式 grep 使用語法:grep [-abcEFGhHilLnqrsvVwxy][-C<顯示列數>][-e<范本樣式>][-f<范本文件>][范本樣式][文件或目錄…]  功能說明:查找指定文件或標準輸入里符合條件的字符串 常用選項 -a…

    Linux干貨 2016-11-05
  • 磁盤管理

    一、磁盤結構     設備文件         I/O Ports: I/O設備地址         一切皆文件:    &nbs…

    Linux干貨 2016-09-01
  • grep、find練習

    1.顯示當前系統上root,fedora或user1用戶的默認shell [root@study ~]# cat /etc/passwd|grep -E "^(root|fedora|user1)"|cut -d: -f7 /bin/bash /bin/bash /bi…

    Linux干貨 2016-11-27
欧美性久久久久