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

centos6.5环境DNS-本地DNS服务器bind的搭建

2016-09-14 12:37 645 查看
centos6.5环境DNS-本地DNS服务器bind的搭建

域名系统(英文:Domain Name System,缩写:DNS)是因特网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。DNS 使用TCP和UDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

开始时,域名的字符仅限于ASCII字符的一个子集。2008年,ICANN通过一项决议,允许使用其它语言作为互联网顶级域名的字符。使用基于Punycode码的IDNA系统,可以将Unicode字符串映射为有效的DNS字符集。因此,诸如“x.台湾”这样的域名可以在地址栏直接输入,而不需要安装插件。但是,由于英语的广泛使用,使用其他语言字符作为域名会产生多种问题,例如难以输入,难以在国际推广等。

BIND(Berkeley InternetName Daemon)是现今互联网上最常使用的DNS服务器软件,使用BIND作为服务器软件的DNS服务器约占所有DNS服务器的九成。BIND现在由互联网系统协会(Internet Systems Consortium)负责开发与维护。

我们使用的DNS软件就是BIND。

实验环境:

CentOS release 6.5(Final) 两台

IP地址:

192.168.3.17 DNS1 DNS服务器端

192.168.3.18 DNS2 测试机

我们要架设一个本地DNS服务器一般需要下面三个软件程序包:

bind-libs.x86_64 #提供库文件

bind-utils.x86_64 #提供工具包

bind.x86_64 #提供主程序包

我还没使用安全套件,所以没有使用bind-chroot程序包。

chroot 环境为了系统的安全性考虑,一般来说目前各主要 distributions 都已经自动的将你的 bind 相关程序给他 chroot 了。

一.安装bind程序包

使用yum源安装:

yum install -y bind-libs bind-utils bind.x86_64

检查安装情况:

rpm -qa bind*

bind-libs-9.8.2-0.47.rc1.el6.x86_64

bind-utils-9.8.2-0.47.rc1.el6.x86_64

bind-9.8.2-0.47.rc1.el6.x86_64

二.配置Bind

Bind的配置文件存放在/etc/目录下:

/etc/named.conf #主配置文件

/etc/named.rfc1912.zones #正反向区域文件

我们首先配置主配置文件:/etc/named.conf

cat /etc/named.conf

===========================================================================

