centos7下搭建DNS服務器介紹

一:項目環境:

主機 角色 IP地址 功能
dns.kevin.com DNS服務器 192.168.100.10 提供域名解析
win.kevin.com DNS客戶端 192.168.100.20 測試域名解析是否正常
www.kevin.com WEB服務器 192.168.100.30 站點服務器
blog.kevin.com FTP服務器 192.168.100.40 博客服務器

二:dns服務器配置

i:配置正向解析:

基礎環境配置

[root@kevin ~]# hostname
kevin
[root@kevin ~]# getenforce
Disabled
[root@kevin ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)
[root@kevin ~]#

2.安裝DNS 服務器軟件,並啟動

[root@kevin ~]# yum install -y bind
 
[root@kevin ~]# systemctl start named

3.主配置文件/etc/named.conf,DNS服務的全局配置文件。

為瞭安全,在修改之前先備份該文件。該文件的屬組比較特殊,屬於named組

[root@kevin ~]# cp -p /etc/named.conf /etc/named.conf.bak

4.修改主配置文件named.conf:13行:監聽地址         21行:允許利用本服務器查詢的客戶機地址

均修改為any

[root@kevin ~]# vi /etc/named.conf
 
 
listen-on port 53 { any; };
allow-query     { any; };

5.修改區域配置文件/etc/named.rfc1912.zones,該文件用於說明哪個區域的數據存放在哪個文件裡。 仿照該文件已有內容的格式,在文件末尾新增一個正向查找區域kevin.com,類型是主要區域,數據是kevin.com.zone;

[root@kevin ~]# vi /etc/named.rfc1912.zones
 
zone "kevin.com" IN {
        type master;
        file "kevin.com.zone";
        allow-update { none; };
};

 6.根據第5步,添加正向區域數據文件。數據文件無需新建,可以根據/var/named 目錄下提供的文件named.localhost進行復制命名為kevin.com.zone並修改。 將kevin.com.zone內容修改為:

[root@kevin ~]# cp -p /var/named/named.localhost /var/named/kevin.com.zone
[root@kevin ~]# vi /var/named/kevin.com.zone
 
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       192.168.100.10
dns     IN   A  192.168.100.10
win     IN   A  192.168.100.20
www     IN   A  192.168.100.30
blog    IN   A  192.168.100.40
        AAAA    ::1

7.重新加載DNS服務的配置文件

[root@kevin ~]# rndc reload
server reload successful
[root@kevin ~]#

若是加載失敗,可使用named-checkconf /etc/named.conf和named-checkzone kevin.com /var/named/kevin.com.zone檢查是何處出瞭錯誤

[root@kevin ~]# named-checkconf /etc/named.conf
[root@kevin ~]# named-checkzone kevin.com /var/named/kevin.com.zone
zone kevin.com/IN: loaded serial 0
OK

8.完成後,可首先在DNS服務器本地進行測試,修改/etc/resolv.conf,將DNS服務器的地址(即服務器本機地址)寫入:

(bind-utils)是DNS服務器的輔助工具包,比如dig主要用來從 DNS 域名服務器查詢主機地址信息,可以用來測試域名系統工作是否正常。

或者nslookup等工具

[root@kevin ~]# vi /etc/resolv.conf
 
# Generated by NetworkManager
nameserver 8.8.8.8
[root@kevin ~]# yum install bind-utils
[root@kevin ~]# dig www.kevin.com @192.168.100.10
 
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.8 <<>> www.kevin.com @192.168.100.10
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62498
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
 
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.kevin.com.                 IN      A
 
;; ANSWER SECTION:
www.kevin.com.          86400   IN      A       192.168.100.30
 
;; AUTHORITY SECTION:
kevin.com.              86400   IN      NS      kevin.com.
 
;; ADDITIONAL SECTION:
kevin.com.              86400   IN      A       192.168.100.10
 
;; Query time: 0 msec
;; SERVER: 192.168.100.10#53(192.168.100.10)
;; WHEN: 六 12月 18 14:48:23 CST 2021
;; MSG SIZE  rcvd: 88
 

9:本地測試訪問正常,在其他客戶機上將網卡的首選 DNS 服務器地址調整為上述表格裡設置的DNS服務器地址,再查詢相關的記錄:

C:\Users\Kevin>nslookup
默認服務器:  UnKnown
Address:  192.168.100.10
 
> www.kevin.com
服務器:  UnKnown
Address:  192.168.100.10
 
名稱:    www.kevin.com
Address:  192.168.100.30
 
> blog.kevin.com
服務器:  UnKnown
Address:  192.168.100.10
 
名稱:    blog.kevin.com
Address:  192.168.100.40
 
>

