Centos使用Bind搭建DNS服务器

一:安装bind

[root@localhost ~]# yum -y install bind*

二:修改主配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
[root@localhost ~]# cp /etc/named.conf /etc/named.conf.bak  # 修改之前先备份一遍
[root@localhost ~]# vi /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";

三:自定义域名解析配置

1
2
3
4
5
6
7
[root@localhost ~]#  vi /etc/named.rfc1912.zones  # 比如我们要添加yumaozdy.com这个域的解析可以添加下面这一段

zone "yumaozdy.com" IN { // 定义要解析主域名
type master;
file "yumaozdy.com.zone"; // 具体相关解析的配置文件保存在 /var/named/yumaozdy.com.zone 文件中

};

四:自定义yumaozdy.com.zone文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@ns named]# vi /var/named/yumaozdy.com.zone 

全文如下:
$TTL 86400
@ IN SOA ns.yumaozdy.com. root (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
0 ) ; minimum

@ IN NS ns.yumaozdy.com.
ns IN A 127.0.0.1
www.yumaozdy.com. IN A 192.168.3.199
yumaozdy.com. IN A 192.168.3.199

// 其中 ns.yumaozdy.com 代表当前dns服务器名称。所以 ns.yumaozdy.com 一定要解析到自己本身
www.yumaozdy.com. IN A 192.168.3.199 // 代表 www.yumaozdy.com 解析到192.168.3.199服务器上。其他的类似

五:修改权限

[root@ns named]# chown root:named /var/named/yumaozdy.com.zone # 这一步一定要做

六:重启服务

[root@dns_server named]# service named restart

七:关闭selinux(略)

八:添加防火墙规则

1
2
3
4
5
vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 953 -j ACCEPT
1
2
添加规则,并且保存(注意位置)
service iptables restart

九:测试

1
2
3
4
vim /etc/resolv.conf
内容如下:
options timeout:1 attempts:1 rotate
nameserver 127.0.0.1
1
2
3
4
5
测试DNS服务,本例在本机上测试,也可在其他电脑上测试,

修改DNS服务的ip地址即可(命令:vim /etc/resolv.conf ),

然后使用命令dig(命令:dig www.yumaozdy.com)测试

其他命令

1
rndc flush    //清除dns缓存

评论