利用BIND搭建自己的私有根及授权域

这篇文章是对之前博客写的DNS的再深一层的搭建,其中包括搭建私有根,还有顶级域以及授权子域,转发域,反向解析等等

上一篇DNS的博客链接:http://www.cnblogs.com/hjc4025/p/6708314.html

这是我自己用word画的图片,比较难看,但大体阐述了我搭建的层次

在以下的内容中都是笔者自己对DNS的理解,可能会有一定的错误

一:搭建平台及IP选定:

在VMware上使用的Centos6.7 64位

bind:使用的BIND9.8版本

.(根):192.168.32.199

.com:192.168.32.150

hanjiacheng.com的主:192.168.32.128

hanjiacheng.com的从:192.168.32.129

fin.hanjiacheng.com:192.168.32.130

里面的一些没用授权的子域名对应的IP,都是笔者自己瞎写测试用的。

二:配置文件:

1. 根的配置文件

.(根)的named.conf文件:

options {
        directory "/var/named";
        allow-recursion { 192.168.32.0/24; };
};
 
zone "." IN {
        type master;
        file "named.zone";
};

zone "32.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.32.zone";
};
 
zone "localhost" IN {
        type master;
        file "named.localhost";
};
 
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "named.loopback";
};

 .(根)的/var/named/named.zone文件

$TTL 600
.               IN      SOA     ns.root ns.root (
                                1
                                1H
                                5M
                                2D
                                6H )
.               IN      NS      ns.root.
ns.root         IN      A       192.168.32.199
net             IN      A       192.168.32.233

com             IN      NS      ns.com
ns.com          IN      A       192.168.32.150

 .(根)的/var/named/192.168.32.zone文件

$TTL 600
@               IN      SOA     ns.root ns.root (
                                1
                                1H
                                5M
                                2D
                                6H )
                IN      NS      ns.root.
                IN      NS      ns.com.
199             IN      PTR     ns.root.
150             IN      PTR     ns.com.
233             IN      PTR     net

2.  .com的配置

.com的配置文件named.conf

options {
        directory "/var/named";
        allow-recursion { 192.168.32.0/24; };
};
 
zone "." IN {
        type hint;
        file "named.ca";
};
 
zone "localhost" IN {
        type master;
        file "named.localhost";
};
 
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "named.loopback";
};
 
zone "com" IN {
        type master;
        file "com.zone";
};
 
zone "32.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.32.zone";
};

 .com的/var/named/com.zone:

$TTL 600
com.            IN      SOA     ns      admin.com. (
                                1
                                1H
                                5M
                                2D
                                6H )
com.            IN      NS      ns.com.
ns              IN      A       192.168.32.150
jiachenghan     IN      A       192.168.32.188

hanjiacheng     IN      NS      ns1.hanjiacheng
ns1.hanjiacheng IN      A       192.168.32.128

 .com的/var/named/192.168.32.zone:

$TTL 600
@               IN      SOA     ns      admin.com. (
                                1
                                1H
                                5M
                                2D
                                6H )
                IN      NS      ns.com.
                IN      NS      ns1.hanjiacheng.com.
150             IN      PTR     ns.com.
128             IN      PTR     ns1.hanjiacheng.com.
188             IN      PTR     jiachenghan.com.

 3. hanjiacheng.com的配置文件:

hanjiacheng.com(主域名服务器)的主配置文件named.conf:

options {
        directory "/var/named";
	allow-recursion { 192.168.32.0/24; };
};
 
zone "." IN {
        type hint;
        file "named.ca";
};
 
zone "localhost" IN {
        type master;
        file "named.localhost";
	allow-transfer { none; };
};
 
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "named.loopback";
	allow-transfer { none; };
};
 
zone "hanjiacheng.com" IN {
        type master;
        file "hanjiacheng.com.zone";
	allow-transfer { 192.168.32.129; };
};
 
zone "32.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.32.zone";
	allow-transfer { 192.168.32.129; };
};

