Bind9 编译安装
上一篇 / 下一篇 2006-09-08 17:01:41 / 天气: 晴朗 / 心情: 平静 / 个人分类:技术文档
一、准备 BIND9 源代码
http://www.isc.org/index.pl
将最新的 BIND9 源代码包下载到 /usr/local/src 下。
二、编译安装 BIND9
# cd /usr/local/src
# tar xzvf bind-9*.gz
# cd bind-9*
# ./configure \
--prefix=/usr/local/bind9 \
--enable-threads \
--enable-static \
--enable-ipv6=no
注:如果需要支持 IPv6 ,则将 --enable-ipv6=no 改为 --enable-ipv6=yes 。
# make
# make install
三、配置 BIND9 环境
1. 建立 BIND9 需要的目录
(1) 配置文件目录:
# mkdir /usr/local/bind9/etc
(2) 域数据文件目录:
# mkdir -p /usr/local/bind9/var/named
(3) BIND9 运行时目录:
# mkdir /usr/local/bind9/var/run
(4) BIND9 日志目录
# mkdir /usr/local/bind9/var/logs
2. 创建 BIND9 系统文件:
# touch /usr/local/bind9/var/run/named.pid
# touch /usr/local/bind9/var/named_dump.db
# touch /usr/local/bind9/var/run/named.stats
3. 下载最新的 named.ca 根 DNS 服务器数据文件
# cd /usr/local/bind9/var/named
# wget ftp://ftp.rs.internic.net/domain/named.root
# mv named.root named.ca
四、创建 BIND9 配置文件
1. 创建包含 root server 和 locahost. 以及 abc.com. 域的默认 named.conf 文件(见附带的 named.conf);
# vi /usr/local/bind9/etc/named.conf
2. 创建 localhost. 域数据文件和反解文件(见附带的 localhost.zone、localhost.rzone);
# vi /usr/local/bind9/var/named/localhost.zone
# vi /usr/local/bind9/var/named/localhost.rzone
3. 创建 abc.com. 域数据文件和反解文件(见附带的 abc.com.zone、localhost.rzone);
# vi /usr/local/bind9/var/named/abc.com.zone
# vi /usr/local/bind9/var/named/abc.com.rzone
五、配置 RNDC
# /usr/local/bind9/sbin/rndc-confgen > /usr/local/bind9/etc/rndc.conf
打开刚刚创建的 rndc.conf ,查看 # End of rndc.conf 以下部分的注释信息,
按照说明对 named.conf 进行修改。
六、设置 BIND9 运行权限
# useradd named
# chown -R named:named /usr/local/bind9/
# chmod 600 /usr/local/bind9/etc/*
# chmod 600 /usr/local/bind9/var/*
# chmod 600 /usr/local/bind9/logs/*
七、启动并检查 BIND9
# /usr/local/bind9/sbin/named -4 -c /usr/local/bind9/etc/namd.conf -n X -u named (其中 X 为服务器的 CPU 数量)
# /usr/local/bind9/sbin/rndc status
停止 BIND9
# /usr/local/bind9/sbin/rndc stop
附加信息(配置文件):
named.conf:
// Generated by Comsen-Nanu
options {
directory "/usr/local/bind9/var/named";
pid-file "/usr/local/bind9/var/run/named.pid";
dump-file "/usr/local/bind9/var/named_dump.db";
statistics-file "/usr/local/bind9/var/run/named.stats";
};
// Log
logging {
channel error_log {
file "/usr/local/bind9/var/logs/error.log" versions 10 size 32m;
severity warning;
print-time yes;
print-severity yes;
print-category yes;
};
channel query_log {
file "/usr/local/bind9/var/logs/query.log" versions 10 size 32m;
severity info;
print-time yes;
print-severity yes;
print-category yes;
};
category default { error_log; };
category queries { query_log; };
};
// RNDC
key "rndc-key" {
algorithm hmac-md5;
secret "FzWz75c8ejrACCDKV8ttoA==";
};
controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc-key"; };
};
// Cacheing Only Name Server Config
zone "." IN {
type hint;
file "named.ca";
};
// localhost.
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "localhost.rzone";
allow-update { none; };
};
// abc.com.
zone "abc.com" IN {
type master;
file "abc.com.zone";
allow-update { none; };
};
zone "0.0.10.in-addr.arpa" IN {
type master;
file "abc.com.rzone";
allow-update { none; };
};
rndc.conf:
key "rndc-key" {
algorithm hmac-md5;
secret "FzWz75c8ejrACCDKV8ttoA==";
};
options {
default-key "rndc-key";
default-server 127.0.0.1;
default-port 953;
};
localhost.zone:
$TTL 86400
$ORIGIN localhost.
@ IN SOA localhost. root.localhost. (
2006083100 ; Serial (YYMMDDSN)
1800 ; Refresh
300 ; Retry
3600 ; Expiry
300 ) ; Minimum
@ IN NS localhost.
@ IN A 127.0.0.1
localhost.rzone:
$TTL 86400
@ IN SOA localhost. root.localhost. (
2006083100 ; Serial (YYMMDDSN)
30M ; Refresh
5M ; Retry
1H ; Expire
5M ) ; Minimum
@ IN NS localhost.
1 IN PTR localhost.
abc.com.zone:
$TTL 600
$ORIGIN abc.net.
@ IN SOA abc.net. webmaster.abc.com. (
2006083100 ; Serial (YYMMDDSN)
1800 ; Refresh
300 ; Retry
3600 ; Expiry
300 ) ; Minimum
@ IN NS ns1.abc.com.
@ IN A 10.0.0.97
ns1 IN A 10.0.0.97
www IN A 10.0.0.97
web IN CNAME www
mail IN MX 10.0.0.97
abc.com.rzone:
$TTL 600
@ IN SOA abc.com. webmaster.abc.com. (
2006083100 ; Serial (YYMMDDSN)
1800 ; Refresh
300 ; Retry
3600 ; Expire
300 ) ; Minimum
@ IN NS ns1.abc.com.
97 IN PTR www.abc.com.

