BInd的官方网站:https://www.isc.org/downloads/
官方文档:http://ftp.isc.org/isc/bind9/9.11.0-P3/doc/arm/Bv9ARM.pdf
一、源码安装
下载:bind-9.11.0-P3.tar.gz
# tar xzf bind-9.11.0-P3.tar.gz # ./configure --prefix=/usr/local/named --enable-threads --enable-epoll --disable-openssl-version-check # ./configure --help,可以看到有很多的配置选项 # make # make install #为了命令方便 # vim /etc/profile export PATH=${PATH}:/usr/local/named/bin:/usr/local/named/sbin
二、YUM的安装
# yum list | grep ^bind
可以看到有很多bind的安装包,其中至少需要安装三个
bind.x86_64 bind-chroot.x86_64 bind-utils.x86_64
这里不在详细介绍,本人推荐使用源码安装。
三、详细配置
1、ACL语句
ACL语句的使用方法参考:Bind中定义和使用访问控制列表(ACL)[必读],通过文章的了解能够对ACL语句的使用有个非常清晰的了解。
2、controls语句
controls语句的使用方法参考:Bind中控制语句 controls 的定义和使用[必读]
3、include语句
同其他的语言的include功能一样,这里不介绍。
4、key语句
# 使用这个命令生成rndc.key # rndc-confgen -r /dev/urandom -a
key 语句定义了一个用于TSIG的共享密匙。
key 语句可以出现在配置文件的开始或者在一个view语句中。定义在开始的key语句可以在所有视图中应用。在controls语句中使用的key必须事先定义在文件的开始。
key_id,也叫做密匙名,是确认一个域名的唯一密匙。可以在一个“server”语句中使用,使得发给这个服务器的请求都会用这个密匙进行加密,或者用于确认来自于地址匹配列表中的主机的请求,是否已经用这个名字、算法和secret的密匙进行了加密。
algorithm_id 是一个标记安全/鉴定的字符串。目前唯一由TSIG鉴别支持的算法是hmac-md5。secret_string 是算法要使用的机密级,是一个64位编码的字符串。
5、logging语句
bind中日志的设置参考:bind中日志logging的用法
6、lwres语句
lwres语句把名字服务器配置成为一个轻量级的解析服务器。可以有多个lwres语句 配置轻量级解析服务器的不同属性。
语法格式:
lwres { [ listen-on { ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ] [ view view_name; ] [ search { domain_name ; [ domain_name ; ... ] }; ] [ ndots number; ] };
- listen-on语句指定一个轻量级解析服务能够接受请求的地址(和端口)的名单。如果没有指定端口, 就使用921端口。如果这个语句被省略,请求将在地址127.0.0.1的921端口被接受。
- view语句将一个轻量级解析服务绑定到DNS名字空间的视图,这样响应就会以与这个视图所匹配的 普通DNS请求同样的方式被构造。如果这个语句被省略,就使用缺省视图,如果没有缺省视图,就触 发一个错误。
- search语句与/etc/resolv.conf 中的search语句等效。它提供一个追加到请求中的相对名字的域名 列表。
- ndots语句与/etc/resolv.conf中的ndots语句等效。它指示在一个相对域名中的点的最小数目, 将在追加查找路径元素之前作一个精确查找。
7、view
参考文章:Bind中的view语句定义和用法
8、zone
参考文章:Bind中的zone语句的定义和用法
9、options
参考文章:Bind中的 options 语句定义和用法
10、server
11、trusted-keys
附件:本人在本地测试的配置下载: named.conf.tar.gz
四、启动、停止、重启
这里有一个非常用的命令:
# named -c /usr/local/named/etc/named.conf -g # named默认是以daemon的形式运行的,-g的参数表示前端运行,这样看到启动时的错误信息
启动
# named -c /usr/local/named/etc/named.conf
如果启用rndc,可用使用rndc的命令重新加载配置。
# rndc reload //重新加载配置 # rndc stop //停止服务
Pingback引用通告: DNS服务器的基础知识 | 精彩每一天
Pingback引用通告: Bind中的zone语句的定义和用法 | 精彩每一天
Pingback引用通告: Bind中日志logging的用法 | 精彩每一天
Pingback引用通告: Bind之rndc介绍及使用 | 精彩每一天
Pingback引用通告: Bind中控制语句 controls 的定义和使用 | 精彩每一天
Pingback引用通告: Bind中定义和使用访问控制列表(ACL) | 精彩每一天