先從 http://www.isc.org/products/BIND/ 下載bind,我下載的是bind-9.3.1rc1.tar.gz
我下載的文件放在/root目錄下
進入目錄解壓縮
[root@linux root]#tar xfz bind-9.3.1rc1.tar.gz
進如剛解壓出來的目錄
[root@linux root]# cd bind-9.3.1rc1
編譯配置
[root@linux bind-9.3.1rc1]#./configure --prefix=/usr/local/named --enable-threads #--enable-threads開啟多線程處理能力
[root@linux bind-9.3.1rc1]#make
[root@linux bind-9.3.1rc1]#make install
進入/usr/local/named 建立etc目錄
[root@linux bind-9.3.1rc1]#cd /usr/local/named
[root@linux named]# mkdir etc
生成rndc控制命令的key文件
[root@linux named]# sbin/rndc-confgen > etc/rndc.conf
從rndc.conf文件中提取named.conf用的key
root@linux named]# cd etc
[root@linux etc]# tail -10 rndc.conf | head -9 | sed s/#\ //g > named.conf
自動在/usr/local/named/etc 生成named,conf文件
建立區文件目錄
[root@linux etc]# mkdir /var/named
進入/var/named
[root@linux etc]# cd /var/named
建立localhost.zone文件
[root@linux named]#vi localhost.zone
$TTL 86400
$ORIGIN localhost.
@ 1D IN SOA @ root (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
1D IN NS @
1D IN A 127.0.0.1
建立named.local文件
[root@linux named]#vi named.local
$TTL 86400
@ IN SOA localhost. root.localhost. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS localhost.
1 IN PTR localhost.
dig命令直接生成named.root文件
[root@linux named]#dig > named.root
建立test.com域名正向解析文件
[root@linux named]#vi test.zone
$ttl 1D
@ IN SOA test.com. root.test.com. (
1053891162
3H
15M
1W
1D )
IN NS test.com.
IN MX 5 test.com.
www IN A 220.202.19.82
建立test.com域名反向解析文件
[root@linux named]#vi test.local
$TTL 86400
@ IN SOA test.com. root.test.com.(
20031001;
7200;
3600;
43200;
86400);
@ IN NS test.com.
82 IN PTR dns.test.com.
配置named.conf加如以下代碼
[root@linux etc]# vi named.conf
options {
directory "/var/named"; #named區文件目錄
pid-file "named.pid"; #進程id文件名
};
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
zone "." IN {
type hint;
file "named.root";
};
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 "test.com" IN {
type master;
file "test.zone";
allow-update { none; };
};
zone "19.202.220.in-addr.arpa" IN {
type master;
file "test.local";
allow-update { none; };
};
現在配置完了可以啟動BIND了
/usr/local/named/sbin/named -c /usr/local/named/etc/named.conf &
只要顯示
runing表示運行成功
測試DNS
[root@linux etc]# host 220202.19.82
89.19.202.220.in-addr.arpa domain name pointer dns.test.com.
如上顯示表示DNS反向解析正常
[root@linux etc]# ping www.test.com
PING www.test.com (220.202.19.82) 56(84) bytes of data.
如上顯示表示正向解析正常
DNS配置完成。
from: http://www.chinaunix.net/jh/16/500422.html
rndc 是配合bind的好幫手.使用幫助如下:
[root@rh9 named]# rndc -V
Usage: rndc [-c config] [-s server] [-p port]
[-k key-file ] [-y key] [-V] command
command is one of the following:
reload Reload configuration file and zones.
reload zone [class [view]]
Reload a single zone.
refresh zone [class [view]]
Schedule immediate maintenance for a zone.
reconfig Reload configuration file and new zones only.
stats Write server statistics to the statistics file.
querylog Toggle query logging.
dumpdb Dump cache(s) to the dump file (named_dump.db).
stop Save pending updates to master files and stop the server.
halt Stop the server without saving pending updates.
trace Increment debugging level by one.
trace level Change the debugging level.
notrace Set debugging level to 0.
flush Flushes all of the server's caches.
flush [view] Flushes the server's cache for a view.
status Display status of the server.
*restart Restart the server.
* == not yet implemented
Version: 9.2.1
[root@rh9 named]# rndc stats
[root@rh9 named]# rndc status
number of zones: 5
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
server is up and running