zone "com" IN {
	type forward;
	forward only;
	forwarders { 192.168.32.150; };
};

 hanjiacheng.com(主域名服务器)的区域文件:/var/named/hanjiacheng.com.zone

$TTL 600
hanjiacheng.com.	IN	SOA	ns1	admin.hanjiacheng.com. (
				3
				1H
				5M
				2D
				6H )
hanjiacheng.com.	IN	NS	ns1.hanjiacheng.com.
hanjiacheng.com.	IN	NS	ns2.hanjiacheng.com.
hanjiacheng.com.	IN	MX  10  mail.hanjiacheng.com.
ns1		IN	A	192.168.32.128
ns2		IN	A	192.168.32.129
mail		IN	A	192.168.32.77
www		IN	A	192.168.32.78
ftp		IN	CNAME	www
hehe		IN	A	192.168.32.222

fin		IN	NS	ns1.fin
ns1.fin		IN	A	192.168.32.130

 hanjiacheng.com(主域名服务器)的区域文件:/var/named/192.168.32.zone

$TTL 600
@		IN	SOA	ns1	admin.hanjiacheng.com. (
				3
				1H
				5M
				2D
				6H )
		IN	NS	ns1.hanjiacheng.com.
		IN	NS	ns2.hanjiacheng.com.
		IN	NS	ns1.fin.hanjiacheng.com.
128		IN	PTR	ns1.hanjiacheng.com.
129		IN	PTR	ns2.hanjiacheng.com.
130		IN	PTR	ns1.fin.hanjiacheng.com.
77		IN	PTR	mail.hanjiacheng.com.
78		IN	PTR	www.hanjiacheng.com.
78		IN	PTR	ftp.hanjiacheng.com.

 hanjiacheng.com(从域名服务器)的主配置文件named.conf:

options {
        directory "/var/named";
        allow-recursion { 192.168.32.0/24; };
};
 
zone "." IN {
        type hint;
        file "named.ca";
};
 
zone "localhost" IN {
        type master;
        file "named.localhost";
        allow-transfer { none; };
};
 
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "named.loopback";
        allow-transfer { none; };
};
 
zone "hanjiacheng.com" IN {
        type slave;
        file "slaves/hanjiacheng.com.zone";
        masters { 192.168.32.128; };
        allow-transfer { none; };
};
 
zone "32.168.192.in-addr.arpa" IN {
        type slave;
        file "slaves/192.168.32.zone";
        masters { 192.168.32.128; };
        allow-transfer { none; };
};
zone "com" IN {
	type forward;
	forward only;
	forwarders { 192.168.32.150; };
};

  hanjiacheng.com(域名服务器)的区域文件都是从主服务器上传送过来的,所以不需要配置区域文件

4.fin.hanjiacheng.com的配置:

fin.hanjiacheng.com的主配置文件/etc/named.conf

options {
        directory "/var/named";
	allow-recursion { 192.168.32.0/24; };
};
 
zone "." IN {
        type hint;
        file "named.ca";
};
 
zone "localhost" IN {
        type master;
        file "named.localhost";
};
 
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "named.loopback";
};
 
zone "fin.hanjiacheng.com" IN {
	type master;
	file "fin.hanjiacheng.com";
};
 
zone "32.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.32.zone";
};

zone "hanjiacheng.com" IN {
        type forward;
	forward first;
        forwarders { 192.168.32.128;192.168.32.129; };
};

 fin.hanjiacheng.com的区域配置文件/var/named/fin.hanjiacheng.com

$TTL 600
fin.hanjiacheng.com.	IN	SOA	ns1	admin.fin.hanjiacheng.com. (
				2
				1H
				5M
				2D
				6H )
fin.hanjiacheng.com.	IN	NS	ns1.fin.hanjiacheng.com.
fin.hanjiacheng.com.	IN	MX  10  mail.fin.hanjiacheng.com.
ns1		IN	A	192.168.32.130
mail		IN	A	192.168.32.22
www		IN	A	192.168.32.33
ftp		IN	CNAME	www
kkk		IN	A	192.168.32.123

 fin.hanjiacheng.com的区域配置文件/var/named/192.168.32.zone

