DNS子域授权、view配置详解

DNS子域授权、view配置详解

子域授权:其实就是将一个比较大的域再分割成小区域,每个小区域可以交由一组或多组服务器管理,这些服务器只解析其管辖范围内的域名,超出其范围的解析请求一般会转发给父域或直接转发给根域。子域是相对而言的,对于根来说顶级域名就是它的子域,依次类推,我们这里讲提到的子域授权是针对二级域名来说的,也就是三级域名授权。

正向区域的子域授权:使用胶水记录(glue record),也就是在父域中添加一条NS记录和一条A记录即可。如果客户端的请求超出子域的解析范文,那么我们就需要定义转发服务器。

定义转发服务器:

注意:被转发的服务器需要能够为请求者做递归,否则,转发请求不予进行;

(1) 全部转发: 凡是对非本机所有负责解析的区域的请求,统统转发给指定的服务器;

Options {

forward {first|only}

fowwarders

}

(2) 区域转发:仅转发对特定的区域的请求至某服务器;

zone "ZONE_NAME" IN {

type forward;

forward {first|only}

forwarders

}

配置子域授权:

1、在父DNS服务器的区域解析库中添加如下几条记录

[root@bogon named]# vim czcedu.com.zone

23 ops IN NS ns1.ops

24 ops IN NS ns2.ops

25 ns1.ops IN A 192.168.1.107

26 ns2.ops IN A 192.168.1.108

2、在子域DNS服务器的区域文件中添加子域定义

[root@bogon ~]# vim /etc/named.rfc1912.zones

60 zone "ops.czcedu.com." IN {

61 type master;

62 file "ops.czcedu.com.zone";

63 };

3、编辑子域服务器的区域解析库文件

[root@bogon named]# vim ops.czcedu.com.zone

1 $TTL 1d

2 $ORIGIN ops.czcedu.com.

3 @ IN SOA ns1.ops.czcedu.com. admin.ops.czcedu.com. (

4 2015042701

5 1H

6 10M

7 1W

8 1D )

9 IN NS ns1

10 IN NS ns2

11 ns1 IN A 192.168.1.107

12 ns2 IN A 192.168.1.108

13 www IN A 172.16.200.1

14 mail IN CNAME www

15 ops.czcedu.com A 192.168.1.107

16 * IN A 192.168.1.107

[root@bogon named]# dig -t A www.ops.czcedu.com @192.168.1.107 #测试子域解析是否正确 这里在父域和子域解析都是正确的

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -t A www.ops.czcedu.com @192.168.1.107

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31108

;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:

;www.ops.czcedu.com. IN A

;; ANSWER SECTION:

www.ops.czcedu.com. 86400 IN A 172.16.200.1

;; AUTHORITY SECTION:

ops.czcedu.com. 86400 IN NS ns1.ops.czcedu.com.

ops.czcedu.com. 86400 IN NS ns2.ops.czcedu.com.

;; ADDITIONAL SECTION:

ns1.ops.czcedu.com. 86400 IN A 192.168.1.107

ns2.ops.czcedu.com. 86400 IN A 192.168.1.108

;; Query time: 5 msec

;; SERVER: 192.168.1.107#53(192.168.1.107)

;; WHEN: Fri Apr 24 13:02:47 2015

;; MSG SIZE rcvd: 120

4、在子域服务器中添加转发服务器将对父域的解析请求转发给父域服务器

[root@bogon named]# vim /etc/named.conf

44 zone "czcedu.com" IN {

45 type forward;

46 forward only;

47 forwarders { 192.168.1.108; };

48 };

5、测试解析父域成功

Bind中基础的安全相关的配置:

acl: (访问控制列表)把一个或多个地址归并为一个集合,并通过一个统一的名称调用;

acl acl_name {

ip;

ip;

net/prelen;

};

示例:

acl mynet {

172.16.0.0/16;

}

bind有四个内置的acl:

none: 没有一个主机;

any: 任意主机;

local: 本机;

localnet: 本机的IP同掩码运算后得到的网络地址

Bind中的view实现:

View的主要作用是将来自不同网络的主机分发到不同网段的服务器上,以提高访问速度降低服务器压力。就以我们国家情况为例,电信和网通用户之间的访问带宽是非常小的,但是它们内部的访问带宽却非常大,所以我们可以将对同一域名的访问通过DNS分发到不同的IP之上,那么就可以实现电信用户访问电信的服务器,联通用户访问联通的服务器,这甚至也是CDN(内容分发网络)的一种解决方法,但是CDN还可以实现将对同一域名的访问只解析到一个IP之上,但是拥有这个IP的服务器不做任何内容的反馈,只是将来自不同区域的IP调度到不同区域的缓存服务器上,这样可以实现高并发高速率的响应用户请求,后续的博客中也会提到。

