环境介绍
-
系统版本:CentOS 7.2
-
程序包:bind(提供的dns server程序、已经几个常用的测试程序)、bind-utils(bind客户端程序集,例如dig,host,nslookup等)
缓存名称服务器的配置:
1、安装程序包
~]# yum install bind bind-utils -y
2、修改主配置文件
-
主配置文件:/etc/named.conf
-
其中主配置文件包含有其它文件:
/etc/named.iscdlv.key
/etc/named.rfc1912.zones
/etc/named.root.key -
主配置文件的格式:
全局配置段:
options {
…
}
日志配置段:
logging {
…
}
区域配置段:
zone{
…
}
修改全局配置段如下:
3、检查检查配置文件语法错误
使用命令:named-checkconf [/etc/named.conf]
4、启动服务
使用命令:systemctl start named
5、测试连通性
几个测试工具:
1、dig命令:
命令用法: dig [it RR_TYPE] name [@SERVER] [query options] 用于测试dns系统,因此其不会查询host文件 查询选项: +[no]trace:跟踪解析过程 +[no]recurse:进行递归解析 反向解析测试: dig -x IP
2、nslook命令:
命令用法: nslookup [-options] [name] [server] 交互式模式: nslookup> server IP:以指定的IP为DNS服务器进行查询 set q=RR_TYPE:要查询的资源记录类型 name:要查询的名称
配置一个正向解析区域
1、定义区域,在主配置文件中或主配置文件辅助配置文件中实现。以magedu.com为例:
编辑/etc/named.rfc1912.zones文件,插入如下字段。
zone "magedu.com" IN { type master; file "magedu.com.zone"; };
-
type:服务器的类型(master(主服务器) | slave(从服务器) | hint(根服务器) | forward(转发服务器))。
-
file:区域数据文件名称,默认在在/var/named目录下。
2、建立区域数据文件(主要记录为A或AAAA记录)
在/var/named目录下建立区域数据文件,文件名与上一步定义的保持一致。
-
$TTL:设置有效地址解析记录的默认缓存时间。
-
$ORIGIN:表示该zone文件用来描述的域(domain)名称,说明下面的记录源出何处。
-
MX:邮件交换(Mail Exchange)记录,用于设置当前域的邮件服务器域名地址。
-
A地址(Address)记录:用于记录正向域名解析
-
CNAME:别名(Canoical Name)记录
-
其中,NS、MX记录行首的@符号可以省略(默认继承SOA记录行首的@信息),但是必须保留一个空格或者制表位;如果ns用全名称,com后面要有"." 如果不是全名称,后面一定不能有"."
3、配置完成之后,要进行权限及属组修改
# chgrp named /var/named/magedu.com.zone # chmod o= /var/named/magedu.com.zone
4、检查配置文件语法错误
# named-checkzone magedu.com /var/named/magedu.com.zone # named-checkconf
5、让服务器重载配置文件和区域数据文件
# rndc reload 或 # systemctl reload named.server
测试验证使用dig命令
查看NS
配置一个反向解析区域
1、定义区域,在主配置文件中或主配置文件辅助配置文件中实现
编辑/etc/named.rfc1912.zones文件,插入如下字段。
zone "1.168.192.in-addr.arpa" IN { type master; file "192.168.1.zone"; };
2、定义区域解析库文件(主要记录为PTR)
在/var/named目录下建立区域数据文件,文件名与上一步定义的保持一致。
-
反向区域的名字:反写的网段地址.in-addr.arpa
3、进行权限及属组修改
# chgrp named /var/named/192.168.1.zone # chmod o= /var/named/192.168.1.zone
4、检查配置文件语法错误
# named-checkzone 1.168.192.in-addr.arpa /var/named/192.168.1.zone # named-checkconf
5、让服务器重载配置文件和区域数据文件
# rndc reload 或 # systemctl reload named.server
测试:
辅助DNS服务器配置
-
从服务器是区域级别的概念
1、在从服务器上定义一个区域:
zone "magedu.com" IN { type slave; file "slaves/magedu.com.zone"; masters { 10.1.8.81; }; };
-
masters:指明主DNS地址。
2、重载配置
#rndc reload
3、在主服务器上
确保区域数据文件中为每个服务配置NS记录,并且在正向区域文件需要每个从服务器的NS记录的主机名配置一个A记录,且此A后面的地址为真正的从服务器的IP地址。
验证:
从服务器上查看状态:
去到/var/named/slaves,可以看到同步过来的数据库配置文件
使用dig验证辅助DNS服务器是否能解析www.magedu.com域名
-
注意时间同步、iptables和SElinux的规则。
子域授权
1、在主域数据库文件授权
2、子域新装bind并配置
定义监听端口及IP地址
listen-on port 53 { 10.1.8.84; };
3、子域创建配置区域文件
zone "cdn.magedu.com" IN { type master; file "cdn.magedu.com.zone"; };
4、创建子域数据文件
$TTL 3600 $ORIGIN cdn.magedu.com. @ IN SOA ns1.cdn.magedu.com nsadmin.magedu.com.com ( 2017020800 1D 30M 1D 1D ) IN NS ns1 ns1 IN A 10.1.8.84 www IN A 10.1.8.84
验证:
在主域的主NS服务器中,使用 dig -t A www.cdn.magedu.com ,如果能解析到,说明配置OK。
原创文章,作者:641348038@qq.com,如若转载,请注明出处:http://www.178linux.com/67867
评论列表(1条)
不只是搭建,原理也很重要,尤其是在企业中应用到后,如何加快解析,如何智能解析,如何实现主备切换等高可用方案。