BIND 在win 2003 下的安装及配置

转自:http://bbs.chinaunix.net/viewthread.php?tid=596994

一.、Bind 简介。

Bind是一款开放源码的DNS服务器软件,Bind由美国加州大学Berkeley分校开发和维护的,全名为Berkeley Internet Name Domain它是目前世界上使用最为广泛的DNS服务器软件,支持各种unix平台和windows平台。本文将介绍它在win 2003 server中最基本的安装和配置。

二.、软件的相关资源及准备工作。

官方网站:http://www.bind.com/
源码软件包:Bind 是开源的软件,可以去其官方网站下载。http://www.isc.org/index.pl?/sw/bind/,目前最新版本为bind-9.3.2。
帮助文档:http://www.isc.org/index.pl?/sw/bind/ 有该软件比较全面的帮助文档。
FAQ:http://www.isc.org/index.pl/sw/bind/ 回答了该软件的常见问题。
配置文件样例:http://www.bind.com/bind.html 一些比较标准的配置文件样例。
下载 UltraEdit  因为要修改配置文件,都需要该软件 ,当然你用记事本也行,提醒你的是用记事本很容易出问题
三.、软件的安装。

1.        安装
由其官方网站中下载其源码软件包BIND9.3.2.zip 。接下来我将对安装过程的一些重要步骤,给出其解释:
2.        解压压缩包,运行安装文件bindinstall
3.        默认情况下,安装过程是不会建立配置文件和一些默认的域名解析的,不过并不妨碍,可以从下载一些标准的配置文件(http://www.bind.com/bind.html),也可以使用本文所提供的样例文件。 默认情况下,安装路径为C:/windows/system32/dns 下,可以看到有两个目录,分别为bin和etc, 默认的主配置文件  /etc/named.conf(须手动建立该文件)。

四.软件的配置。
1        BIND比较重要的配置文件有:named.conf,named.root,rndc.conf,还有/ etc/named目录。
2        下面逐步分析一个比较基础的配置文件named.conf:(注:named配置文件采用和c语言相同的注释符号程序能否正常运行,全靠这个文件)。
(1) log options
/*
* log option
*/
logging {
channel default_syslog { syslog local2; severity error; };
channel audit_log { file "C:/windows/system32/dns/log/named.log"; severity error; print-time yes; };
/*手动建立该目录和文件,并修改该路径,注意2000 里路径的符号和unix下路径的写法不同,以后程序中如果读取文件,都要注意路径的写法。*/
category default { default_syslog; };
category general { default_syslog; };
category security { audit_log; default_syslog; };
category config { default_syslog; };
category resolver { audit_log; };
category xfer-in { audit_log; };
category xfer-out { audit_log; };
category notify { audit_log; };
category client { audit_log; };
category network { audit_log; };
category update { audit_log; };
category queries { audit_log; };
category lame-servers { audit_log; };
};


这一部分是日志的设置,其中最主要的是

file "C:/windows/system32/dns/log/named.log"; 这一句指定了日志文件的位置,要正常启动named,必须要保证这一文件是存在的,并且named 进程对它有读写权限。

(2) options

options {
directory “C:/windows/system32/dns/etc/named";
/* 注意写法 修改该路径
listen-on-v6 { any; };

// If you've got a DNS server around at your upstream provider, enter
// its IP address here, and enable the line below.  This will make you
// benefit from its cache, thus reduce overall DNS traffic in the Internet.

forwarders {
your.upper.DNS.address;
};

/*
* 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;

/*
* If running in a sandbox, you may have to specify a different
* location for the dumpfile.
*/
dump-file "/etc/named_dump.db";
};


这一部分是一些基本的配置项:

directory "C:/windows/system32/dns/etc/named"; 指定域名解析等文件的存放目录(须手动建立);

listen-on-v6 { any; }; 支持ipv6的请求;
forwarders {
your.upper.DNS.address;
}; 指定前向DNS,当本机无法解析的域名,就会被转发至前向DNS进行解析。


(3) 线索域和回环域

zone "." {
type hint;
file "named.root";
};

zone "0.0.127.IN-ADDR.ARPA" {
type master;
file "localhost.rev";
};


指定线索域和本地回环域,这一部分使用一些标准的例子就可以。

file "named.root"; 指定该域的解析文件,其目录为options中directory "C:/windows/system32/dns/etc/named";指定的。在本例中为C:/windows/system32/dns/etc/namd。

4)自定义域


