DNS访问控制和智能DNS

DNS的管理功能

你是不是有这样的想法,只想让某个IP或者某个IP端的地址进行访问,实现访问控制功能。DNS服务给我们提供了很好的解决方法。

1、选项

|
|allow-query {};| 允许查询的主机,相当于白名单
|allow-transfer {};|允许区域传送的主机
|allow-recursion{};|允许递归的主机,这个选项建议在options中使用
|allow-update{};|允许更新区域数据库中的内容

2、acl

acl:是把某个IP或IP端合并为一个集合,通过一个统一的名称调用;可以把这个理解为bash函数的功能。

(1)acl内置的选项

|
|none|没有一个主机|
|any|任意主机|
|localhost|本机|
|localnet|本机的IP同掩码运算后得到的网络地址|

注意:acl只能先定义再使用;建议一般定义再options的前面。

(2)示例

[root@localhost ~]# vim /etc/named.conf

重新启动服务然后在本机测试
[root@localhost ~]# dig www.test.com @127.0.0.1

由于我们设置了acl功能,所有本机也不能访问了。实现我们的预期效果。

view

大家小时候去网吧的时候有没有遇到这样一个问题,如果你玩问道在电信1玩,而你的网络是联通的网络,这样开始玩游戏的过程中,我们的屏反应会迟钝,频很高;但是网络提供一个网络转 大专栏  DNS访问控制和智能DNS换程序,如果你切换到电信网络,问道游戏运行流畅;这相当于我们这里view的功能。实现只能DNS解析,不过不需要我们手动切换网络。

(1)一个bind服务器可以定义多个view;每个view可以定义多个zone。每个view匹配一组客户端。

(2)如果多个view对同一个zone进行解析时,使用不同的zone解析库文件。

实战

如果我们在北京和广州有两台DNS服务器,北京和广州用户通过访问www.test.com的时候,我希望北京访问直接在北京DNS解析并返回,广州与它相同,如何实现嗯?

在一台由于我电脑有两个不同的IP段,在一台机器上实现这个功能

(a)修改/etc/named.conf文件


(b)创建/etc/named.rfc1912.zones.test/etc/named.rfc1912.zones.app分别修改

(3)创建zone文件 /var/named/app.com.zone/var/named/app.com.zone分别修改

(4)重启dns服务
[root@localhost named]# service named restart

在Clinet客户机上测试(IP 192.168.4.148和172.18.253.86)

猜你喜欢

转载自www.cnblogs.com/liuzhongrong/p/12289571.html
DNS