centos7搭建DNS服务器

By | 2017年2月17日
目录
[隐藏]

一、安装

系统OS:

[root@node6 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)

服务器保证时间准确,安装ntp服务

yum install ntp

启动服务

systemctl enable ntpd.service

systemctl start ntpd.service

几分钟之后时间就会同步。

DNS服务器安装方法:
yum -y install bind*

二:修改主配置文件

修改之前先进行备份

[root@node6 ~]# cp /etc/named.conf /etc/named.conf.bak

[root@node6 ~]# vim /etc/named.conf

options {
listen-on port 53 { any; }; // 监听在主机的53端口上。any代表监听所有的主机
directory       "/var/named"; // 如果此档案底下有规范到正反解的zone file 档名时,该档名预设应该放置在哪个目录底下
// 下面三项是服务的相关统计信息
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";
allow-query     { any; }; // 谁可以对我的DNS服务器提出查询请求。any代表任何人
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
forwarders { // 指定上层DNS服务器
192.168.1.1;
};
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

三、 自定义域名解析配置


[root@localhost ~]#  vi /etc/named.rfc1912.zones  # 比如我们要添加xiaohuait.com这个域的解析可以添加下面这一段
zone "xiaohuait.com" IN {    // 定义要解析主域名
type master;
file "xiaohuait.com.zone";  // 具体相关解析的配置文件保存在 /var/named/xiaohuait.com.zone 文件中
};

四、自定义xiaohuait.com.zone文件

文件目录一定是/var/named/目录,开始搭建的时候选择了/etc/named,总是提示找不到文件,服务起不来。

[root@ns named]# vim /var/named/xiaohuait.com.zone
全文如下:
$TTL 86400
@       IN SOA          ns.xiaohuait.com. root (
1       ; serial
1D      ; refresh
1H      ; retry
1W      ; expire
0 )     ; minimum
@       IN      NS      ns.xiaohuait.com.
ns      IN      A       192.168.1.219
www     IN      A       192.168.1.45
bbs     IN      A       192.168.1.46
ttt     IN      A       192.168.1.68

// 其中ns.xiaohuait.com 代表当前dns服务器名称。所以  ns.xiaohuait.com 一定要解析到自己本身

www     IN      A       192.168.1.45  // 代表 www.yumaozdy.com 解析到  192.168.1.45服务器上。其他的类似

五、修改权限

[root@node6 ~]# chown root.named /var/named/xiaohuait.com.zone

六、重启服务

[root@node6 named]# systemctl restart named.service

日志文件在message文件中,由于是局域网内非法DNS,所以日志会有好多报错,可以修改named.conf配置文件为No

dnssec-enable no;
dnssec-validation no;

七、新增域名解析

如果我们要追加一个域的解析。比如google.com 则:

[root@node6 named]# vim /etc/named.rfc1912.zones
zone "google.com" IN {
type master;
file "google.com.zone";
};


[root@node6 named]# vim /var/named/google.com.zone
$TTL 86400
@       IN SOA          ns.google.com. root (
1       ; serial
1D      ; refresh
1H      ; retry
1W      ; expire
0 )     ; minimum
@       IN      NS      ns.google.com.
ns      IN      A       192.168.57.12
www     IN      A       61.91.161.217
bbs     IN      A       192.168.1.46
ttt     IN      A       192.168.1.68

供外部使用时关闭防火墙

[root@node6 named]# systemctl stop firewalld.service

或者开放端口

[root@node6 named]# firewall-cmd --zone=public --add-port=53/tcp --permanent
[root@node6 named]# firewall-cmd --zone=public --add-port=53/udp --permanent
[root@node6 named]# firewall-cmd --zone=public --add-port=953/tcp --permanent

命令含义:
–zone #作用域
–add-port=80/tcp  #添加端口,格式为:端口/通讯协议
–permanent   #永久生效,没有此参数重启后失效
重启防火墙
[root@node6 named]# firewall-cmd --reload

发表评论

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