目前實現瞭可以通過主機名查詢主機對應的 IP 地址,但是通過 IP 地址查詢對應的主機名還不能完成,因為沒有配置反向查找區域。

 ii :配置反向解析

1.主要思路同正向查找區域配置。主配置文件已無需修改。 修改輔助配置文件,在文末新增一個反向查找區域,註意反向查找區域名稱的命名格式:

[root@kevin ~]# vi /etc/named.rfc1912.zones
 
zone "100.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.100.arpa";
        allow-update { none; };
};

2.復制反向解析文件模板進行修改:

[root@kevin ~]# cp -p /var/named/named.loopback /var/named/192.168.100.arpa
[root@kevin ~]# vi /var/named/192.168.100.arpa
 
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.kevin.com.
dns     IN   A          192.168.100.10
10      IN   PTR          dns.kevin.com.
20      IN   PTR          win.kevin.com.
30      IN   PTR          www.kevin.com.
40      IN   PTR          blog.kevin.com.

重載配置文件:

[root@kevin ~]# systemctl restart named
[root@kevin ~]# rndc reload
server reload successful

3:在客戶機測試反向解析是否正確:

C:\Users\Kevin>nslookup
默認服務器:  dns.kevin.com
Address:  192.168.100.10
 
> 192.168.100.30
服務器:  dns.kevin.com
Address:  192.168.100.10
 
名稱:    www.kevin.com
Address:  192.168.100.30
 
> 192.168.100.40
服務器:  dns.kevin.com
Address:  192.168.100.10
 
名稱:    blog.kevin.com
Address:  192.168.100.40
 
>

三:配置主從服務器:

通過前面的操作,DNS主服務器已經配置完畢並能正常工作。啟動第2臺CentOS主機,將其配置為第1臺DNS服務器的從服務器,使得第1臺主機上DNS數據能通過網絡傳輸到第2臺。

1:編輯/etc/named.conf文件,修改監聽IP地址為any

vi /etc/named.conf
 
listen-on port 53 { any; };
allow-query     { any; };

2:編輯/etc/named.rfc1912.zones,建立或從第1臺主機復制所需要的正向/反向查找區域文件(從服務器的區域解析庫文件應當是從主服務器加載過來的,所以無需創建區域解析庫文件。),並修改內容,將type類型改為slave

[root@likevin ~]# vi /etc/named.rfc1912.zones
 
zone "kevin.com" IN {
        type slave;                            //類型
        masters {192.168.100.10;};             //主機
        file "slaves/kevin.com.zone";          //配置文件存放地點和名稱
        masterfile-format text;                //文檔類型
};
 
zone "100.168.192.in-addr.arpa" IN {
        type slave;
        masters {192.168.100.10;};
        file "slaves/192.168.100.arpa";
        masterfile-format text;
};

3:重啟named服務,檢查下slaves文件夾下有沒有從主機傳送來的文件

[root@likevin ~]# systemctl restart named
[root@likevin ~]# rndc reload
server reload successful
[root@likevin ~]# ll /var/named/slaves/
總用量 8
-rw-r--r-- 1 named named 517 12月 18 16:14 192.168.100.arpa
-rw-r--r-- 1 named named 349 12月 18 16:14 kevin.com.zone
[root@likevin ~]# vi /var/named/slaves/192.168.100.arpa
 
$ORIGIN .
$TTL 86400      ; 1 day
100.168.192.in-addr.arpa IN SOA 100.168.192.in-addr.arpa. rname.invalid. (
                                0          ; serial
                                86400      ; refresh (1 day)
                                3600       ; retry (1 hour)
                                604800     ; expire (1 week)
                                10800      ; minimum (3 hours)
                                )
                        NS      dns.kevin.com.
$ORIGIN 100.168.192.in-addr.arpa.
10                      PTR     dns.kevin.com.
20                      PTR     win.kevin.com.
30                      PTR     www.kevin.com.
40                      PTR     blog.kevin.com.
dns                     A       192.168.100.10
[root@likevin ~]# vi /var/named/slaves/kevin.com.zone
 
$ORIGIN .
$TTL 86400      ; 1 day
kevin.com               IN SOA  kevin.com. rname.invalid. (
                                0          ; serial
                                86400      ; refresh (1 day)
                                3600       ; retry (1 hour)
                                604800     ; expire (1 week)
                                10800      ; minimum (3 hours)
                                )
                        NS      kevin.com.
                        A       192.168.100.10
$ORIGIN kevin.com.
blog                    A       192.168.100.40
dns                     A       192.168.100.10
win                     A       192.168.100.20
www                     A       192.168.100.30

到此這篇關於centos7下搭建DNS服務器介紹的文章就介紹到這瞭,更多相關centos7搭建DNS服務器內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: