1、什么是DNS?
DNS是计算机域名系统或域名解析服务器(Domain Name Server或Domain Name System) 的缩写,它是由解析器以及域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。DNS使用TCP与UDP端口号都是53,主要使用UDP,服务器之间备份使用TCP。
域名解析分为正向解析和反向解析,正向解析式根据主机名称查找对应的IP地址,反向解析是根据IP地址查找对应的主机域名。
全球有13台根域名服务器,主根服务器在美国。
根: . 顶级域:.com .net .org .edu .cn .uk ... 二级域:.com.cn .net.com 三级域:.sina.com.cn
DNS查询方式有两种:迭代查询和递归查询。
迭代查询的过程,A向B请求,B不知道但是B说C可能知道,于是A又向C请求,C不知道但说D可能知道,于是 A又向D请求,D将信息告诉A,最终A找到需要的信息。
递归查询过程,A向B请求,B不知道B向C请求,C不知道向D请求,D将信息告诉C,C将信息告诉B,B将信息告 诉A,最终A找到需要的信息。
DNS服务器可以分为三种:缓存域名服务器(向其他域名服务器查询的结果缓存到本地)
主域名服务器(特定DNS区域的官方服务器)
从域名服务器(解析记录来源于主域名服务器)。
2、构建缓存域名服务器
本人的实验是在centos6.4上操作。主域名服务器IP地址192.168.0.106,从域名服务器IP地址192.168.0.105。
安装DNS服务软件,BIND域名服务:yum install -y bind
备份并清空主配置文件的内容:cp /etc/named.conf /etc/named.conf.bak
> /etc/named.conf
编辑配置主配置文件:vim /etc/named.conf
options {
directory "/var/named"; #解析记录存放的目录
};
zone "." IN { #根域
type hint;
file "named.ca"; #根域的数据文件
};
确认根域的区域数据文件:cat /var/named/named.ca
启动named服务:/etc/init.d/named start
在客户机中验证缓存域名服务器:nslookup
>server 192.168.0.106 #DNS服务器IP
3、构建主域名服务器
知识点:NS域名服务器记录,MX邮件交换记录,A正向解析,PTR反向解析,CNAME别名记录
安装DNS服务软件,BIND域名服务:yum install -y bind
备份并清空主配置文件的内容:cp /etc/named.conf /etc/named.conf.bak
> /etc/named.conf
编辑主配置文件:vim /etc/named.conf
options {
directory "/var/named"; #解析记录存放的目录
};
zone "." IN { #根域
type hint;
file "named.ca"; #根域的数据文件
};
zone "test1.com" IN { #配置区域名
type master; #类型为主域名服务器
file "test1.com.zone"; #数据文件
};
zone "0.168.192.in-addr.arpa" IN {
type master;
file "192.168.arpa";
};
改变配置文件所属主:chown named /etc/named.conf
初始化解析记录:cd /var/named/;dig -t NS . > named.ca
编辑区域数据文件:vim /var/named/test1.com.zone
@ IN SOA test1.com. admin.test1.com. (
2013081601
1H
10M
7D
1D
)
@ IN NS test1.com.
test1.com. IN A 192.168.0.106
编辑区域数据文件:vim /var/named/192.168.arpa
$TTL 86400
@ IN SOA test1.com. admin.test1.com. (
2013081601
1H
10M
7D
1D
)
@ IN NS test1.com.
106 IN PTR test1.com #反向解析
检测文件:named-checkconf
检测正解析: named-checkzone "test1.com.zone" /var/named/test1.com.zone
检测反解析: named-checkzone "0.168.192.in-addr.arpa" /var/named/192.168.arpa
生成 rndc.key文件: rndc-confgen -r /dev/urandom -a
chown named:named /etc/rndc.key
启动named:/etc/init.d/named start
验证主域名服务器: nslookup test1.com
nslookup 192.168.0.106
配置DNS转发:vim /etc/named.conf #在options{} 里面增加
forward first;
forwarders { 8.8.8.8; };
3、构建从域名服务器
安装DNS软件:yum install -y bind
备份并清空主配置文件的内容:cp /etc/named.conf /etc/named.conf.bak
> /etc/named.conf
编辑配置文件:vim /etc /named.conf
options {
directory "/var/named";
};
zone "." IN {
type hint;
file "named.ca";
};
zone "test1.com" IN {
type slave; #从域名服务器
file "slaves/localhost.zone"; #数据文件存放目录
masters { 192.168.0.106; }; #主域名服务器IP
};
zone "0.168.192.in-addr.arpa" IN {
type slave;
file "slaves/named.local";
masters { 192.168.0.106; };
};
生成rndc.key文件: rndc-confgen -r /dev/urandom -a
chown named:named /etc/rndc.key
从域名服务器启动named: /etc/init.d/named start
查看是否成功生成文件:ls /var/named/slaves
从服务器上测试:dig @127.0.0.1 www.abc.com
4、加快主从同步
在localhost.zone中添加一行:
2013081610 #修改标记数
mail IN A 1.1.1.1
在主域名服务器上配置:vim /etc/named.conf #在test1.com的zone中增加两行
notify yes;
also-notify { 192.168.0.12; };
重启主域名服务:/etc/init.d/named restart
验证从服务器:cat /var/named/slaves/localhost.zone
本文出自 “我的linux成长之路” 博客,请务必保留此出处http://linuxlovers.blog.51cto.com/6787002/1385125
原文:http://linuxlovers.blog.51cto.com/6787002/1385125