配置view:

1、在DNS服务器中定义acl

2、定义区域文件view

[root@bogon named]# vim /etc/named.rfc1912.zones

13 view internel { #定义内网访问策略

14 match-clients { mynet; };

15 allow-recursion { mynet; }; #仅允许内网做递归请求

16

17 zone "." IN { #可以做递归请求的网段才需要根提示

18 type hint;

19 file "named.ca";

20 };

21

22 zone "localhost.localdomain" IN {

23 type master;

24 file "named.localhost";

25 allow-update { none; };

26 };

27

28 zone "localhost" IN {

29 type master;

30 file "named.localhost";

31 allow-update { none; };

32 };

33

34 zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {

35 type master;

36 file "named.loopback";

37 allow-update { none; };

38 };

39

40 zone "1.0.0.127.in-addr.arpa" IN {

41 type master;

42 file "named.loopback";

43 allow-update { none; };

44 };

45

46 zone "0.in-addr.arpa" IN {

47 type master;

48 file "named.empty";

49 allow-update { none; };

50 };

62

63 zone "czcedu.com." IN {

64 type master;

65 file "czcedu.com.zone"; #定义内网解析库文件

66 allow-update { none; };

67 };

74 };

75

76 view internet { #定义外网视图

77 match-clients { internet;};

78 allow-recursion { none; }; #不可做递归请求

79

80 zone "czcedu.com." IN {

81 type master;

82 file "czcedu.com.internet"; #定义外网解析库文件

83 allow-update { none; };

84 };

85 };

3、创建两个解析库文件

4、从不同客户端发出的DNS查询请求返回不同的IP

好了,到此为止我们DNS服务器的应用就告一段落了,如有错误敬请指正。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏吴伟祥

什么是 WinSCP 转

WinSCP 是一个 Windows 环境下使用的 SSH 的开源图形化 SFTP 客户端。同时支持 SCP 协议。它的主要功能是在本地与远程计算机间安全地复制...

1781
来自专栏小白安全

Burpsuite插件的使用

Burp插件的使用 使用准备 Burpsuite可以使用三种语言编写的扩展插件,Java、Python和Ruby。除Java外,其它两种需要的扩展...

3034
来自专栏郑家乐的专栏

多版本 Node.js 使用 Workflow

NodeJS 成为新一届的版本帝后,需要预编译的模块常常更新不够及时,就会出现我这样上班时间搞环境 ,那么如何保持一机多版本继续使用低版本的 NodeJS 运行...

3200
来自专栏北京马哥教育

十二条Linux运维面试必备经典笔试/面试题,来挑战一下!

又到了一年一度的秋招,作为运维方向,看了一些面经,收集了一些笔试面试题,总结了一下,贴出来仅供参考,有错误的地方还请指出. 1.Linux设置环境变量 暂时的:...

5149
来自专栏SDNLAB

脱坑神器,让你一步了解ODL控制器集群

一、控制器集群基本知识 1.1 Consensus一致性 Consensus一致性是指多个服务器在状态达成一致,但是在一个分布式系统中,因为各种意外可能,有的...

4757
来自专栏进击的程序猿

raft 系列解读(2) 之 测试用例raft 系列解读(2) 之 测试用例

基于mit的6.824课程,github代码地址:https://github.com/zhuanxuhit/distributed-system

1532
来自专栏破晓之歌

webpack项目初始化和基于模块的脚手架搭建

http://localhost:8088/dist/view/index.html

1121
来自专栏前端萌媛的成长之路

一波webpack

1924
来自专栏Brian

Linux 系统优化

概述 在Linux 学习笔记一大体介绍了一些简单的Linux知识和一些简单的优化。下面我们来学习一下Linux和Linux一些安全知识(Linux是基于内核为...

4736
来自专栏龙首琴剑庐

基于复杂方案OWSAP CsrfGuard的CSRF安全解决方案(适配nginx + DWR)

1、什么是CSRF? 已经有很多博文讲解其过程和攻击手段,在此就不重复了。 O(∩_∩)O 不清楚的同学,请自行搜索或按链接去了解: http://blog...

5047

扫码关注云+社区

领取腾讯云代金券