ACL:

作用:限制允许给哪些客户端进行区域传送,针对允许传送的主机较多的时候

acl的定义方式:

acl "ACL-NAME" {

10.0.0.0/8;

172.16/16;

};

acl中的元素:

1、可以是IP

2、也可以是CIDR 网络地址:如172.16.0.0/16

ACL应该先定义后使用,要放在配置文件中的最上方。

acl "localnetwork" { ;

127/8;

172.16/16;

};

 

下面就可以在全局配置中定义给谁递归了;

allow-query{ localnetwork; };

检测语法错误,重启服务即可。

 

VIEW:

view视图的功能:可以将一个域划分成不同的数据文件,每一个数据文件只响应一类特定用户的请求,当用户查询请求发送过来的时候,先去判断用户的地址属于哪一类,再根据地址的不同匹配到不同的数据文件,再根据不同的区域响应用户的请求。

只要定义了一个view ,所有的zone都只能定义在view中。

view 的次序很关键。

view 的格式:

view "view_name"{

match-clients { 172.16.0.0/16;}

zone" zone_name" IN {

};

};

 

view " view-name" {

match-clients { any;}

zone "zone_name" IN {

};

};

DNS :如果需要给本地客户做递归查询

根区域只需要声明在允许递归查询的客户端列表所在的view中即可

localhost声明在匹配127/8网络客户端view中即可

 

假设服务器有连个地址:

172.16.9.1  解析本网地址,并有递归查询

192.168.0.1  其他请求都解析外网地址,没有递归查询

  

内网:172.16/16  127/8

    www.magedu.com   172.16.9.1

外网

    www.magedu.com   192.168.0.1

停止服务,为该服务器配置另外一个ip地址eth0:0为192.168.0.1

 

在主配置文件中定义view:

 

 
  
  1. acl "inner" { 
  2.  
  3.         127/8; 
  4.  
  5.         172.16/16; 
  6.  
  7. }; 
  8.  
  9. options { 
  10.  
  11.         directory "/var/named"; 
  12.  
  13. }; 
  14.  
  15. view "intra" { 
  16.  
  17.         match-clients { inner; }; 
  18.  
  19.         zone "." IN { 
  20.  
  21.             type hint; 
  22.  
  23.             file "named.ca"; 
  24.  
  25.     }; 
  26.  
  27.         zone "localhost" IN { 
  28.  
  29.             type master; 
  30.  
  31.             file "localhost.zone"; 
  32.  
  33.     }; 
  34.  
  35.         zone "0.0.127.in-addr.arpa" IN { 
  36.  
  37.             type master; 
  38.  
  39.             file "127.0.0.zone"; 
  40.  
  41.     }; 
  42.  
  43.         zone "mm.com" IN { 
  44.  
  45.             type master; 
  46.  
  47.             file "mm.com.intra"; 
  48.  
  49.     }; 
  50.  
  51. }; 
  52.  
  53.  
  54.  
  55. view "inter" { 
  56.  
  57.         match-clients { any; }; 
  58.  
  59.         zone "mm.com" IN { 
  60.  
  61.             type master; 
  62.  
  63.             file "mm.com.inter"; 
  64.  
  65.         }; 
  66.  
  67. }; 

 

更改该主配置文件的属性、属组。

创建相应的数据文件:(其他3个文件可以参考最基础的数据文件)

vim /var/named/mm.com.inter

 

 

 
  
  1. $TTL 86400  
  2.  
  3. $ORIGIN mm.com. 
  4.  
  5. @               IN      SOA     ns.mm.com.          admin.mm.com. (                        2012102002 
  6.  
  7.                 12H  
  8.  
  9.                 1H   
  10.  
  11.                 30D  
  12.  
  13.                 2D ) 
  14.  
  15.                 IN      NS      ns 
  16.  
  17.                 IN      NS      ns2  
  18.  
  19.                 IN      MX 10   mail 
  20.  
  21. ns              IN      A       192.168.0.1 
  22.  
  23. ns2             IN      A       192.168.0.2 
  24.  
  25. www             IN      A       192.168.0.3 
  26.  
  27. mail            IN      A       192.168.0.4 

 

更改其文件属性,检测语法错误,启动服务。

就可以进行不同网段内的解析了。。