第4章-DNS域名解析系统
一,BIND域名服务基础
(1),DNS系统的作用及类型
【作用】:维护着一个地址数据库,其中记录着各种主机域名与IP地址的对应关系,以便为客户程序提供正向或反向的地址查询服务。
正向解析:域名查询IP,即将指定的域名解析为相应的IP地址
反向解析:IP查询域名,即将指定的IP地址解析为相应的域名
【DNS系统的几种类型】
缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但是没有自己控 制的区域地址数据。构建缓存域名服务器时必须设置根域或指定其他DNS区域服务器作为解析来源。
主域名服务器:维护某一个特定DNS区域的地址数据库,对其中的解析记录具有自主控制权,是指定区域中唯一存在的权威服务器,官方服务器。
从域名服务器:与主域名服务器提供完全相同的DNS解析服务,通常用于DNS服务器的热备份。从域名服务器提供的解析结果并不是由自己决定的,而是来自于域名服务器。构建从域名服务器时,需要指定主域名服务器的位置,以便服务器能自动同步区域的地址数据库。
(2),BIND的安装和控制
1,安装BIND软件
Bind:主包,提供了域名服务的主要程序及相关文件。
Bind-utils:工具包,提供了对DNS服务器的测试工具程序“nslookup”。
Bind-libs:提供了bind、bind-utils需要使用的库函数。
Bind-chroot:产生虚根目录(将/var/named/chroot/文件夹作为BIND的根目录)。
Caching-nameserver:产生相关数据库文件。
2,BIND服务控制
服务脚本:/etc/init.d/named
Service工具:service named status
(3),BIND服务的配置文件
主配置文件:用于设置named服务的全局选项,注册区域及访问控制等各种运行参数。
区域数据文件:用于存放某个DNS区域的地址解析记录(正向或反向记录)。
1,主配置文件
目录:/etc/named.conf
虚根目录:/var/named/chroot/etc/named.conf
【字符解释】
“;”分号表示配置行结束
“#、//”表示注释文字
【named.conf配置内容】
options {
listen-on port 53 {173.16.16.1} /监听地址和端口,不写为监听所有网卡
directory “/var/named”; /区域数据文件的默认存放位置
allow-query{ 192.168.1.0/24; 173.16.16.0/24 } ; /允许使用本DNS服务的网段
}; 一般不加这一项
zone “benet.com” in { /正向benet.com区域
type master ; /类型为主区域
file “benet.com”; /区域数据文件为benet.com
allow-transfer { 173.16.16.2 } ; /允许下载的从服务器地址
}; 这项可以省略
zone “16.16.173.in-addr.arpa” in { /反向173.16.16.0/24区域
type master; /类型为主区域
file “173.16.16.zone”; /区域数据文件为173.16.16.zone
};
【经验小结】
DNS端口号:TCP 53 UDP 53
TCP 53:用于存储更新、更安全、哥靠
UDP 53:用于客户端解析、更快
检查语法:named -checkconf -2 /var/named/chroot/etc/named.conf
2,区域数据配置文件
目录:/var/named/
虚根目录:/var/named/chroot/var/named/
【TTL配置及SOA记录部分】
vim /var/named/chroot/var/named/benet.com
$ttl 86400 /ttl为生命周期、86400为天数
@ in soa benet.com. root.benet.com. ( /soa标记、域名、管理邮箱
2013010203 /更新序列号,可以是10位以内的整数
3h 小时 /刷新时间,重新下载地址数据的时间
15m 分钟 /重试延时,下载失败后的重试间隔
1w 周 /失效时间,超过该时间仍无法下载则放弃
1d 天 /无效解析记录的生存周期
)
【地址解析记录部分】 正向
@ in ns ns1.benet.com. /本DNS服务器的名称
in max 10 mail.benet.com. /当前区域邮件服务器的地址
dns in a 173.16.16.1 /a正向解析条目
www in a 173.16.16.2 / a正向解析条目
mail in a 173.16.16.3 / a正向解析条目
ftp in cname www /www有个别名为ftp
注意:
ns、max记录行首的“@”符号可以省略(默认继承SOA记录行首的@ 信息),但是必须保留一个空格或者Tab制表位
【地址解析记录部分】反向
vim /var/named/chroot/var/named/173.16.16.zone
$ttl 86400
@ in soa 16.16.173.in-addr.arpa. root.benet.com. (
2013010203
3h
15m
1w
1d
)
@ in ns ns1.benet.com.
1 in ptr dns.benet.com. /1为主机地址,173.16.16.1
2 in ptr www.benet.com. /2为主机地址,173.16.16.2
3 in ptr mail.benet.com. /3为主机地址,173.16.16.3
二,使用BIND构建域名服务器
(1),构建缓存服务器
【方法一】:
第一步:vim /var/named/chroot/etc/named.conf
options {
directory “/var/named/”;
};
zone “.” In { /正向“.”为根区域
type hint; /类型为“根”区域
file “named.ca”; /区域数据文件为“named.ca”
};
第二步:vim /var/named/chroot/etc/named.conf
options {
……//省略部分内容
forwarders { 202.106.0.20;202.106.148.1;};/转发给运营商的DNS
};
【法法二】:主+缓存
Vim /var/named/chroot/etc/named.conf
Options {
Forwarders { 173.16.16.1 }; /转发给主域名DNS服务器
};
(2),构建主域名服务器
a)确认本机的网络地址、主机映射、默认DNS服务器
vim /etc/hosts
vim /etc/reslov.conf
b)建立主配置文件named.conf
vim /var/named/chroot/etc/named.conf
c)建立正、反向区域数据文件
d)启动named服务或重载配置
e)验证主机域名服务器
nslookup www.benet.com
nslookup 173.16.16.1
(3),构建从域名服务器
1,确认本机的网络地址、主机映射、默认DNS服务器
2,建立主配置文件named.comf
vim /var/named/chroot/etc/named.onf
options {
全 directory “/var/named”;
};
zone “benet.com” in {
type slave; /此类型为“从”区域
正 master { 173.16.16.1;} /指定主服务器的IP 地址
向 file “slaves/benet.com”; /下载的区域文件保存到slaves/目录
};
zone “16.16.173.in-addr.arpa”in {
反 type slave;
向 masters { 173.16.16.1;}
file “slaves/173.16.16.zone”;
};
3,启动named服务
4,验证从域名服务器
本文转自甘兵 51CTO博客,原文链接:http://blog.51cto.com/ganbing/1199736,如需转载请自行联系原作者