DNS服务器搭建

DNS服务器分为:缓存服务器(非权威的答案),主DNS服务器,备份dns服务器
+++++++++++++++++++++++++++++++
client:一般采用递归查询
dns-server:一般采用迭代查询

+++++++++++++++++++++++++++++++

centos7.2(dns服务器需要有静态的ip地址)
如果你做实验给我搞个自动获取,就等着抓狂吧
DNS非常复杂,本文只介绍:正向解析;反向解析;主/从;缓存这几个方向 (分地域解析,子域授权,权限acl这里就不介绍了)

+++++++++++++++++++++++++++++++

软件安装&基础配置
yum install bind-chroot -y

修改主配置文件
vim /etc/named.conf

options {
 //将下行中的127.0.0.1修改为any,代表允许监听任何IP地址。
 listen-on port 53 { 127.0.0.1; };
 listen-on-v6 port 53 { ::1; };
 directory "/var/named";
 dump-file "/var/named/data/cache_dump.db";
 statistics-file "/var/named/data/named_stats.txt";
 memstatistics-file "/var/named/data/named_mem_stats.txt";
//将下行中的localhost修改为any,代表允许任何主机查询。
 allow-query { localhost; };
 recursion yes;
 dnssec-enable yes;
 dnssec-validation yes;
 dnssec-lookaside auto;
/* Path to ISC DLV key */
 bindkeys-file "/etc/named.iscdlv.key";
 managed-keys-directory "/var/named/dynamic";
 pid-file "/run/named/named.pid";
 session-keyfile "/run/named/session.key";
 };

logging {
 channel default_debug {
 file "data/named.run";
 severity dynamic;};
 };
 
//此文件内定义了全球13台根DNS服务器的IP地址
 zone "." IN {
 type hint;
 file "named.ca";
 };
//此文件保存着正向与反向解析的区域信息,非常的重要。
 include "/etc/named.rfc1912.zones";
 include "/etc/named.root.key";

配置正向解析

在区域配置文件中加入要解析的域
vim /etc/named.rfc1912.zones

zone "wsfnk.com" IN {
 type master;
 file "wsfnk.com.zone";
 allow-update {none;};
 };

将模板区域文件修改区域配置文件(注意cp时务必加上-a参数)
cp -a /var/named/named.localhost /var/named/wsfnk.com.zone
修改模板区域文件
vim /var/named/wsfnk.com.zone

$TTL 1D     #生存周期为1天
@     IN SOA     wsfnk.com.     root.wsfnk.com.     (
 #授权信息开始:     #DNS区域的地址     #域名管理员的邮箱(不要用@符号)
                 0;serial     #更新序列号
                 1D;refresh     #更新时间
                 1H;retry     #重试延时
                 1W;expire     #失效时间
                 3H;minimum     #无效解析记录的缓存时间
             NS       ns.wsfnk.com.     #域名服务器记录
             MX 10     mail.wsfnk.com.     #邮箱交换记录(这种域名形式的要放在前面)
ns       IN A     192.168.1.110     #地址记录(ns.wsfnk.com.)
mail     IN A     192.168.1.110     #地址记录(mail.wsfnk.com.)
www      IN A     192.168.1.110     #地址记录(www.wsfnk.com.)
bbs      IN A     192.168.1.1     #地址记录(bbs.wsfnk.com.)

检查配置有无语法错误

重启named服务
systemctl restart named-chroot



配置反向解析

在主配置文件里加入下面几行
vim /etc/named.rfc1912.zones

//注意下面的写法是倒着写的,还有只是一个网段
 zone "1.168.192.in-addr.arpa" IN {
 type master;
 file "192.168.1.zone";
 allow-update {none;};
 };

将反向解析的模板文件复制为192.168.1.zone

cp /var/named/named.loopback /var/named/192.168.1.zone
vim /var/named/192.168.1.zone

$TTL 1D
@     IN SOA     wsfnk.com.     root.wsfnk.com.     (
                   2016082603;serial
                   1D;refresh
                   1H;retry
                   1W;expire
                   3H);minimum
         NS     ns.wsfnk.com.
ns      A     192.168.1.110
110     PTR     ns.wsfnk.com.     #PTR为指针记录,仅用于反向解析中。前面的110表示192.168.1.110
1       PTR     mail.wsfnk.com.
1       PTR     www.wsfnk.com.

#最后重要的一点
chown :named /var/named/192.168.1.zone


配置从DNS服务器
1:在主服务器的区域信息文件中允许该从服务器的更新请求,并重新加载配置文件。
2:在从服务器中填写主服务器地址与要抓取的区域信息,并重新加载配置文件。
3:在从服务器中查看/var/named/slaves目录或使用nslookup验证试验结果。
第一步:将/etc/named.conf配置文件与主DNS服务器一样修改配置

第二步:并在主DNS服务器上允许更新
allow-update { 允许更新区域信息的主机地址;};

主DNS:如下操作vim /etc/named.rfc1912.zones

zone "wsfnk.com" IN {
type master;
file "wsfnk.com.zone";
allow-update { 192.168.1.105; };
};

zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.zone";
allow-update { 192.168.1.105; };
};

从DNS:如下操作vim /etc/named.rfc1912.zones

zone "wsfnk.com" IN {
type slave;
masters { 192.168.1.110; };
file "slaves/wsfnk.com.zone";
};

zone "1.168.192.in-addr.arpa" IN {
type slave;
masters { 192.168.1.110; };
file "slaves/192.168.1.zone";
};

重启named服务之前,请确保dns为自身ip,
并使用named-checkconf检查主配置文件有无错误
检查区域配置文件是否有错误named-checkzone wsfnk.com.zone /var/named/wsfnk.com.zone
rndc status named.service
rndc reload
rndc flush
从DNS启动后查看/var/named/slaves目录下有没有
子域文件(有的话那就是同步成功咯)


配置缓存服务器(不需存在zone文件,通常用于加速,若client的DNS指向缓存服务器,则由缓存服务器代为查询)
vim /etc/named.conf
将监听IP端口与允许查询主机修改为any,再添加一行”forwarders { 上游DNS服务器地址; };”
上游DNS服务器地址指的是从何处取得区域数据文件,主要对比查询速度、稳定性、安全性等因素。
本次使用南昌移动DNS服务器:”211.141.90.68″,请读者选择前先Ping下能否通信,否则可能会导致解析失败!!

forwarders { 211.141.90.68; };
重启DNS服务器
dig 工具

dig -t A www.wsfnk.com    #解析A记录
dig -t A www.wsfnk.com    @211.141.90.68 #解析A记录
dig -t MX wsfnk.com -p 5353  #使用非标准端口5353,解析MX记录
dig -t MX wsfnk.com -p 443  #使用非标准端口443,解析MX记录
dig -t NS boke.wsfnk.com    #解析NS记录(解析权威DNS)
dig -x 211.141.90.68    #反向解析
dig +trace  -t A boke.wsfnk.com    #跟踪解析过程
dig +short -t A baidu.com  #简要输出
dig -t A boke.wsfnk.com -b 192.168.1.2  #使用特定主机地址做dns解析
dig -t MX wsfnk.com +tcp  #使用tcp协议进行解析
rndc status
rndc flush    #清空DNS缓存

检查正反向区域解析库文件配置

    named-checkzone "test.com" /var/named/test.com.zone
    named-checkzone "1.168.192.in.addr.arpa" /var/named/192.168.1.zone
声明:本文为原创,作者为 辣条①号,转载时请保留本声明及附带文章链接:https://boke.wsfnk.com/archives/57.html

最后编辑于:2019/6/3作者: 辣条①号

暂无评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注