Linux下DNS服務軟件bind簡介
Linux系統下架設DNS服務器通常是使用Bind程序來實現的。Bind是Berkeley Internet Name Domain Service的簡寫,是一款架設DNS服務器的開放源代碼軟件。Bind原本是美國DARPA資助伯克裡大學開設的一個研究生課題,後來經過多年的變化發展,已經成為世界上使用最為廣泛的DNS服務器軟件,目前Internet上絕大多數的DNS服務器都是用Bind來架設的。
Bind經歷了第4版、第8版和最新的第9版,第9版修正了以前版本中的許多錯誤,並提升了執行時的效能。Bind能夠運行在當前大多數的操作系統系統平台之上。
bind安裝
[root@b ~]# rpm -ivh /media/Server/bind-9.3.6-4.P1.el5_4.2.i386.rpm
warning: /media/Server/bind-9.3.6-4.P1.el5_4.2.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:bind ########################################### [100%]
[root@b ~]# rpm -ivh /media/Server/caching-nameserver-9.3.6-4.P1.el5_4.2.i386.rpm
warning: /media/Server/caching-nameserver-9.3.6-4.P1.el5_4.2.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:caching-nameserver ########################################### [100%]
[root@b ~]#
named服務的配置
在Redhat 5的版本中/etc/named.conf文件已經不存在,改用/etc/named.caching-nameserver.conf文件替代,安裝好named服務之後先修改bind的配置文件named.caching-nameserver.conf
[root@c ~]# vi /etc/named.caching-nameserver.conf
options {
listen-on port 53 { 192.168.0.101; }; //定義監聽dns服務的地址,也就是dns服務器的地址
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
query-source port 53;
# query-source-v6 port 53;
# allow-query { localhost; }; //運行使用該dns服務的地址
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost_resolver {
# match-clients { localhost; }; //允許使用的該dns服務的客戶端
# match-destinations { localhost; }; //允許用戶解析的dns目的地址
recursion yes;
include "/etc/named.rfc1912.zones";
};
然後修改/etc/named.rfc1912.zones 文件,添加正向及反向的解析域,這裡我建立了一個liusuping.com的正向及反向解析域,如下面的代碼
zone "liusuping.com" IN {
type master;
file "liusuping.com.zone"; //定義正向解析域的文件
allow-update { none; };
};
zone "0.168.192.in-addr.arpa" IN {
type master;
file "liusuping.com.local"; //定義反向解析域的文件
allow-update { none; };
};
接下來就是創建兩個解析配置文件,這裡記錄了正向及反向的域名解析記錄。
正向解析記錄
[root@c ~]# vim /var/named/liusuping.com.zone
$TTL 86400
@ IN SOA liusuping.com. root.liusuping.com. (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS 192.168.0.101
IN A 192.168.0.101
dns IN A 192.168.0.101
www IN A 192.168.0.101
@ IN MX 10 192.168.0.101
ftp IN CNAME www.liusuping.com.
反向解析記錄
[root@c ~]# vim /var/named/liusuping.com.local
$TTL 86400
@ IN SOA liusuping.com. root.liusuping.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS dns.liusuping.com.
101 IN PTR dns.liusuping.com.
101 IN PTR www.liusuping.com.
注意:所有的郁悶後面都需要跟一個英文符號的"."
以上配置做好之後重啟named服務
[root@c ~]# service named restart
停止 named:[確定]
啟動 named:[確定]
[root@c ~]#
使用nslookup 進行DNS測試
正向記錄
[root@c ~]# nslookup
> www.liusuping.com
Server: 192.168.0.101
Address: 192.168.0.101#53
Name: www.liusuping.com
Address: 192.168.0.101
CNAME別名測試
> ftp.liusuping.com
Server: 192.168.0.101
Address: 192.168.0.101#53
ftp.liusuping.com canonical name = www.liusuping.com.
Name: www.liusuping.com
Address: 192.168.0.101
mx記錄測試
> set type=mx
> liusuping.com
Server: 192.168.0.101
Address: 192.168.0.101#53
liusuping.com mail exchanger = 10 192.168.0.101.liusuping.com.
反向測試
> 192.168.0.101
Server: 192.168.0.101
Address: 192.168.0.101#53
101.0.168.192.in-addr.arpa name = dns.liusuping.com.
101.0.168.192.in-addr.arpa name = www.liusuping.com.
至此一台基本的DNS服務器搭建完成。
轉載請注明:
本文轉自:http://www.liusuping.com/ubuntu-linux/Redhat-Linux-DNS-bind.html