大家好,又見面了,我是你們的朋友全棧君。
Ubuntu下DNS伺服器的配置——Bind9
發表于2017/6/12 14:35:49 1220人閱讀
分類:
ubuntu
伺服器
DNS
Ubuntu下DNS伺服器的配置
看到網上關于在Ubuntu下配置DNS的文章很少,自己在配置過程中也掉入了很多坑,最後找到一本書,才把問題解決了。
如果文章有缺漏的地方,或者讓你有疑惑的地方,可以聯系
QQ:923198645
一、Bind9配置檔案介紹
Bind的配置檔案,放在/etc/bind9/目錄下,主要的配置檔案有以下4個,分别是:
- /etc/bind9/named.conf(主配置檔案)
- /etc/bind9/named.default-zones;
- /etc/bind9/named.conf.options;
- /etc/bind9/named.conf.local
其中,/etc/bind9/named.conf是Bind的主配置檔案,不過他并不包含DNS資料。檢視/etc/bind9/named.conf檔案可以發現,主配置檔案裡面使用了include關鍵字來加載其它3個配置檔案。
在/etc/bind9/named.conf.options檔案中,有一句預設的配置(如下),該語句的所示的目錄的作用是存放正向解析以及反向解析的一些配置檔案,該配置告訴Bind,到/var/cache/bind目錄下去尋找資料檔案。
directory “var/cache/bind”
複制
二、配置Bind9
1、完全解除安裝(如果你是首次安裝,請忽略)
在你看這篇文章的時候,也許你已經在DNS配置裡面掙紮了很久,然後沒有成功,那麼,請你執行以下指令(解除安裝bind9,并且删除配置檔案)
sudo apt-get purge bind9
複制
2、安裝Bind9
sudo apt-get -y install bind9
複制
3、建立正向Zone檔案
正向Zone檔案是用來做正向解析的,即将域名解析為IP位址
(1)首先,修改/etc/bind/named.conf.local檔案
sudo mv /etc/bind/named.conf.local /etc/bind/named.conf.local-bak
sudo vim /etc/bind/named.conf.local
複制
添加下列資訊:
zone "kevin.com" {
type master;
file "db.kevin.com";
};
複制
該配置指定Bind作為kevin.com域的主域名伺服器,db. kevin.com檔案包含所有*.kevin.com 形式的域名轉換資料。檔案 db.kevin.com 沒有指定路徑,是以預設是/var/cache/bind/。
(2)然後,我們複制一個現有的檔案作為Zone檔案的模闆:
sudo cp /etc/bind/db.local /var/cache/bind/db.kevin.com
複制
現在,我們來修改該Zone檔案:
sudo vim /var/cache/bind/db.kevin.com
複制
将其改為如下内容(其中的192.168.191.4是我的區域網路IP位址,通過指令行ifconfig可檢視主機的區域網路IP位址)
;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA localhost. root.localhost. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.
@ IN A 192.168.191.4
www IN A 192.168.191.4
@ IN AAAA ::1
複制
4、建立反向Zone檔案
反向Zone檔案是用來做反向解析的,即把IP位址解析為域名。
(1)首先,修改/etc/bind/named.conf.local檔案
sudo vim /etc/bind/named.conf.local
複制
添加下列資訊:
zone "191.168.192.in-addr.arpa" {
type master;
file "db.192.168.191";
};
複制
(2)然後,我們複制一個現有的檔案作為Zone檔案的模闆(注意檔案名是區域網路IP位址前三個段的倒寫,我的區域網路IP是192.168.191.4):
sudo cp /etc/bind/db.127 /var/cache/bind/db.191.168.192
複制
修改該Zone檔案
sudo vim /var/cache/bind/db.191.168.192
複制
将其改為如下内容:
;
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA localhost. root.localhost. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.
4 IN PTR www.kevin.com
1.0.0 IN PTR localhost.
複制
左下角中的4代表IP的最後一個位元組号,例如,我的區域網路IP位址是192.168.191.4,那麼最後一個位元組就是4
三、修改主機域名解析位址,重新開機Bind9
(1)修改主機域名解析位址
sudo vim /etc/resolv.conf
修改為
search kevin.com
nameserver 192.168.191.4
複制
(2)重新開機Bind9
sudo service bind9 restart
複制
四、測試
ping kevin.com
複制
如果有資料的收發,則表示配置成功。
釋出者:全棧程式員棧長,轉載請注明出處:https://javaforall.cn/138965.html原文連結:https://javaforall.cn