1. 程式人生 > >搭建一個簡易的DNS服務

搭建一個簡易的DNS服務

dns 簡易 服務器

今天給大家介紹如何搭建一個DNS服務,以下圖為例,當一個小區客戶端去訪問www.jiabing.com時,DNS需要如何去搭建。

技術分享

搭建前需要先把每臺服務器的防火墻和SELINUX關閉。

關閉防火墻:iptables -F

查看SELINUX是否關閉:getenforce 沒有關閉需要關閉:setenforce 0

除了客戶端,別的都需要安裝bind包:yum install bind

啟動服務:service named start

rpm - -import RPM-GPG-KEY-... 導出公鑰(新安裝的系統需要執行,導出公鑰後就可以安裝bind包了)

一、先配置web服務器(因為每配置一個服務器都需要去測試一下,容易排錯)

/var/www/html/下創建一個index.html文件

vim index.html內容如下

技術分享

順便再把httpd服務啟動起來:service httpd start

此時web服務器已經配好

二、配置主DNS服務器

配置DNS主配置文件/etc/named.conf

vim /etc/named.conf內容如下:

技術分享

53端口綁定到本地地址

linsten-on port 53 { localhost; };

允許所有人通過53端口連接本機

allow-query { any; };

只允許172.17.166.166從本機抓取數據庫

allwo-transfer { 172.17.166.166;};

配置/etc/named.rfc1912.zones文件,添加一個域

vim /etc/named.rfc1912.zones內容如下:

技術分享

/var/named/下創建一個與/etc/named.rfc1912.zones文件裏面配置域名字一樣的文件後面加個.zone

vim /var/named/jiabing.com.zone內容如下:

技術分享

前面是SOA記錄,

後面需要配置兩個NS記錄,對應的兩個DNS服務器地址,一個指向自己172.17.177.177,另一個只想從DNS服務器172.17.166.166

最後配置域名地址並設置一個別名,ip地址指向web服務器

此時主DNS已經配置完畢,需要用dig www.jiabing.com @172.17.177.177去測試一下自己。(如果測試不成功的話,需要把DNS指向自己,因為還沒有配置根DNS

三、配置從DNS服務器(當主DNS宕機的時候,從DNS可以工作)

同上需要配置主配置文件/etc/named.conf

vim /etc/named.conf內容如下:

技術分享

53端口綁定到本地地址

linsten-on port 53 { localhost; };

允許所有人通過53端口連接本機

allow-query { any; };

不允許任何人截取DNS數據庫

allow-transfer { none;};

從服務器配置只需要在/etc/named.rfc1912.zones裏面加個條件就行

vim /etc/named.rfc1912.zones內容如下:

技術分享

指定類型

type slave

指定主DNSip地址

masters { 172.17.177.177;};

文件自動生成路徑

file slaves/jiabing.com.zone

此時從DNS已經配置成功

rdnc reload同步一下就直接生成/var/named/slaves/jiabing.com.zone文件

同時dig www.jiabing.com @172.17.166.166測試一下看能否訪問

四、配置comDNS服務器

配置DNS主配置文件/etc/named.conf

vim /etc/named.conf內容如下:

技術分享

我們也可以把listen-on port 53 { 127.0.0.1; };allow-query { localhost;};註釋掉,那樣就所有IP地址都監聽53端口。

如果是轉發的DNS服務器需要更改dnssec-enable yesdnssec-validation yes換成dnssec-enable no dnssec-validation no

配置/etc/named.rfc1912.zones文件

技術分享

添加一個com域,類同於上面配置主DNSmagedu域一樣

/var/named/下需要配置一個com.zone域文件

vim /var/named/com.zone內容如下:

技術分享

前面是SOA記錄,類同於magedu.zone域。此時需要配置三個NS,一個dns1IP地址指向自己172.17.254.77,一個dns2的地址指向主DNS服務 器172.17.177.177,另一個dns3的地址指向從DNS服務器172.17.166.166

此時comDNS已經配置完畢

dig www.jiabing.com @172.17.254.77 測試一下是否能訪問

五、配置根DNS服務器

配置/etc/named.conf文件

vim /etc/named.conf內容如下:

技術分享

技術分享

此時根文件就是自己,所以要配置一個根域,(因為根域直接就在/etc/named.conf中,所以就不用去/etc/named.rfc1912.zones裏面更改了)

配置/var/named/root.zone

vim /var/named/root.zone內容如下:

技術分享

上面的SOA類同。需要有兩個NS記錄,一個dns1指向自己172.17.133.133,另一個指向子域com172.17.254.77

配置/var/named/named.ca文件(因為自己當根,所以只有一個根服務器)

vim /var/named/named.ca內容如下:

技術分享

並且這個文件需要給comDNS 主機DNS DNS 小區DNS,都需要更改/var/named/named.ca和根下的/var/named/named.ca一樣。

六、配置小區DNS服務器

只需要編輯/etc/named.conf文件

技術分享

配置內容同上

七、配置客戶端DNS

vim /etc/resolv.conf內容如下:

技術分享

DNS指向小區DNSIP地址

此時客戶端就能通過網頁訪問www.jiabing.com 了,到此一個DNS大框架也就配置成功。。

在以上實驗中如果哪一步測試失敗,失敗原因可能是一下幾種

1NXDOMAIN 不存在的域名

查看/var/named/下文件是否寫錯。

2REFUSED 拒絕訪問

查看網絡是否通

3no servers could be reached DNS不可到達

查看服務是否開啟

4SERVFAIL

可能是權限的問題,或者別的問題,需要檢查權限

5、檢查防火墻和SELINUX


搭建一個簡易的DNS服務