bind dlz 安装配置

bind:

bind+SDB+mysql
bind+DLZ+mysql
bind+nsupdate + IXFR

______________________________________

read:

http://bind-dlz.sourceforge.net/mysql_driver.html

 

-------------------------------


cd /usr/local/src

wget ftp://ftp.bind.com/pub/bind9/9.5.0/bind-9.5.0.tar.gz
tar zxvf bind-9.5.0.tar.gz
cd bind-9.5.0
./configure –with-dlz-mysql –enable-threads –prefix=/usr/local/bind
make
make install
cd /usr/local/bind/etc/
../sbin/rndc-confgen >rndc.conf
tail -n10 rndc.conf | head -n9 | sed -e s/#\//g >named.conf
vi localhost.zone
ttl 86400
@ IN SOA localhost. root.localhost. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS localhost.
1 IN PTR localhost.
dig > named.root
vi named.conf
在最后加上
dlz “Mysql zone” {
database “mysql
{host=127.0.0.1 dbname=dns ssl=false port=3306 user=root pass= }
{select zone from dns_records where zone = ‘%zone%’ limit 1}
{select ttl, type, mx_priority, case when lower(type)=’txt’ then concat(’\”‘, data, ‘\”‘) when lower(type) = ’soa’ then concat_ws(’ ‘, data, resp_person, serial, refresh, retry, expire, minimum) else data end as mydata from dns_records where zone = ‘%zone%’ and host = ‘%record%’}
{}
{select ttl, type, host, mx_priority, case when lower(type)=’txt’ then concat(’\”‘, data, ‘\”‘) else data end as mydata, resp_person, serial, refresh, retry, expire, minimum from dns_records where zone = ‘%zone%’}
{select zone from xfr_table where zone = ‘%zone%’ and client = ‘%client%’ limit 1}
{update data_count set count = count + 1 where zone =’%zone%’}”;
};

安装Mysql,安装到/usr/local/mysql/,安装步骤略…
建一个数据库dns
CREATE DATABASE dns;
建一个表dns_records

use dns;
CREATE TABLE dns_records (
zone varchar (255),
host varchar (255),
type varchar (255),
data varchar (255),
ttl int(11),
mx_priority varchar (255),
refresh int(11),
retry int(11),
expire int(11),
minimum int(11),
serial bigint(20),
resp_person varchar (255),
primary_ns varchar (255)
);
加入一条记录
INSERT INTO `dns_records` ( `zone` , `host` , `type` , `data` , `ttl` , `mx_priority`
, `refresh` , `retry` , `expire` , `minimum` , `serial` , `resp_person` , `primary_ns` ) VALUES ( ‘yemaosheng.com’, ‘*’, ‘A’, ‘192.168.0.1′, ‘800′, NULL , NULL , ‘10′, NULL ,
NULL , NULL , NULL , NULL );

cp /usr/local/mysql/lib/mysql/libmysqlclient.so.15 /usr/lib/

启动Bind
./named -u root -g -d 1

此条目发表在article分类目录,贴了, 标签。将固定链接加入收藏夹。