前言
我引用一下维基百科的说法:BIND(Berkeley Internet Name Daemon)是现今互联网上最常使用的DNS服务器软件,使用BIND作为服务器软件的DNS服务器约占所有DNS服务器的九成。BIND现在由互联网系统协会(Internet Systems Consortium)负责开发与维护。
一、named.conf文件配置
Dhsmasq主要是在配置文件/etc/dnsmasq.conf ,而BIND的唯一的主配置文件是named.conf ,当然你也可以自己编写主配置文件,具体见下面的例子。
其中的key是由rndc-confgen生成的。
key "rndc-key" {
algorithm hmac-md5;
secret "eoiWMiCwCYPwNLWxl05rNw==";
};
controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; }
keys { "rndc-key"; };
};
options {
//域名文件存放的绝对路径
directory "/usr/local/named/var";
//如果bind启动,自动会在/usr/local/named/var目录生成一个named.pid文件,打开文件就是named进程的ID
pid-file "named.pid";
};
zone "." IN {
//根域名服务器
type hint;
//存放在//usr/local/named/var目录,文件名为named.root
file "named.root";
};
//域rjkj.com的zone文件
zone "rjkj.com" IN {
type master; //该域名服务器是主域名服务器,这个选项主要用在主备部署中
file "rjkj.com.zone"; //解析域名rjkj.com的zone文件内容,其路径由options中的directory指定
allow-update { none; }; //定义了允许向主zone文件发送动态更新的匹配列表
};
//反向解析
zone "1.168.192.in-addr.arpa" in {
type master;
//存放反向解析的文件
file "rjkj.com.rev";
allow-update { none; };
};
二、zone文件配置
文件rjkj.com.zone文件位于/usr/local/named/var中,其内容如下所示:
$TTL 86400
$ORIGIN rjkj.com.
@ IN SOA ns1 root(
2013031901 ;serial
12h ;refresh
7200 ;retry
604800 ;expire
86400 ;mininum
)
NS ns1.rjkj.com.
NS ns2.rjkj.net.
MX 10 mail.rjkj.com.
ns1 IN A 192.168.10.1
www IN A 192.168.10.10
IN A 192.168.10.11
mail IN A 192.168.10.20
ljx IN A 192.168.10.30
ftp IN CNAME ljx
说到这里,感觉貌似漏了点东西,智能DNS,何为智能,这个我就不多说明了,修改起来很简单,需要在配置文件name.conf和ZONE下功夫;
name.conf文件配置:
#ct
include "/opt/bind9/etc/dnsview/ct.txt";
#cnc
include "/opt/bind9/etc/dnsview/cnc.txt";
#ct
view "ct" { match-clients{ ct; }; zone "rjkj.com" IN { type master; file "ct.rjkj.com.zone"; }; };
#cnc
view "cnc" { match-clients{ cnc; }; zone "rjkj.com" IN { type master; file " cnc.rjkj.com.zone "; }; };
上面代码中的ct.txt和cnc.txt分别录入了我大中国电信和联通的IP段,意义为用户归属是ct的IP,会返回ct.rjkj.com.zone的解析记录,而cnc的IP就会返回cnc.rjkj.com.zone的解析记录;实现了智能控制用户的DNS解析,是为智能DNS也。
关注睿江云计算,获取更多干货:
http://www.eflycloud.com/#/home?from=RJ0024&salesID=XKKHRTRBK