CentOS搭建DNS伺服器實錄
一、安裝軟體
常見DNS伺服器軟體有BIND、NSD、Unbound等等,而BIND是市場佔有率是最高的,後兩種是輕量級的快速DNS伺服器。我這裡使用的是BIND ,其他的類似。
在centos上切換到root用戶(以下所有操作均在root用戶),執行yum install bind dind-devel -y安裝軟體。
待安裝完畢進行配置。
二、配置
1.編輯配置/etc/named.conf
修改如下兩行(如下圖所示),
listen-on port53{127.0.0.1; };
#將127.0.0.1修改成本機實際IP或者any
allow-query { localhost; };
#將localhost該成any
修改後如下:
2. 配置域名解析文件
域名解析分正向區域和反向區域,正向區域是將域名解析為IP地址的過程,反向區域則是客戶機根據一台計算機的IP地址搜索它的域名。在大部分的DNS查詢中,客戶機一般執行正向區域解析。
正反向區域的配置,可以直接寫在/etc/named.conf中(不推薦),在/etc/named.conf最下方有兩句include語句,其中include "/etc/named.rfc1912.zones";就是用來配置正反向區域配置的文件,當然也可以自定義(自定義需要在/etc/named.conf中include),入下圖。
這裡我們使用默認的配置文件/etc/named.rfc1912.zones,執行
vim /etc/named.rfc1912.zones
編輯這個文件,加入(以下筆者以域名3jhx.cc為例):
zone "3jhx.cc" IN {
type master;
};
這個是正向解析區域,
反向區域如下,這裡沒有增加,
zone"1.168.192.in-addr.arpa."IN {
type master;
file"1.168.192.zone";
};
正反向解析區域文件都在/etc/named.conf的directory參數配置,默認是"/var/named"。
編輯正向區域文件,內容如下圖,其中:ns1、ns2為解析的兩個DNS域名,在我們自定義域名DNS伺服器的時候要用到。
;括弧內的第一個參數是序號,代表本配置文檔的新舊,序號越大,表示越新。每次修改本文檔後,都要將這個值改大。
;第二個參數是刷新頻率,表示slave隔多久會跟master比對一次配置檔案,單位為秒(在主從DNS架構中要用到)。
;第三個參數是失敗重新嘗試時間,單位為秒
;第四個參數是失效時間,單位為秒。
;第五個參數表示其它DNS伺服器能緩存negative answers的時間,單位為秒
以上七個參數可以按照圖中的寫法,亦可以直接寫成秒,兩種一樣。
;類型NS定義指定域的DNS伺服器主機名,這裡是:ns1.3jhx.cc和ns2.3jhx.cc
A記錄是域名與IP地址的映射關係,如果IP地址是IPV6,則A記錄是AAAA
配置完畢後,保存。
反向區域文件配置示例:
(圖片來源於網路)
3.重啟named服務
CentOS6.x 使用 service named restart重啟named服務,使用chkconfig named on讓服務開機啟動。
CentOS7.x 使用 systemctl restart named重啟named服務,使用systemctl enable named讓服務開機啟動。
4.配置防火牆
開放防火牆53埠,注意需要同時開放TCP和UDP的53埠,如果是ECS雲伺服器還需要開放安全組的TCP和UDP的53埠。
CentOS7.x 是:
[root@localhost~]#firewall-cmd --zone=public--add-port=53/tcp --permanent
[root@localhost~]#firewall-cmd --zone=public--add-port=53/udp --permanent
重啟防火牆以讓更改立刻生效:
[root@localhost~]#firewall-cmd –reload
可使用以下命令檢查配置是否成功:
[root@localhost~]#firewall-cmd --list-all
CentOS6.X是:
/sbin/iptables -I INPUT -p tcp --dport53-j ACCEPT
/sbin/iptables -I INPUT -pudp--dport 53-j ACCEPT
保存規則:
/etc/rc.d/init.d/iptables save
重啟防火牆以讓更改立刻生效:
service iptables restart
三、驗證
要驗證我們配置的dns是否正確,在客戶機計算機上將DNS伺服器地址手動修改成我們配置好的DNS伺服器地址,然後使用命令nslookup命令或者dig命令測試
Linux系統直接在終端輸入nslookup命令,windows在cmd命令行輸入nslookup命令
四、配置域名自定義DNS伺服器
為了是實驗真實性,這裡筆者使用真實域名實驗。
進入到域名管理控制台,筆者使用的是萬網,其他服務商類似。
自定義DNS 伺服器頁面創建兩個 DNS 伺服器ns1.3jhx.cc和ns2.3jhx.cc
創建完成後需要在我們的DNS伺服器解析NS和A記錄,上文中我們已經解析。
點擊DNS修改,將域名的DNS修改成剛創建的兩個DNS地址(為什麼是兩個, 國際域名最少填寫2個,最多填寫13個)
修改完成後需要些時間才能生效。
至此我們就可以使用我們創建的DNS伺服器來解析我們的域名了。
註:筆者實驗中沒有創建從DNS伺服器,只創建了主DNS伺服器,從DNS伺服器的創建和主DNS差不多,實際應用中需要主從結構。
TAG:雲計算大數據研究中心 |