1、子域授权;
正向的子域授权:#cd /var/named
只需编辑区域解析文件#vim magedu.com.
在里面添加记录
dep1 IN NS dns.dep1
dns.dep1 IN A 192.168.1.17
并修改上面的序列号加一
还要编辑主服务器的区域解析文件,添加记录
IN NS ns2
ns2 IN A 172.16.100.9
在子域服务器上编辑#vim/var/named/dep1.magedu.com. zone
$TTL 600
@ IN SOA dns.dep1.magedu.com. admin.dep1.magedu.com. (
2013081201
2H
10M
7D
6H )
IN NS dns
IN MX 10 mail 10表示优先级
dns IN A 192.168.1.17
mail IN A 192.168.1.18
www IN A 192.168.1.19
修改属组为named,权限为640
#vim /etc/named.rfc1912.zones子域的区域配置文件
zone “dep1.magedu.com” IN {
type master;
file “dep1.magedu.com.zone”;
};
#named-checkconf
#named-checkzone “dep1.magedu.com” /var/named/dep1.magedu.com.zone
#rndc reload
#dig -t A www.dep1.magedu.com测试
*子域不能解析父域,
要想子域能够解析父域,就要
①可以把子域的DNS指向父域,
②在子域上面做转发,父域接收子域的转发请求
2、 DNS的转发
在/etc/named.conf里面需要注释掉的选项:
//listen-on port 53 { 127.0.0.1; };
//listen-on-v6 port 53 { ::1; };
//allow-query { localhost; };
//dnssec-enable yes;
//dnssec-validation yes;
//dnssec-lookaside auto;
//managed-keys-directory "/var/named/dynamic";
//include "/etc/named.root.key";
forward only
forwarders { IP; }; 定义转发就能够实现解析了
只转发google.com.hk,不转发其他站点的
(1)完成转发需要注释掉的选项:
//listen-on port 53 { 127.0.0.1; };
//listen-on-v6 port 53 { ::1; };
//allow-query { localhost; };
//dnssec-enable yes;
//dnssec-validation yes;
//dnssec-lookaside auto;
//managed-keys-directory "/var/named/dynamic";
//include "/etc/named.root.key";
(2)定义#vim /etc/named.rfc1912.zones
zone “google.com.hk” IN {
type forward;
forward only
forwarders { 172.16.0.1; };
}; 就定义好了只转发google.com.hk,不转发其他站点的
3、acl和view;
bind访问控制列表:
acl string { address_match_element; ... };
在/etc/named.conf里面定义,写在options上边,例如:
acl allowxfer {
172.16.100.1;
172.16.100.9;
}; 定义可以区域传送的ip
acl queryclients {
172.16.100.1;
172.16.100.9;
}; 定义允许查询的主机。
定义好了在zone里面定义allow-query { queryclients }就完成了
VIEW
view "WAN" {
match-clients { 172.16.0.0/16; };
zone "magedu.com" IN {
type master;
file "internal"
};
};
view VIEW_NAME {
match-clients { any; };
zone "magedu.com" IN {
type master;
file "external";
};
};
*注意在配置的时候一定要将所有的区域都包含在view中,包括跟的区域。
4、日志系统的使用;
file: /etc/named.conf
bind:
categroy: 记录哪个功能产生的日志信息,一共内置有15种category;
channel: 日志信息记录到何处,一般有两种形式,一种为file,另一种为syslog;同时,还需要指定日志级别;
一个category产生的日志可以发往多个channel;而一个channel只能为一个category记录日志;
channel CHANNEL_NAME {
file /path/to/somefile|syslog facility;
severity LEVEL;
};
category CATEGORY { CHEANNEL; };
例如logging {
channel querylog {
file "var/log/bindquery.log" versions 10 size 10M; 表示生成的文件大小为10M,超过后会保存文件。直到保存3个文件,当又生成新文件时,会删除掉最先保存的文件。
severity dynamic;
print-time yes
print-category yes;
print-severity yes;
};
category queries { querylog;}
};
#touch var/log/bindquery.log
#chown named:named var/log/bindquery.log