1、安装bind
[root@www ~]# yum -y install bind
2、查看安装生成的文件 [root@www ~]# rpm -ql bind | less
3、程序路径 /var/named
4、配置文件路径 /etc/named.conf
全局配置:options {}
日志子系统配置:logging {}
区域定义:本机能够为哪些zone进行解析,就是要定义哪些zone
zone “ZONE_NAME” IN {}
备份主配置文件 [root@www named]# cp /etc/named.conf{,.bak}
修改配置文件:
然后启动该服务 service named start 查看监听端口 ss -tunlp | grep :53
关闭dnssec 注释掉即可
配置主DNS服务器
1、在主配置文件中定义区域
zone “ZONE_NAME” IN {
type {master|slave|hint|forward}
file “ZONE_NAME.zone”;
};
[root@www named]# vim /etc/named.rfc1912.zones
2、定义区域解析库文件
出现的内容: 宏定义 资源记录定义
vim /var/named/security00.com.zone
[root@www named]# named-checkconf //检查主配置文件是否有错
[root@www named]# named-checkzone “security00.com” /var/named/security00.com.zone //检查指定的zone文件是否有语法错误
修改文件权限
[root@www named]# chmod 640 security00.com.zone
[root@www named]# chown :named security00.com.zone
[root@www named]# service named reload
[root@www named]# rndc status //查看当前状态
使用dig命令来测试解析配置
[root@www named]# dig -t A www.security00.com @192.168.246.129 //使用本机来解析
测试命令:dig的使用
dig [-t type] name [@SERVER] [query options]
dig命令用来测试dns系统,因此,不会查询hosts文件进行解析
查询选项:
+[no]trace:跟踪解析过程
+[no]recurse:进行递归解析
-x:测试反向解析
-axfr:测试区域传送
EXAMPLE:
[root@www named]# dig -t A www.security00.com +trace
host命令:
host [-t type] name [SERVER]
example: [root@www named]# host -t A www.security00.com 192.168.246.129
nslookup命令:
nslookup [-option] [name | -] [server]
交互式模式:
nslookup>
server IP:指明使用哪个DNS server进行查询
set q = RR_TYPE:指明查询的类型
NAME:要查询的名称
反向区域:
区域名称:网络地址反写.in-addr.arpa.
192.168.246. –> 246.168.192.in-addr.arpa.
(1) 定义区域
zone “ZONE_NAME” IN {
type {master | slave | forward};
file “网络地址.zone”;
}
[root@www named]# vim /etc/named.rfc1912.zones
(2) 区域解析库文件
PS:不需要MX 和 A,以及AAA记录,以PTR记录为主
vim /var/named/192.168.246.zone
[root@www named]# named-checkconf //检查主配置文件是否有错
[root@www named]# named-checkzone “246.168.192.in-addr.arpa” 192.168.246.zone //检查指定的zone文件是否有语法错误
修改文件权限
[root@www named]# chmod 640 192.168.246.zone
[root@www named]# chown :named 192.168.246.zone
[root@www named]# service named reload
[root@www named]# rndc status //查看当前状态
通过host来测试反向解析:
[root@www named]# host -t PTR 192.168.246.129 192.168.246.129
通过dig来进行反向解析测试:
[root@www named]# dig -x 192.168.246.131 @192.168.246.129
通过dig来测试区域传送漏洞:
[root@www named]# dig -t axfr security00.com @192.168.246.129
[root@www named]# dig -t axfr 246.168.192.in-addr.arpa @192.168.246.129
主从复制:
1、应该为一台独立的名称服务器
2、主服务器的区域解析库文件中必须有一条NS记录是指向从服务器
3、从服务器只需要定义区域,无须提供解析库文件,解析库文件应该放置于/var/named/slaves/目录中
4、主服务器应该允许从服务器作区域传送
5、主从服务器时间应该同步,可通过ntp进行
6、bind版本程序应该保持一致 否则 应该 从高 主低
定义区域传送的方法:
zone “ZONE_NAME” IN {
type slave;
masters { MASTER_IP; };
file “slaves/ZONE_NAME.zone”;
};
一台独立的服务器,安装bind 然后修改配置文件!
[root@www named]# vim /etc/named.rfc1912.zones
测试配置文件是否有语法错误
启动named服务
rndc reload //重读配置文件
rndc status //查看当前状态
配置反向:
[root@www ~]# vim /etc/named.rfc1912.zones
rndc reload //重读配置文件
PS:在主服务器在更改完资源库文件之后,记录数需要手动+1,否则从服务器不会同步!
rndc: tcp/953
reload: 重载主配置文件和区域解析库文件
reload zone:只重载区域解析库文件
retransfer zone:手动启动区域传送过程,不管序列号是否增加
notify zone:重新对区域传送发通知
reconfig:重载主配置文件
querylog:开启/关闭查询日志 日志路径: /var/log/messages
trace Level:指定debug的开启级别
子域授权 —– 分布式数据库
正向解析区域子域授权方法:
定义一个子区域: 编辑区域配置文件
[root@www ~]# vim /var/named/security00.com.zone
另一台(192.168.246.130)服务器上编辑资源解析库文件:
[root@www ~]# vim /etc/named.rfc1912.zones
创建子域的的区域解析库文件:
[root@www ~]# vim /var/named/test.security00.com.zone
执行 rndc reload 重新读取配置文件
查看日志: tail /var/log/message
本机查询,查看解析结果:
定义转发服务器:
PS:被转发的服务器需要能够为请求者做递归,否则,转发请求不予进行;
(1) 全局转发:凡是对本机所有负责解析的区域的请求,统统转发给指定的服务器
Option {
forward {first | only}
forwarders
}
编辑配置文件: [root@www ~]# vim /etc/named.conf
(2) 区域转发:仅转发对特定区域的请求至某服务器
zone “ZONE_NAME” IN {
type forward;
forward {first | only}
forwarders
}
编辑子域的区域资源库文件: [root@www named]# vim /etc/named.rfc1912.zones
原创文章,作者:lishan,如若转载,请注明出处:http://www.178linux.com/77236