《linux
网络服务
》
第三章
构建域名服务器
一.
DNS
系统概述
1.
DNS
系统的作用
a.
正向解析:根据主机名称(域名)查找对应的
IP
地址
b.
反向解析:根据
IP
地址查找对应的主机域名
2.
DNS
系统的分布式数据结构
3.
DNS
查询方式:
a.
递归查询
大多数客户机向DNS服务器解析域名的方式
b.
迭代查询
大多数DNS服务器向其他DNS服务器解析域名的方式
二.
DNS
服务器的类型(角色)
1.
缓存域名服务器
a.
也称为
唯高速缓存服务器
b.
通过向其他域名服务器查询获得域名
->IP
地址记录
c.
将域名查询结果缓存到本地,提高重复查询时的速度
2.
主域名服务器
a.
特定
DNS
区域的官方服务器,具有唯一性
b.
负责维护该区域内所有域名
->IP
地址的映射记录
3.
从域名服务器
a.
也称为
辅助域名服务器
b.
其维护的
域名
->IP
地址记录
来源于主域名服务器
三.
BIND
域名服务基础
1.
BIND
(
Berkeley Internet Name Daemon
)
伯克利
Internet
域名服务
官方站点:
https://www.isc.org/
2.
相关软件包
bind-9.3.3-7.el5.i386.rpm
主程序包
bind-utils-9.3.3-7.el5.i386.rpm
工具
bind-chroot-9.3.3-7.el5.i386.rpm
安全牢笼
(
伪装根目录
)
caching-nameserver-9.3.3-7.el5.i386.rpm
模板
3.
BIND
服务器端程序
主要执行程序:
/usr/sbin/named
服务脚本:
/etc/init.d/named
默认监听端口:
53
主配置文件:
/var/named/chroot/etc/named.conf
保存
DNS
解析记录的数据文件位于:
/var/named/chroot/var/named/
注意: named默认监听TCP、UDP协议的53端口,以及TCP的953端口:
其中UDP 53端口一般对所有客户机开放,以提供解析服务;
TCP 53端口一般只对特定从域名服务器开放,提高解析记录传输通道;
TCP 953端口默认只对本机(127.0.0.1)开放,用于为rndc远程管理工具提供控制通道
如果没有安装bind-chroot软件包,则主配置文件默认位于
/etc/named.conf,数据文件默认保存在
/var/named/ 目录
四.
主配置文件
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; };
允许查询的客户机地址
recursion yes;
是否允许为客户机进行递归查询
};
根区域配置部分
zone "." IN {
定义根区域
type hint;
hint
表示根区域
;master
表示主区域
;slave
辅助区域
file "named.ca"; file
用于设置
该区域对应的数据文件名
};
自己定义的区域配置部分
zone "benet.com" IN { benet
域名的正向区域
type master;
主
dns
file "benet.com.zone";
正向区域的配置文件名字
allow-transfer { 173.16.16.2; };
允许下载该区域解析记录的从域名服务的地址
allow-update { none; };
允许动态更新哪些客户机地址,
none
表示全部禁止
};
zone "16.16.173.in-addr.arpa" IN {benet
域名的反向区域
type master;
主
dns
file "173.16.16.arpa";
反向区域配置文件
};
五.
区域数据配置文件
1)正向区域文件内容
$TTL 86400 ;
有效地址解析记录的默认缓存时间
@ IN SOA benet.com. admin.benet.com. (
2009021901 ;
更新序列号
3H ;
刷新时间
15M ;
重试延时
1W ;
失效时间
1D ;
无效地址解析记录的默认缓存时间
)
@ IN NS ns1.benet.com.
指定谁是域名服务器
IN MX 10 mail.benet.com.
指定邮件解析记录
ns1 IN A 173.16.16.1
mail IN A 173.16.16.1
www IN A 173.16.16.1
ftp IN CNAME www
别名记录
2)反向区域文件内容
把A记录换为PTR记录,别的内容保持不变
1 IN PTR www.benet.com.
4 IN PTR study.benet.com. 4
表示最后一位
ip
六.
区域数据文件的几个特殊应用
1.
基于域名解析的负载均衡
同一域名对应到多个
IP
地址
例如有一个网站是
movie.benet.com
movie IN A 173.16.16.11
movie IN A 173.16.16.12
movie IN A 173.16.16.13
2.
泛域名解析
找不到精确对应的
A
记录时,使用“
*
”进行匹配
* IN A 173.16.16.173
3. 子域授权
cn IN A 173.16.16.2
IN NS ns.jv.net.cn.
ns.jv.net.cn. IN A 173.16.16.2
七.
对配置文件进行语法检查
1. named-checkconf
工具
named-checkconf named.conf
2.
named-checkzone
工具
后面加域名
然后是正
/
反向文件
例如
:named-checkzone benet.com benet.com.zone
八
.
在
dns
的主配文件当中
,
可以用
”#”,”//”,
或者
”/*……*/”
但区域文件当中
,
只能以
”;”
来表示注释
.
切记
!!!!
补充:下面的的命令可以更新根区域配置文件
dig @a.root-servers.net ns > /var/named/chroot/var/named/named.ca