運行環境redhat 9.0 ,IP地址172.18.121.35,實現的域名為jb51.net
1.安裝DNS所要的軟件包.
查看是否安裝bind軟件,在終端中輸入
代碼如下:
[root@localhost root]# rpm -qa|grep bind
redhat-config-bind-1.9.0-13
bind-9.2.1-16
bind-utils-9.2.1-16
ypbind-1.11-4
若出現以上的文字則表示安裝成功,若沒有出現以上東西插入正確的光盤,進行安裝.或者通過下載源代碼進行安裝。
2.設定好IP地址與DNS
在終端中輸入netconfig,回車,在第一行中輸入IP,172.18.121.35.第二行輸入子網掩碼255.255.255.0第三行輸入網關地址:172.18.121.1,最後一行輸入DNS 172.18.121.35.再確定.再在終端中輸入下面的命令
代碼如下:
[root@localhost root]#service network reload
[root@localhost root]#service network restart
通過ifconfig查看IP信息
3.配置DNS
配置DNS正向搜索,配置文件如下:
代碼如下:
[root@localhost root]#cp /var/named/localhost.zone /var/named/jb51.net
先復制本機DNS的一個配置模板文件,進行修改
代碼如下:
[root@localhost root]# vi /var/named/jb51.net
$TTL 86400
$ORIGIN jb51.net.
@ 1D IN SOA jb51.net. root.jb51.net. (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
1D IN NS @
1D IN MX 5 mail.jb51.net.
www 1D IN A 172.18.121.35
mail 1D IN A 172.18.121.35
ftp 1D IN A 172.18.121.35
pop3 IN CNAME mail.jb51.net.
smtp IN CNAME mail.jb51.net.
保存退出,先按ESC ,再:wq.
配置DNS正向搜索,配置文件如下:
代碼如下:
[root@localhost root]#cp /var/named/named.local /var/named/172.18.121.rev
先復制本機DNS的一個配置模板文件,進行修改
代碼如下:
[root@localhost root]# vi /var/named/172.18.121.rev
$TTL 86400
@ IN SOA jb51.net. root.jb51.net. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS jb51.net.
< p>35 IN PTR www.jb51.net.
35 IN PTR mail.jb51.net.
35 IN PTR ftp.jb51.net.
配置本機DNS的一個主文件,安裝好後它有一個模板,修改它,修改的部分是粗線表示
代碼如下:
[root@localhost root]# vi /etc/named.conf
// generated by named-bootconf.pl
options {
directory "/var/named";
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
};
//
// a caching only nameserver config
//
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
zone "jb51.net"IN{
type master;
file "jb51.net";
};
zone "121.18.172.in-addr.arpa"IN{
type master;
file "172.18.121.rev";
};
include "/etc/rndc.key";
"/etc/named.conf" [已轉換] 45L, 894C
配置本機的域名轉換程序的順序
代碼如下:
[root@localhost root]# vi /etc/host.conf
order bind,hosts
multi off
trim jb51.net
[root@localhost root]# vi /etc/resolv.conf
nameserver 172.18.121.35
nameserver 218.196.42.2
namedsever 218.196.42.2
domain jb51.net
search www.jb51.net jb51.net
option nochecknames rotate
4.啟動named服務.
代碼如下:
[root@localhost root]#service named start
5.檢查配置是否成功
代碼如下:
[root@localhost root]# nslookup
Note: nslookup is deprecated and may be removed from future releases.
Consider using the `dig' or `host' programs instead. Run nslookup with
the `-sil[ent]' option to prevent this message from appearing.
> www.jb51.net
Server: 172.18.121.35
Address: 172.18.121.35#53
Name: www.jb51.net
Address: 172.18.121.35
> 172.18.121.35
Server: 172.18.121.35
Address: 172.18.121.35#53
35.121.18.172.in-addr.arpa name = ftp.jb51.net.
35.121.18.172.in-addr.arpa name = www.jb51.net.
35.121.18.172.in-addr.arpa name = mail.jb51.net.
>
ctrl +D退出
若出現上面的情況的文字表示已經配置成功.
6.其實在配置的過程中,查看自己是否配置正確可以通過named –g 進行查看你的配置文件到底錯在那個地方,再進行修改
PS:DNS相關配置文件說明
. /etc/host.conf
當系統中同時存在DNS域名解析和/etc/hosts主機表機制時,由該/etc/host.conf確定主機名解釋順序。示例:
order hosts,bind #名稱解釋順序
multi on #允許主機擁有多個IP地址
nospoof on #禁止IP地址欺騙
order是關鍵字,定義先用本機hosts主機表進行名稱解釋,如果不能解釋,再搜索bind名稱服務器(DNS)。
. /etc/resolv.conf
該文件是DNS域名解析的配置文件,它的格式很簡單,每行以一個關鍵字開頭,後接配置參數。resolv.conf的關鍵字主要有四個,分別是:
nameserver #定義DNS服務器的IP地址
domain #定義本地域名
search #定義域名的搜索列表
sortlist #對返回的域名進行排序
/etc/resolv.conf的一個示例:
domain ringkee.com
search www.ringkee.com ringkee.com
nameserver 202.96.128.86
nameserver 202.96.128.166
最主要是nameserver關鍵字,如果沒指定nameserver就找不到DNS服務器,其它關鍵字是可選的。
. /etc/hosts
設置IP地址與主機名對應表,可用該文件來進行主機名稱解釋。如:
#格式:IP地址 主機名 別名
代碼如下:
127.0.0.1 localhost localhost.localdomain
192.168.1.1 debian debian
192.168.0.2 t02 t02.tiger
192.168.0.4 t04 t04.tiger
./etc/name.conf
// generated by named-bootconf.pl
< p>options {
directory "/var/named";
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
};
< p>//
// a caching only nameserver config
//
< p>zone "." IN {
type hint;
file "named.ca";
};
< p>zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
這一部分是你安裝了bind軟件後系統自動產生的named.conf文件的原始內容。“directory”指定了dns記錄文件的存放目錄是/var/named。“//”開頭的文字是說明文字,不用管它。接著的兩個“zone”語句定義了dns服務器的根和對應的反向查詢域,並指出根的記錄文件是“name.ca”,根的反向查詢域的記錄文件是“named.local”。這兩個記錄文件也是系統自帶的,不用去改動它。named.conf文件的這一部分內容,我們不必去改動它。
但我們可以在“diretory”下添加一行:forwarders {202.96.134.133;}。202.96.134.133是我這裡電信的dns服務器的地址,forwarders參數指明了其後的ip所在的服務器作為備選的dns服務器。也就是說,把本機的dns不能解析的主機發送到這個備選的dns服務器上,讓它來進行解析。
代碼如下:
zone "jb51.net" IN {
type master;
file "named.jb51.net";
allow-update { none; };
};
zone "0.0.10.in-addr.arpa" IN {
type master;
file "named.jb51.net.rev";
allow-update { none; };
};
這一部分是手工添加的。定義了“jb51.net”這個域和對應的反向查詢域。“type master”說明本機是“jb51.net”和“0.0.10.in-addr.arpa”這兩個域的主dns服務器(primary name server)。“named.jb51.net”和“named.jb51.net.rev”是域的記錄文件。這兩個文件也是自己創建的,下面我們就來看看這兩個文件。
./var/named/naemd.***.com
資源記錄文件,位於/var/named目錄下。這個目錄是named.conf中定義的。
1、named.jb51.net文件內容如下:
代碼如下:
@ IN SOA netfinity.jb51.net. root.netfinity.jb51.net. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS netfinity.jb51.net.
IN MX 10 netfinity.jb51.net.
< p>netfinity IN A 10.0.0.211
lily IN A 10.0.0.139
www IN CNAME netfinity.jb51.net.
pop3 IN CNAME netfinity.jb51.net.
smtp IN CNAME netfinity.jb51.net.
在這個記錄文件中,出現了5種類型的記錄。SOA 是授權起始(Start Of Authority)的縮寫,後面接著寫你的dns服務器的主機名,這裡是“netfinity.jb51.net.”。(注意,主機名稱後面的小圓點。凡是出現在記錄文件了的主機名,記得都要加上這各小圓點。)NS 是名稱服務器資源記錄,指明域中的名稱服務器,這裡就是dns服務器。MX是郵件交換者資源記錄,指明這個域的郵件服務器。你可以寫多個MX記錄,指明多個郵件服務器,優先級別由MX後的數字決定,數字越小,郵件服務器優先權越高。A是主機記錄,把主機和ip地址對應起來。CNAME是別名記錄,它賦予一個主機不同的名稱,如www.jb51.net、pop3.jb51.net其實都是指向同一台主機netfinity.jb51.net。
./var/named/naemd.***.com.rev
named.jb51.net.rev文件內容:
代碼如下:
@ IN SOA netfinity.jb51.net. root.netfinity.jb51.net. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS netfinity.jb51.net.
211 IN PTR netfinity.jb51.net.
139 IN PTR lily.jb51.net.
這是“jb51.net”的反向域記錄文件,它讓dns服務器提供由ip地址查找主機名的服務。PTR記錄把ip和主機名對應起來。由於一些程序會要求反向查詢,所以反向查詢域的記錄文件最好不要省略。
到此為止,你已經成功配置了一個dns服務器,它能夠解析“jb51.net”這個域了。