zone "test.com" {
type master;
file "zone.test ";
};

zone "0.168.192.in-addr.arpa" {
type master;
file "zone.test.rev";
};
zone "4.0.0.f.0.5.2.0.1.0.0.2.IP6.ARPA" {
type master;
allow-transfer { any;};
        allow-query { any; };
file "ipv6.rev";
};

zone "lowerlevelzone.test.com" {
type slave;
masters {
192.168.1.1;
};
};

这一部分是配置文件中我们需要重点关心的部分:

zone "test.com" {
type master;
file "zone.test ";
}; 设定test.com域;
type master 指明该域主要由本机解析;
file "zone.test "指定其解析文件为zong.test,目录为options中设定的目录本例中为/etc/named。

zone "0.168.192.in-addr.arpa" {
type master;
file "zone. test.rev";
}; 指定ipv4地址逆向解析

type slave 指明该域主要由低一级的域名服务器解析;
masters {
192.168.1.1;
};

// 指定低一级的域名服务器ip地址。

到此我们就初步建立了一个标准的named 的主配置文件,接下来建立对应的域名解析或逆向解析文件。



3        域名解析和IP地址逆向解析文件:/etc/namedb/zone.test

配置文件的格式大致如下


; From: @(#)localhost.rev 5.1 (Berkeley) 6/30/90
; $FreeBSD: src/etc/namedb/PROTO.localhost.rev,v 1.6 2000/01/10 15:31:40 peter Exp $
;
; This file is automatically edited by the `make-localhost' script in
; the /etc/namedb directory.
;
@ IN SOA ns.test.com. root.test.com.(
2005030116; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
 IN NS ns.test.com.

ns IN A 192.168.0.1
www6 IN AAAA 2001:250:f004::10
www IN A 192.168.0.2

本文件前半部分是一些默认的参数设置,只需把域名改成对应得你要设置的域就行,其余的不用过分深究..几个参数稍做解释。

几个需要注意的地方
IN NS ns.test.com;
这一条必须有,来指定本域的域名服务器 ;
域名必须以"."结尾。)
本文件的第二部分(倒数三行),指定了该域上的主机:
ns IN  A 192.168.0.1
ns 为主机名,A 代表地址类型为IPV4地址,192.168.0.1 是实际ip地址,这一条记录的含义是ns.test.com 的ip地址为 192.168.0.1
www6 IN AAAA 2001:250:f004::10
www6 为主机名,AAAA代表地址类型为IPV6地址,2001:250:f004::10 是其IPV6地址,这条记录的含义是www6.test.com 的ip地址是2001:250:f004::10 。


2)IP地址逆向解析:

ipv4 逆向解析:    etc/namedb/zone.test.rev


; From: @(#)localhost.rev 5.1 (Berkeley) 6/30/90
; $FreeBSD: src/etc/namedb/PROTO.localhost.rev,v 1.6 2000/01/10 15:31:40 peter Exp $
;
; This file is automatically edited by the `make-localhost' script in
; the /etc/namedb directory.
;
@ IN SOA ns.test.com. root.test.com.(
2005030116; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
IN NS ns.test.com
;

1 IN PTR ns.test.com.
2 IN PTR  www.test.com./


五  几个配置文件到此基本配置完成,成功了一半,接下来通过cmd 进入bin 的目录
运行
1        运行  rndc-confgen –a  生成一个 rndc.key 为什么这么做请看下面这段话,这是BIND安装文件的说明。

which will create a rndc.key file in the dns/etc directory. This will allow you to run rndc without an explicit rndc.conf file or key and  control entry in named.conf file. See section 3.4.1.2 of the ARM for   details of this. An rndc.conf can also be generated by running:

2  运行 rndc-confgen >; rndc.conf

然后你会发现,当前目录有一个rndc.conf的密钥文件了,呵呵,如果你想看一下内容,也可以使用UltraEdit 打开它,该文件内容大致如下:


# Start of rndc.conf
key "rndc-key" {
        algorithm hmac-md5;
        secret "o2iuzvKIljrrxw7A4cJITQ==";
};

options {
        default-key "rndc-key";
        default-server 127.0.0.1;
        default-port 953;
};
# End of rndc.conf

# Use with the following in named.conf, adjusting the allow list as needed:
# key "rndc-key" {
#         algorithm hmac-md5;
#         secret "o2iuzvKIljrrxw7A4cJITQ==";
# };
#
# controls {
#         inet 127.0.0.1 port 953
#                 allow { 127.0.0.1; } keys { "rndc-key"; };
# };
# End of named.conf


注意,请把后面以:

# Use with the following in named.conf, adjusting the allow list as needed:

开始的这一部份,加到named.conf后面并去掉#才可以,否则后面的rndc status将显示超时退出...


六  测试
嗯,到此为止,好象BIND 9就可以顺利运行了,请按下面的步骤测试吧

进入dos 进入到 bin 目录
named -g
,-g选项表示前台运行,并将调试信息打印到标准输出,这在我们安装调试阶段是非常有帮助的。

当你有看到running字样时,说明已经配置正确了,如果要控制BIND 9的运行,更方便的使用rndc命令来进行,

再开一个dos 窗口,进入到bin 目录  运行
  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

如果看见了 恭喜你 呵呵  ,终于正常配置成功 。如果没有显示上面的信息,请检查你的named.conf文件里面是否配置了rndc.conf里面的key。

至此为止,一般可以实际运作的BIND 9就建立起来了,您可以rndc rolead一下,让最新的设置及软件生效。
如果在安装过程中出现错误,您可以先检查完错误,再接着安装下去。或者你可以选择你感兴趣的某些部份安装!

附 named.root

;       initialize cache of Internet domain name servers
;       (e.g. reference this file in the "cache  .  <file>;"
;       configuration file of BIND domain name servers).
;
;       This file is made available by InterNIC
;       under anonymous FTP as
;           file                /domain/named.root
;           on server           FTP.INTERNIC.NET
;
;       last update:    Nov 5, 2002
;       related version of root zone:   2002110501
;
;
; formerly NS.INTERNIC.NET
;
.                        3600000  IN  NS    A.ROOT-SERVERS.NET.
A.ROOT-SERVERS.NET.      3600000      A     198.41.0.4
;
; formerly NS1.ISI.EDU
;
.                        3600000      NS    B.ROOT-SERVERS.NET.
B.ROOT-SERVERS.NET.      3600000      A     128.9.0.107
;
; formerly C.PSI.NET
;
.                        3600000      NS    C.ROOT-SERVERS.NET.
C.ROOT-SERVERS.NET.      3600000      A     192.33.4.12
;
; formerly TERP.UMD.EDU
;
.                        3600000      NS    D.ROOT-SERVERS.NET.
D.ROOT-SERVERS.NET.      3600000      A     128.8.10.90
;
; formerly NS.NASA.GOV
;
.                        3600000      NS    E.ROOT-SERVERS.NET.
E.ROOT-SERVERS.NET.      3600000      A     192.203.230.10
;
; formerly NS.ISC.ORG
;
.                        3600000      NS    F.ROOT-SERVERS.NET.
F.ROOT-SERVERS.NET.      3600000      A     192.5.5.241
;
; formerly NS.NIC.DDN.MIL
;
.                        3600000      NS    G.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET.      3600000      A     192.112.36.4
;
; formerly AOS.ARL.ARMY.MIL
;
.                        3600000      NS    H.ROOT-SERVERS.NET.
H.ROOT-SERVERS.NET.      3600000      A     128.63.2.53
;
; formerly NIC.NORDU.NET
;
.                        3600000      NS    I.ROOT-SERVERS.NET.
I.ROOT-SERVERS.NET.      3600000      A     192.36.148.17
;
; operated by VeriSign, Inc.
;
.                        3600000      NS    J.ROOT-SERVERS.NET.
J.ROOT-SERVERS.NET.      3600000      A     192.58.128.30
;
; housed in LINX, operated by RIPE NCC
;
.                        3600000      NS    K.ROOT-SERVERS.NET.
K.ROOT-SERVERS.NET.      3600000      A     193.0.14.129
;
; operated by IANA
;
.                        3600000      NS    L.ROOT-SERVERS.NET.
L.ROOT-SERVERS.NET.      3600000      A     198.32.64.12
;
; housed in Japan, operated by WIDE
;
.                        3600000      NS    M.ROOT-SERVERS.NET.
M.ROOT-SERVERS.NET.      3600000      A     202.12.27.33
; End of File


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值