5 BIND
5.1 BIND介绍
1984年,加州大学伯克利分校的几个学生完成了Unix名称服务的实现,起名叫做Berkeley Internet Name Domain(BIND)。目前,它是互联网上使用最为广泛的DNS服务软件。bind的发行版一般包含三个部分:域名服务器、域名解析器库、软件测试工具。
5.2 BIND的安装
请另外参考我编写的实例文档《BIND编译调试环境搭建》5.3 BIND内部根服务器架设实例
请另外参考我编写的实例文档《内部根服务器架设实例》5.4 BIND的配置
5.4.1 配置文件
BIND主配置文件为named.conf,主要用于指引服务器怎样读取区域数据文件设置区域数据文件的位置。
(1) named.conf配置文件的注释
/*C语言样式的注释*/
//C++语言样式的注释
#shell样式的注释
(2) 控制列表
// 我们希望允许来自两个公司子网的DNS 请求
acl "corpnets" { 192.168.4.0/24; 192.168.7.0/24; };
options {
directory "/etc/namedb"; //工作目录
pid-file "named.pid"; //把DNS 进程文件加到工作目录中
allow-query { "corpnets"; };
};
(3) 根提示文件
zone "." { type hint; file "root.hint"; };
(4) 反向解析之回环地址
zone "0.0.127.in-addr.arpa" {
type master;
file "localhost.rev";
notify no;
};
(5) options选项
options {
directory "/etc/namedb"; // 工作目录
pid-file "named.pid"; //把DNS 进程文件加到工作目录中
allow-query { any; }; // 默认配置
recursion no; // 不提供递归服务
};
(6) 主区域配置
zone "example.com" {
type master;
file “example.com.db”;
//容许进行域传送的example.com 的辅域名服务器地址
allow-transfer {
192.168.4.14;
192.168.5.53;
};
};
(7) 从区域配置
zone "eng.example.com" {
type slave;
file “eng.example.com.bk”;
//eng.example.com 的主域名服务器地址
masters {192.168.4.12; };
};
(8) 转发配置
options {
forwarders { 192.168.198.2; };
};
(9) 区域转发配置
zone "com." {
type forward;
forwarders { 192.168.198.2; };
};
(10) 视图
view,在内外网隔离的环境中非常有用,视图允许对外提供的DNS服务器配置因对象而异。如果DNS服务器同时接受内部主机和外部主机的查询,视图非常有用。
实际上,BIND9如果没有配置view,会缺省生成一个view
注意,当named.conf中明确配置view后,任何zone必须在view中。
acl "inter-sub" { 192.168.198.128/26; };
view "internal" {
match-clients { "inter-sub"; };
zone "." IN {
type hint;
file "db.root";
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "db.127.0.0";
};
zone "james.cn." IN {
type master;
file "db.james.cn";
};
};
view "external" {
match-cli