您的位置:首页 > 运维架构 > Linux

linux下搭建DNS服务器

2014-04-07 15:49 507 查看
搭建DNS服务

一、yum install -y bind
cp /etc/named.conf /etc/named.conf.bak
> /etc/named.conf
vim /etc/named.conf 加入下面内容:
options {
directory "/var/named";
};

zone "." IN {
type hint;
file "named.ca";
};

zone "localhost" IN {
type master;
file "localhost.zone";
};

zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
};

cd /var/named
dig -t NS . > named.ca
vim named.local 加入下面内容:
$TTL 86400
@ IN SOA localhost. admin.localhost. (
2013081601
1H
10M
7D
1D
)
@ IN NS localhost.
1 IN PTR localhost

vim localhost.zone 加入下面内容:
$TTL 86400
@ IN SOA localhost. admin.localhost. (
2013081601
1H
10M
7D
1D
)
@ IN NS localhost.
localhost. IN A 127.0.0.1
保存退出:wq
l检测配置是否有问题: named-checkconf
检测正解析: named-checkzone "localhost" /var/named/localhost.zone //出现ok正确;
检测反解析: named-checkzone "0.0.127.in-addr.arpa" /var/named/named.local //出现OK正确;
rndc-confgen -r /dev/urandom -a // 这一步是生成rndc.key,如果没有这个keynamd是启动不了的。
chown named named/etc/rndc.key
/etc/init.d/named start
首先测试正向解析:dig @127.0.0.1 localhost.
接着测试反解析:dig @127.0.0.1 -x 127.0.0.1

二、加入一个域名
我以abc.com这个域名为例
vim /var/named/abc.com.zone 加入下面内容:

$TTL 600
@ IN SOA abc.com. root.abc.com. (
2013081601
1H
10M
7D
1D
)
IN NS ns1.abc.com.
IN NS ns2.abc.com.
IN MX 10 mail.abc.com.
ns1 IN A 192.168.174.10
ns2 IN A 192.168.174.11
www IN A 192.168.174.88
mail IN A 192.168.174.10
bbs IN CNAME www.abc.com.

#vim /var/named/192.168.zone 加入下面内容(这个是反向解析):

$TTL 600
@ IN SOA ns1.abc.com. root.abc.com. (
2013081601
1H
10M
7D
1D
)
@ IN NS ns1.abc.com.
IN NS ns2.abc.com.
10 IN PTR ns1.abc.com.
11 IN PTR ns2.abc.com.
11 IN PTR mail.abc.com.
73 IN PTR www.abc.com.

修改 named.conf 配置文件: vim /etc/named.com 在最后面加入现在内容:zone "abc.com" IN {
type master;
file "abc.com.zone";
};

zone "174.168.192.in-addr.arpa" IN {
type master;
file "192.168.zone";
};
l分别检测两个配置文件是否有问题:
lnamed-checkzone "abc.com" abc.com.zone //出现OK正确;
lnamed-checkzone "174.168.192.in-addr.arpa" 192.168.zone //出现OK正确;
l重启named服务,测试dig @127.0.0.1 www.abc.com
ldig @127.0.0.1 -x 192.168.137.11
三、配置DNS转发vim /etc/named.conf //在options{} 里面增加
forward first;
forwarders { 8.8.8.8; };

四、配置主从从dns主服务器上复制以下三个文件:copy:/etc/named.conf /var/named/localhost.zone /var/named/named.local vim /etc/named.conf 修改成下面的内容:options {
directory "/var/named";
};

zone "." IN {
type hint;
file "named.ca";
};

zone "localhost" IN {
type master;
file "localhost.zone";
};

zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
};

zone "abc.com" IN {
type slave;
file "slaves/abc.com.zone";
masters { 192.168.0.11; }; //这里的ip为主服务器的地址;
};

zone "137.168.192.in-addr.arpa" IN {
type slave;
file "slaves/192.168.zone";
masters { 192.168.0.11; }; //这里的ip为主服务器的地址;
};
rndc-confgen -r /dev/urandom -a //生成一个启动key;
chownnamed:named /etc/rndc.key
在从服务器启动上named: /etc/init.d/named start
启动成功后会在/var/named/下生成一个slaves目录,这个目录下有192.168.zone, abc.com.zone这两个文件,内容是和主上的一样的 //如果发现 slaves目录下没有生成这两个文件,先查看named.conf里配置的主服务器的ip地址有没有错,然后再 看selinux有没有关闭,如果还是不行,就把iptables关闭,(关闭方法:/etc/init.d/iptables stop)或者也可以用规则开通53端中;在从服务器上测试: dig @127.0.0.1 www.abc.com

测试主从同步在主上修改abc.com.zone 一定要修改编号,必须往大的写
在从服务器上的named.conf 中,abc.com的zone中添加
notifyyes;
also-notify { 192.168.0.12; };
启动查看是否一样!

本文出自 “浅浅的淡淡” 博客,谢绝转载!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: