2、slavedns配置
在配置dnsview的时候slavedns的配置要有一些小小的改动。named.conf除了allow-query一般设置any以外没有什么变化。主要是在*.zones中要制定同步用的源地址。
cnc.zones
#---------------------------------------#
zone"."{
typehint;
file"/var/named/named.root";
};
#---------------------------------------#
zone"56hr.com"IN{
typeslave;
file"cnc/xinyv.com.ndb";
allow-query{any;};
allow-transfer{zero-transfer;};
transfer-source192.168.0.205;
masters{192.168.0.204;};
};
#---------------------------------------#
cnc.local
#------------------------------------------#
zone"58.112.202.in-addr.arpa"IN{
typemaster;
file"cnc/xinyv.com.local";
allow-query{any;};
allow-update{slave-updata;};
allow-transfer{zero-transfer;};
};
大家可能发现我多了一个zone.conf文件,这个文件是那里来的呢?这个是用一个脚本产生出啦的。
#!/bin/bash
#Sourcefunctionlibrary.
./etc/init.d/functions
[!-f/etc/sysconfig/network]&&exit1
./etc/sysconfig/network
["${NETWORKING}"="no"]&&exit0
[-z$1]&&{echo"$0cnc$0chinanet";exit1;}
FILE="/dev/shm/ip_apnic"
rm-f$FILE
echo"acl$1{">>_zone.conf
wgethttp://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest-o/dev/null-O$FILE
grep'apnic|CN|ipv4|'$FILE|awk-F'|''{print$4""$5}'|whileread_IP_MASK
do
MASK=$(cat<<EOF|bc|tail-1
pow=32;
definelog2(x){
if(x<=1)return(pow);
pow--;
return(log2(x/2));
}
log2($_MASK)
EOF)
whois$_IP@whois.apnic.net|grep^netname|uniq|sed-e's/^netname://g'|grep-qi$1&&echo$_IP/$MASK\;>>/dev/shm/_zone.conf
done
echo"};">>_zone.conf
这样dns服务器就算配置完了.