|  | 
 
 | 當linux sever架好之後開始要對外正式工作了, 
 要在internet茫茫網海中找到自己的主機,需要去註冊一個網域名稱,
 
 以本人為例,就註冊了一個bell.idv.tw的網址,所以要來設定DNS server讓人能找到我的家。
 
 1. 安裝 DNS Server 軟體 bind
 
 
 2. 修改設定檔
 
 編輯 /etc/named.conf
 
 複製代碼options {
#       listen-on port 53 { 127.0.0.1;};                      註掉
#       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; };                      改成any,允許任何詢問需求
        allow-transfer  { none; };                     不允許轉移
        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";
};
zone    "bell.idv.tw" IN {
#hostname是你註冊的網域名稱,bell.idv.tw是我的網域,我就填入我自己的 hostname 即可
 
 type master;
 file "db.bell";
 
 #指定正解設定檔檔名,後面會用到,檔名格式只要能正確對應即可
 
 allow-update { none; };
 
 #不允許遠端更新本站DNS資料
 
 
 };
 zone    "0.0.10.in-addr.arpa" IN {
 type master;
 file "db.0.0.10";
 
 #指定反解設定檔檔名,後面會用到,檔名格式只要能正確對應即可
 
 allow-update { none; };
 
 #不允許遠端更新本站DNS資料
 
 
 };
 
 #以上新增正解與反解的設定
 
 include "/etc/named.rfc1912.zones";
 include "/etc/named.root.key";
 
 3. 建立正解和反解的設定檔
 
 vim /var/named/db.bell <-- 檔案名稱必須與上面的 file "db.host"; 雙引號中的檔案名稱一樣
 
 
 複製代碼$TTL 86400
@       IN      SOA     dns.bell.idv.tw.   bell.bell.idv.tw. (
# 第一個hostname就是你的網域名稱,我就填入我的bell.idv.tw即可。
#admin.hostname事實上是指admin@hostname,即管理者的email的寫法,可換成你的管理者帳號,例如bell等。
                        2013111409      ; serial
                        86400           ; refresh
                        1800            ; retry
                        1728000         ; expire
                        1200            ; Negative Caching
                        )
      IN        NS     dns.bell.idv.tw.
dns             IN      A       122.116.169.24 (IP address)
#這裡是填你的DNS主機實體IP,dns可以替換成你喜歡的名稱
;@              IN      MX      0       mail.bell.idv.tw. (mail server名稱設定,需要與postfix中設定符合)
@              IN      MX   10       bell.idv.tw. (可設定多個mail server名稱,前面號碼需加以區隔順序)
@              IN      MX       20 <a href="www.bell.idv.tw." target="_blank">www.bell.idv.tw.</a>
test.com.       IN      A       122.116.169.24 (IP address)
;
;
localhost               IN      A       127.0.0.1
loopback                IN      CNAME   localhost
www            IN      A       122.116.169.24 (IP address)
m2k             IN      A       122.116.169.24 (IP address)
#以上是將主機名稱與IP做對應,看你的DNS要管多少ip與主機就填入,
同IP可以綁多個主機名稱,我只申請一個固定IP所以所有主機全部設成同一個IP
ftp             IN      CNAME   www
bbs             IN      CNAME   ms1
#以上是別名設定範例,也可以不設。
 
 修改好後存檔離開。
 
 設定反解:
 
 
 複製代碼$TTL 86400
@       IN      SOA     dns.bell.idv.tw.   bell.bell.idv.tw. (
                        2013111409      ; serial
                        28800           ; refresh
                        14400           ; retry
                        720000          ; expire
                        86400           ; Negative Caching
                        )
@     IN        NS      localhost.localdomain.
;
100     IN      PTR       bell.idv.tw.
100     IN      PTR      <a href="www.bell.idv.tw." target="_blank">www.bell.idv.tw.</a>
修改好後存檔離開。
 
 4. 改變檔案擁有者
 
 複製代碼chown named:named /var/named/db.*
 5. 檢查設定檔
 
 複製代碼named-checkconf /etc/named.conf
如果有錯誤訊息就回去修改設定檔,等都測試過後沒問題即可啟動nmed了。
 
 4. 啟動 DNS Server
 
 
 5. 設定開機時啟動 DNS Server
 
 
 
 測試 DNS Server
 
 如果有對外要開啟防火牆
 
 Get the active zones:查詢ZONE
 
 複製代碼firewall-cmd --get-active-zones
Allow DNS quesies on the zone called external.允許外部網路查詢
 
 複製代碼firewall-cmd --zone=external --add-service=dns
Test if dns queries are now working.
 If it is ok, let’s make the rule permanent upon reboots.開機時啟動規則(一定要下,不然會被清掉)
 
 複製代碼firewall-cmd --runtime-to-permanent
查詢是否有加入ZONE
 
 複製代碼 firewall-cmd --list-all --zone=external
參考文章https://ask.fedoraproject.org/t/named-and-firewalld/4515/2
 https://luyaku.pixnet.net/blog/p ... 7%E8%A8%AD%E5%AE%9A
 
 | 
 |