朋友們好,我也是一個剛剛接觸Linux的 ,對於Linux下的DNS配置有點復雜,我也在網上搜索了好久,經過我的整理做了這個教程。希望給廣大Linux新手朋友們一點幫助。
任務1:構建主域名服務器
任務2:構建輔助域名服務器
任務3:測試DNS服務
任務4:緩存DNS服務的配置與測試
任務5:DNS轉發器的配置
任務6:新建子域及子域委派。
建立兩個虛擬機
1.#ifconfig
2.#netconfig
3.ip address 192.168.13.1
netmask: 255.255.255.0
default gateway: 192.168.13.154
primary nameserver: 192.168.13.1
4.# service network restart
5.ifconfig
6.rpm -ql |grep bind
--查看安裝的和dns相關的軟件包。
bind-utils-9.2.4-2
ypbind-1.17.2-2
bind-6.2.4-2
bind-libs-9.2.4-2
7.#rpm -qa |grep caching
caching-nameserver-7.3-3
8.#rpm -ql caching-nameserver
--可以看到好到十一個文件。
有主配置文件和區域文件。
/var/named/named.ca--目前互聯網上的的根域服務器清單。
9.#service named start
10.#cat /var/named/named.ca
我們現在配置主dns服務器。
1.ll /etc/named.conf
-rw-r--r-- 1 root root 1323 Aug 26 2010 /etc/named.com
2.ll /var/named/
--可以看到九個文件
3.vi /etc/named.conf
默認用六個配置。
我們復制
zone"localhsot" IN {
type master;
file "localhost.zone";
allow-update {nane; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "localhost.zone";
allow-update {none; };
};
粘貼到下面,修改一下域名和區域。
zone "xapc.com" IN {
type master;
file "xapc.com.zone";
allow-update {none; };
};
zone "13.168.192.in-addr.arpa" IN {
type master;
file "xapc.com.rev";
allow-update {none;};
};
:wq
4.#clear
5.#cd /var/named
6.#ll
7.#cp localhost.zone xapc.com.zone
8.#cp named.local xapc.com.rev
9.#vi xapc.com.zone
--我們要修改裡面的配置了
@ IN SOA root (
42 ; serial(d.adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS @
IN A 172.0.0.1
IN AAAA ::1
---------------這是系統默認的配置。我們要修改了
@ IN SOA dns1.xapc.com. root.xapc.com. (
42 ; serial(d.adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS dns1.xapc.com.
IN NS dns2.xapc.com.
IN MX 5 mail.xapc.com.
dns1 IN A 192.168.13.1
dns2 IN A 192.168.13.2
www IN CNAME dns1.xapc.com.
ftp IN CNAME dns2.xapc.com.
mail IN CNAME dns2.xapc.com.
:wq
10.#vi xapc.com.rev
@ IN SOA localhost.root.localhost. (
132323232 ; Serial
28808 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Mimimum
IN NS localhost.
1 IN PTR localhost.
-----------以上是默認的配置,我們要修改了
@ IN SOA dns1.xapc.com root.xapc.com. (
132323232 ; Serial
28808 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Mimimum
IN NS dns1.xapc.com.
IN NS dns2.xapc.com.
1 IN PTR dns1.xapc.com.
1 IN PTR www.xapc.com.
2 IN PTR dns2.xapc.com.
2 IN PTR ftp.xapc.com.
:wq
11.# named-checkconf
--如果沒有提示說明成功了
12.# named-checkzone xapc.com xapc.com.zone
13.#service named restart
14.#nslookup
>service 192.168.13.1-----聯系一下。
15.#ifconfig
16.#ping 192.168.13.1
17.#netstat -ntl
18.#cat /etc/resolv.conf
nameserver 192.168.13.1
19.#nslookup www.xapc.com
server: 192.168.13.1
Adderss: 192.168.13.1#53
www.xapc.com cononical name = dns1.xapc.com.
Name: dns1.xapc.com
Address: 192.168.13.1
20.#nslookup ftp.xapc.com
server: 192.168.13.1
Adderss: 192.168.13.1#53
ftp.xapc.com canonical name = dns2.xapc.com.
Name: dns2.xapc.com
Address: 192.168.13.2
----以上都的正向解析。
----下面開始反相解析了
21.nslookup 192.l68.13.2
Server: 192.168.13.1
Address: 192.168.13.1#53
2.13.168.192.in-addr.arpa name = ftp.xapc.com.
2.13.168.192.in-addr.arpa name = dns2.xapc.com.
22.cat /etc/resolv.conf
nameserver 192.168.13.1
---默認保存在這個文件中,會上這個文件中去找。
23.#ping dns1.xapc.com
24 #nslookup
>server ip地址 --這裡可以臨時改變DNS服務器。
>set type=mx
>xapc.com
Server: 192.168.13.1
Address: 192.168.13.1#53
xapc.com mail exchamger = 5 mail.xapc.com.
>set type=a
>mail.xapc.com
Server: 192.168.13.1
Address: 192.168.13.1#53
mail.xapc.com comomical name = dns2.xapc.com.
Name: dns2.xapc.com
Address: 192.168.13.2
>exit
上面是正向和反向的配置。
二:現在我們配置輔助服務器。
好了,我們現在進入第二台虛擬機上
1.#ifconfig
2.#netconfig
ip address: 192.168.13.2
netmask: 255.255.255.0
default gateway : 192.168.13.254
primary nameserver: 192.168.13.2
3.#service network restart
4.#ifconfig
5.#ping 192.168.13.1
6.# rpm -qa | grep bind
bind-utils-9.2.4-2
ypbind--1.17.2-3
bind-9.2.4.4-2
bind-libs-9.2.4-2
7.#rpm -q cachimg-nameserver
cachim-nameserver-7.3-3
8.vi /etc/named.conf
zone"localhsot" IN {
type master;
file "localhost.zone";
allow-update {nane; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "localhost.zone";
allow-update {none; };
};
-----這是它默認的配置,我們要添加配置內容。
zone "xapc.com" IN {
type slave;
file "slaves/xapc.com.zone";
masters {192.168.13.1; };
};
zone "13.168.192.in-addr.arpa" IN {
type slave;
file "slaves/xapc.com.rev";
masters {192.168.13.1;};
};
:wq
9.#ll /var/named/
--可以看到九個文件
10.#ll /var/named/slaves/
total 0
11.#service named start
12.#ll /var/named/slaves
-rw---- 1 named named 436 xapc.com.rev
-rw---- 1 named named 424 xapc.com.zone
13.#nslookup ftp.xapc.com
Server: 192.168.13.2
Address: 192.168.13.2#53
ftp.xapc.com canonical name = dns2.xapc.com.
Name: dns2.xapc.com
Address: 192.168.13.2
14.#nslookup 192.168.13.1 --反向解析
Server: 192.168.13.2
Address: 192.168.13.2#53
1.13.168.192.in-addr.arpa name = www.xapc.com.
1.13.168.192.in-addr.arpa name = dns1.xapc.com.
我們可不可以做 有些區域我是輔助的,有些區域我是主服務器。
我們要做下一個實驗了
1.#vi /etc/named.conf
zone "xapc.com" IN {
type slave;
file "slaves/xapc.com.zone";
masters {192.168.13.1; };
};
zone "13.168.192.in-addr.arpa" IN {
type slave;
file "slaves/xapc.com.rev";
masters {192.168.13.1;};
};
---- 這是前面配置好的結果,我們現在要在添加配置。
zone "pcgj.com" IN {
type master;
file "pcgj.com.zone";
allow-update {none; };
};
:wq
2.# cd /var/named
3.#ll
4.#cp localhost.zone pcgj.com.zone
5.#vi pcgj.com.zone
@ IN SOA @ root (
42 ; serial(d.adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS @
IN A 172.0.0.1
IN AAAA ::1
---------------這是系統默認的配置。我們要修改了
@ IN SOA dns.pcgj.com. root.pcgj.com.(
42 ; serial(d.adams)
3H ; refresh
15W ; retry
1W ; expiry
1D ) ; minimum
IN NS dns.pcgj.com.
dns IN A 192.168.13.2
:wq
6.#service named restart
7.#nslookup dns.pcgj.com
Server: 192.168.13.2
Address: 192.168.13.2#53
Name: dns.pcgj.com
Address: 192.168.13.2
8.#nslookup dns1.xapc.com
Server: 192.168.13.2
Address: 192.168.13.2#53
Name: dns1.xapc.com
Address: 192.168.13.1
現在反向解析的問題。所以要會到主服務器上配置。
9.#vi /xapc.com.rev
只增加一行配置。
2 IN PTR dns.pcgj.com.
注意: 132323232 ; Serial要改為 132323233 ; Serial 要在新的配置上加‘1’這樣可以更新。
:wq
10.#service named restart
11.#nslookup 192.168.13.2
Server: 192.168.13.1
address: 192.168.13.1#53
2.13.168.192.in-addr.arpa name = ftp.xapc.com.
2.13.168.192.in-addr.arpa name = dns2.xapc.com.
2.13.168.192.in-addr.arpa name = dns.pcgj.com.
現在我們在回到客戶端:
12.#cat slaves/xapc.com.rev
可以看的配置文件
如:
2 PTR dns.pcgj.com.
PTR ftp.xapc.com.
PTR dns2.xapc.com.
13.#nslookup 192.168.13.2 --反向解析
Server: 192.168.13.2
Address: 192.168.13.2#53
2.13.168.192.in-addre.arpa name = ftp.xapc.com.
2.13.168.192.in-addre.arpa name =dns2.xapc.com.
2.13.168.192.in-addre.arpa name = dns.pcgj.com.
14.#nslookup dns.pcgj.com
Server: 192.168.13.2
Address: 192.168.13.2#53
Name: dns.pcgj.com
Address: 192.168.13.2
好了 !
現在我們要在做一個新的實驗
DNS的轉發
我們還是在輔助dns服務器上配置
1.#service named stop
2.#ll
3.vi /etc/name.conf
我們要添加兩個轉發配置,我們還要把科研解析的配置刪除掉。只保留“pcgj.com”因為他不能解析服務器。
statistics-file "/var/named/data/name_stats.txt"
forward only;
forwarders {192.168.13.1;};
:wq
如果不放心的話,我們可以查看有沒有錯誤。
4.#named-checkconf
5.#service named restart
這台計算機已經不是輔助的DNS服務器了
6.# ll
7.#ll slaves/
可以看到兩個配置文件。
8.#rm slaves/*
9.# nslookup www.xapc.com
Server: 192.168.13.2
Address: 192.168.13.2#53
nom-authoritative answer;---非權威
www.xapc.com camomical name = dns1.xapc.com.
Name: dns1.xapc.com
Address: 192.168.13.1
10.#nslookup dns.pcgj.com
Server: 192.168.13.2
Address: 192.168.13.2#53
Name: dns.pcgj.com
Address: 192.168.13.2
我們能不能讓部分區域轉發,兩個域,我讓這個區域轉發給你,其他域,我可以找根。
我們還在輔助dns上修改配置文件。
1.#vi /etc/named.conf
我們們要注釋掉兩個配置內容。在新建一個區域。
// forward only;
// forwarders {192.168.13.1; };
zone "xapc.com" IN {
type forward;
forward only;
forwarder {192.168.13.1; };
};
:wq
2.#service named restart
3.#nslookup ftp.xapc.com
Server: 192.168.13.2
Address: 192.168.13.2#53
Nom-authoritative answer;
ftp.xapc.com camomical name = dns2.xapc.com.
Name: dns2.xapc.com
Address: 192.168.13.2
4.#nslookup 192.168.13.2
它解析不了,因為沒有讓這個區域轉發,也找不到根。
所以我們可以讓一個區域轉發,其他區域找根。
DNS服務器的主要測試方法;
我們使用nslookup,dig和host等專用工具可以對DNS服務器進行較全面的測試。
使用nslookup測試DSN服務器1
(1)進入nslookup命令交換環境
# nslookup
>
(2)設置使用指定的DNS服務器
>server 192.168.1.2
(3)測試localhost主機域名的正向解析
>localhost
(4)測試localhost主機域名的反向解析
>127.0.0.1
在輔助dns上練習一下:
1.#nslookup
>server 192.168.13.1
Default server: 192.168.13.1
Address: 192.168.13.1#53
>192.168.13.2
Server: 192.168.13.1
Address: 192.168.13.1#53
2.13.168.192.in-addr.arpa name=dns.pcgj.com.
2.13.168.192.in-addr.arpa name=ftp.xapc.com.
2.13.168.192.in-addr.arpa name=dns2.xapc.com.
>exit
使用nslookup測試DSN服務器2
(1)測試互聯網中的域名解析
>www.yahoo.com.cn
(2)測試test.com域中的A記錄
>host1.test.com
(3)測試test.com域中的PTR記錄
>192.168.1.11
(4)測試test.com域中的CNAME記錄
>www.test.com
使用nslookup測試DSN服務器3
(1)測試test.com域中的NS記錄
>set type=ns
>test.com
(2)測試test.com域中的MX記錄
>set type=mx
>test.com
(3)設置進行A記錄的測試
>set type=a
使用dig命令測試DNS服務器1
dig @dns域名或ip 區域 記錄類型
eg: dig @192.168.13.2 xapc.com NS
意思是到192.168.13.2這個網段來挖掘xapc.com這個區域中的NS記錄,結果會顯現NS所以得記錄。
我們在輔助dns上演示一下
1.#dig @192.168.13.2 xapc.com NS
2.ll /var/name/named.ca
--保存了所有的根域服務器的域名解析,dns的清單這個文件是怎麼是得到的那。它就是用dig命令得到的。
dig @a.root-servers.net . NS>/var/named/named.ca
好了 下面我們在講一個重要的內容。
DNS子域的委派。
這兩台服務器是父子關系。但兩個人各有各得dns服務器來解析。
好了,我們現在從輔助dns上開始吧。
1:#pwd
/var/named
2: #vi /etc/named.conf
zone "0.in-addr.arpa" IN {
type master;
file"named.zero";
allow-update{none; };
};
zone "pcgj.com" IN {
type master;
file "pcgj.com.zone";
allow-update {none; };
};
zone "xapc.com" IN {
type forward;
forward only;
forwarders {192.168.13.1; };
};
----上面是前面修改好的我們要刪除一些配置,
下面在添加一些內容。
zone "ca.xapc.com" IN {
type master;
file "ca.xapc.com.zone";
ailow-update {none; };
};
:ok
我們還要新建一個ca.xapc.com.zone文件
2.#ll
3.#cp pcgj.com.zone ca.xapc.com.zone
4.#vi ca.xapc.com.zone
@ IN SOA dns.pcgj.com. root.pcgj.com.(
42 ; serial(d.adams)
3H ; refresh
15W ; retry
1W ; expiry
1D ) ; minimum
IN NS dns.pcgj.com.
dns IN A 192.168.13.2
----這是前面我們修改好的文件,我們要修改它。
@ IN SOA dns.ca.xapc.com. root.ca.xapc.com.(
42 ; serial(d.adams)
3H ; refresh
15W ; retry
1W ; expiry
1D ) ; minimum
IN NS dns.ca.xapc.com.
dns IN A 192.168.13.2
www IN A 192.168.13.1
:wq
5:# service named restart
6:# nslookup www.ca.xapc.com
Server: 192.168.13.2
Address: 192.168.13.2#53
Name: www.ca.xapc.com
Address: 192.168.13.1
現在我們來的主服務器,看看主服務器能不能解析,它能解析它的孫子嗎?
7:#nslookup www.ca.xapc.com
---不能解析的,因為沒有做委派,所以不能解析。
8:#vi /etc/named.conf
做委派是時候不需要修改主配置文件。
我們只需要修改xapc.com.zone這個住配置文件就好了
9:#vi xapc.com.zone
@ IN SOA dns1.xapc.com. root.xapc.com. (
42 ; serial(d.adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS dns1.xapc.com.
IN NS dns2.xapc.com.
IN MX 5 mail.xapc.com.
dns1 IN A 192.168.13.1
dns2 IN A 192.168.13.2
www IN CNAME dns1.xapc.com.
ftp IN CNAME dns2.xapc.com.
mail IN CNAME dns2.xapc.com.
-------這是前面我們修改好的, 我們還要修改此文件。
@ IN SOA dns1.xapc.com. root.xpac.com.(
42 ; serial(d.adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS dns.ca.xapc.com.
IN NS dns1.xapc.com.
IN NS dns2.xapc.com.
IN MX 5 mail.xapc.com.
dns1 IN A 192.168.13.1
dns2 IN A 192.168.13.2
www IN CNAME dns1.xapc.com.
ftp IN CNAME dns2.xapc.com.
mail IN CNAME dns2.xapc.com.
dns.ca IN A 192.168.13.2
:wq
10:#services named restart
11:#nslookup www.ca.xapc.com
Server: 192.168.13.1
Address: 192.168.13.1#53
Non-authoritative amswer:
Name: www.ca.xapc.com
Address: 192.168.13.1
ok了, 所以的實驗都完成了
我們可以的課後練習一下。
任務1:構建主域名服務器
任務2:構建輔助域名服務器
任務3:測試DNS服務
任務4:緩存DNS服務的配置與測試
任務5:DNS轉發器的配置
任務6:新建子域及子域委派。