$TTL 600
@               IN      SOA     ns1     admin.fin.hanjiacheng.com. (
                                1
                                1H
                                5M
                                2D
                                6H )
                IN      NS      ns1.fin.hanjiacheng.com.
130             IN      PTR     ns1.fin.hanjiacheng.com.
22              IN      PTR     mail.fin.hanjiacheng.com.
33              IN      PTR     www.fin.hanjiacheng.com.
33              IN      PTR     ftp.fin.hanjiacheng.com.

 5.至此配置文件就都写完了,这里一定要注意既然我们建立了私有的根域,那么一定要在每台机器上的/var/named/named.ca清空,并填写上自己的私有的根信息

使用命令:dig -t NS . @192.168.32.199 > /var/named/named.ca

这样即可,这里的信息应该如下:

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> -t NS . @192.168.32.199
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28617
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; QUESTION SECTION:
;.				IN	NS

;; ANSWER SECTION:
.			600	IN	NS	ns.root.

;; ADDITIONAL SECTION:
ns.root.		600	IN	A	192.168.32.199

;; Query time: 1 msec
;; SERVER: 192.168.32.199#53(192.168.32.199)
;; WHEN: Sat May 27 00:51:44 2017
;; MSG SIZE  rcvd: 53

 还要注意的一点就是一定要将每台机器的/etc/resolv.conf的文件里的nameserver地址更改成自己的ip地址

除此关闭防火墙,关闭selinux等一切不确定因素,并依此重启DNS服务器,每台机器执行service named restart

三、测试

下面我们随便找了一台测试机器,观察一下dig的情况:(@后面的地址可以随意的变更)

例如:

[root@localhost ~]# dig +trace -t A www.fin.hanjiacheng.com @192.168.32.128 

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> +trace -t A www.fin.hanjiacheng.com @192.168.32.128
;; global options: +cmd
.			600	IN	NS	ns.root.
;; Received 37 bytes from 192.168.32.128#53(192.168.32.128) in 9 ms

com.			600	IN	NS	ns.com.
;; Received 74 bytes from 192.168.32.199#53(192.168.32.199) in 4 ms

hanjiacheng.com.	600	IN	NS	ns1.hanjiacheng.com.
;; Received 75 bytes from 192.168.32.150#53(192.168.32.150) in 8 ms

fin.hanjiacheng.com.	600	IN	NS	ns1.fin.hanjiacheng.com.
;; Received 75 bytes from 192.168.32.128#53(192.168.32.128) in 7 ms

www.fin.hanjiacheng.com. 600	IN	A	192.168.32.33
fin.hanjiacheng.com.	600	IN	NS	ns1.fin.hanjiacheng.com.
;; Received 91 bytes from 192.168.32.130#53(192.168.32.130) in 1 ms

 例如:

[root@localhost ~]# dig -t A www.fin.hanjiacheng.com @192.168.32.150

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> -t A www.fin.hanjiacheng.com @192.168.32.128
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33879
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;www.fin.hanjiacheng.com.	IN	A

;; ANSWER SECTION:
www.fin.hanjiacheng.com. 318	IN	A	192.168.32.33

;; AUTHORITY SECTION:
fin.hanjiacheng.com.	318	IN	NS	ns1.fin.hanjiacheng.com.

;; ADDITIONAL SECTION:
ns1.fin.hanjiacheng.com. 318	IN	A	192.168.32.130

;; Query time: 1 msec
;; SERVER: 192.168.32.128#53(192.168.32.128)
;; WHEN: Sat May 27 05:41:29 2017
;; MSG SIZE  rcvd: 91

 随便测试几个就好

以上内容可能有部分错误的情况,请大家谅解,我也是个菜鸟,都是自己琢磨的,估计有很多不对的地方。

转载于:https://www.cnblogs.com/hjc4025/p/6912436.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值