Linux DNS服务器搭建 bind的安装与配置


1.安装
环境 centos 5.4
yum install bind
最简单的安装只需要安装bind-9.3.6-16.P1.el5,bind-libs-9.3.6-16.P1.el5(必须的依赖库,自动安装)即可。
bind-utils-9.3.6-16.P1.el5 一些DNS工具( nslookup,host 等)可选安装。
2.配置
rpm -ql bind //查询下配置文件在哪里
cp /usr/share/doc/bind-9.3.6/sample/etc/named.conf  /etc
cp /usr/share/doc/bind-9.3.6/sample/etc/named.rfc1912.zones  /etc
vi /etc/named.conf
清空掉里面原有的内容,加入以下内容
options {
listen-on port 53 { any; };  //监听端口,any表示任意IP的53端口.
listen-on-v6 port 53 { ::1; };
directory       "/var/named";
dump-file       "/var/named/data/cache_dump.db";  //缓存文件,其实这个设置没有用。因为我们的DNS缓存是在内存中的,你无法直接查看.但是可以用rndc dumpdb 命令将所有缓存输入文件cache_dump.db
statistics-file "/var/named/data/named_stats.txt";    //dns查询情况统计日志,用 rndc stats 命令生成DNS统计报表
memstatistics-file "/var/named/data/named_mem_stats.txt";  //dns内存使用情况
forward first;    //条件转发,只当域有一个转发器列表(  forwarders 选项)的时候才是有意义的。当配置为”only”时,在转发查询失败和得不到结果时会导致查询失败;在配置为”first”时,则在转发查询失败或没有查到结果时,会在本地发起正常查询。  
forwarders     { 202.96.128.166; 202.96.128.86; };    //转发的IP(本地dns服务器查询不到的,就装到这2个IP)
// Those options should be used carefully because they disable port
// randomization
// query-source    port 53;
// query-source-v6 port 53;
allow-query     { any; };    //允许全部IP查询
allow-query-cache { any; };
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};   //这个是默认的日志
channel query_log {
file "data/query.log"     versions 3 size 20m;   //这个是增加的日志,分3个文件最大每个20M
severity info;             //记录日志的等级
print-time        yes;  //包括时间信息
print-category  yes;  //包括类型信息
};
category queries {       //记录的类型是queries(就是DNS查询的日志)
query_log;           //使用query_log这个channel.
};
};
view localhost_resolver {
match-clients      { any; };
match-destinations { any; };
recursion yes;
include "/etc/named.rfc1912.zones";     //调用这个文件.
};
#########################
vi  /etc/named.rfc1912.zones
清空掉里面原有的内容,加入以下内容
//正解析
zone "ivg.com" {     //配置域名
type master;           //主dns服务器
file "ivg.com.zone";    //调用的文件
allow-update { none; };    //允许更新的IP ( 单台dns不用配置)
};
//反解析,不做配置
//zone "1.168.192.in-addr.arpa" {
//type master;
//file "1.168.192.zone";
//allow-update { none; };
//};
##########################
配置域名的解析
vi /var/named/ivg.com.zone
$TTL    86400
@       IN      SOA     localhost. root.localhost.  (
20110312   ; Serial
28800      ; Refresh
14400      ; Retry
3600000    ; Expire
86400 )    ; Minimum
@           IN NS        mail.ivg.com.
www         IN A         192.168.1.210
svn         IN A         192.168.1.210
###########

完成.
service named start
启动
###############
客户端配置dns