options {

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";

allow-query { any; };

recursion yes;

dnssec-enable no;

dnssec-validation no;

dnssec-lookaside no;

/* Path to ISC DLV key */

/*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";

};

zone "0.0.127.in-addr.arpa" IN {

type master;

file "named.loopback";

allow-transfer { none; };

};

zone "chinasoft.com." IN {

type master;

file "chinasoft.com.zone";

};

zone "3.168.192.in-addr.arpa" IN {

type master;

file "3.168.192.zone";

};

include "/etc/named.rfc1912.zones";

include "/etc/named.root.key";

===========================================================================

配置文件中的三个文件named.ca、named.localhost、named.loopback上面已经提供有一个了named.ca了、还有这两个named.localhost、named.loopback、同样我们也得提供、也是在/var/named目录下创建:

# vim /var/named/named.localhost

$TTL 86400 ;定义宏

@ IN SOA localhost admin.localhost. (

2014031101 ;序列号

2H ;刷新时间

10M ;失败时重试间隔时间

7D ;过期时间

1D) ;否定答案的时间

IN NS localhost.

localhost. IN A 192.168.3.1

================================

$TTL 86400

@ IN SOA localhost admin.localhost. (

2014031101 ;

2H ;

10M ;

7D ;

1D) ;

IN NS localhost.

localhost. IN A 192.168.3.1

================================

然后复制一份改写named.loopback的文件:

# cp /var/named/named.localhost /var/named/named.loopback

# vim named.loopback

$TTL 86400

@ IN SOA localhost admin.localhost. (

2014031101

2H

10M

7D

1D )

IN NS localhost.

1 IN PTR localhost.



三.区域解析库文件配置

1.区域解析库文件的简要说明:

常见的正解文件 RR 相关信息

[domain] IN [[RR type] [RR data]]

主机名. IN A IPv4 的 IP 地址

主机名. IN AAAA IPv6 的 IP 地址

区域名. IN NS 管理这个领域名的服务器主机名字.

区域名. IN SOA 管理这个领域名的七个重要参数(如上说明)

区域名. IN MX 顺序数字 接收邮件的服务器主机名字

主机别名. IN CNAME 实际代表这个主机别名的主机名字.

单位:W=周、D=日、H=小时、M=分钟。

$TTL 86400 宏定义全局TTL时间

@ IN SOA ns.chinasoft.com. root ( # ns.chinasoft.com. 是DNS服务器的名称

0 ; serial (d. adams) 仅作为序列号而已

1D ;refresh 服务器的更新时间

15M ; retry 重新更新时间间隔

1W ; expiry 多久之后宣布失败

1H ) ;minimum 相当于缓存记忆时间

@ IN NS ns.chinasoft.com.

@ IN MX 5 mail.chinasoft.com.(5为优先级别)

ns IN A 172.16.31.3

www IN A 172.16.31.3

www IN A 172.16.31.3

mail IN A 172.16.31.3

2.配置正向解析库文件:

vim /var/named/chinasoft.com.zone

$TTL 43200 #定义宏,通用变量,单位为秒

@ IN SOA dns.chinasoft.com admin.chinasoft.com. (

2014031101 ; #序列号

2H ; #刷新时间

10M ; #失败重试时间

7D ; #过期时间

1D) ; #否定答案时间

@ IN NS dns

@ IN MX 10 mail

dns IN A 192.168.3.17

mail IN A 192.168.3.10

www IN A 192.168.3.11

pop IN CNAME mail #mail别名

ftp IN CNAME www #www别名

3.配置反向解析库文件:

vim /var/named/3.168.192.zone

$TTL 43200

@ IN SOA dns.chinasoft.com. admin.chinasoft.com. (

2014031202

2H

10M

7D

1D )

IN NS dns.chinasoft.com.

87 IN PTR dns.chinasoft.com.

10 IN PTR mail.chinasoft.com.

11 IN PTR www.chinasoft.com.



四.更改目录权限及属组

cd /var/named

更改文件属组:

chown :named chinasoft.com.zone

chown :named 3.168.192.zone

更改文件权限:

chmod 640 chinasoft.com.zone

chmod 640 3.168.192.zone

检查防火墙,selinux状态:

service iptables status

iptables: Firewall is not running.

getenforce

Disabled

检测区域解析库配置文件语法:

named-checkzone "chinasoft.com" chinasoft.com.zone

zone chinasoft.com/IN: loaded serial 2014121001

OK

五.启动服务

service named restart

这两个配置好之后还要改一下你的NDS服务器的指向、编辑/etc/resolv.conf:

# vim /etc/resolv.conf

domain chinasoft.com

search chinasoft.com

nameserver 192.168.3.86

六.测试DNS服务器的域信息是否正常:

dig命令:

测试正向区域解析情况:

# dig -t SOA chinasoft.com @192.168.3.17

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6 <<>> -t SOA chinasoft.com @192.168.3.17
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20339
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;chinasoft.com.			IN	SOA

;; ANSWER SECTION:
chinasoft.com.		43200	IN	SOA	dns.chinasoft.com.chinasoft.com. admin.chinasoft.com. 2014031101 7200 600 604800 86400

;; AUTHORITY SECTION:
chinasoft.com.		43200	IN	NS	dns.chinasoft.com.

;; ADDITIONAL SECTION:
dns.chinasoft.com.	43200	IN	A	192.168.3.17

;; Query time: 0 msec
;; SERVER: 192.168.3.17#53(192.168.3.17)
;; WHEN: Tue Sep 13 10:49:41 2016
;; MSG SIZE  rcvd: 125


测试反向区域解析情况:

dig -x 192.168.3.11

报错:

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6 <<>> -x 192.168.3.11

;; global options: +cmd

;; connection timed out; no servers could be reached

修改:/etc/named.conf

修改下面两个句子

options {

listen-on port 53 { 192.168.3.17; }; (我就是在这里出问题的默认此处是127.0.0.1,就是因为没把此次IP改为本机IP所以一直解析不到)

allow-query { any; }; (这里可能也要改默认是localhost)



host命令:

检测正向解析库;

# host -t A www.chinasoft.com 192.168.3.17
Using domain server:
Name: 192.168.3.17
Address: 192.168.3.17#53
Aliases:
www.chinasoft.com has address 192.168.3.11


检测反向解析库:

# host -t ptr 192.168.3.11 192.168.3.17

Using domain server:

Name: 192.168.3.17

Address: 192.168.3.17#53

Aliases:

11.3.168.192.in-addr.arpa domain name pointer www.chinasoft.com.

# host -t ptr 192.168.3.10 192.168.3.17

Using domain server:

Name: 192.168.3.17

Address: 192.168.3.17#53

Aliases:

10.3.168.192.in-addr.arpa domain name pointer mail.chinasoft.com.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: