从ISC官网www.isc.org 下载bind,
注意,现在有3个版本可以选择:早期开发版(Early Deployment),稳定版(Current-Stable),带扩展功能稳定版(Current-Stable, ESV),如果没有特殊需要,推荐使用稳定版,目前最新是9.10.6
下载源码包: bind-9.10.6.tar.gz
解压并进入 bind-9.10.6目录
编译安装 ./configure --enable-largefile --enable-threads --bindir=/bin --sbindir=/sbin
make && make install
编译安装时没有配置文件的,需要自己建立。
vim /etc/named.conf bind的配置文件默认在/etc下面,文件名named.conf
options {
directory "/var/named"; #数据文件位置
pid-file "named.pid";
recursive-clients 10000000; #运行多少用户查询
version "What do u wanna?"; #掩盖版本
allow-query {any;}; #运行所有用户查询
recursion yes; #使用递归查询
#forward only;
#forwarders { 219.141.136.10; };
};
key "rndc-key" {
algorithm hmac-md5;
secret "RE4+Tk2AUXDjs2ns4Zox8w==";
};
controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc-key"; };
};
logging {
channel query_log {
file "query.log" versions 3 size 20m;
severity info;
print-time yes;
print-category yes;
};
category queries {
query_log;
};
category edns-disabled { null; };
category lame-servers { null; };
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
#include "/var/named/ws.conf";
红色部分的配置,是通过 rndc-confgen 命令生成,然后粘贴到配置文件中的。
但是直接使用生成时间会长,可以通过 rndc-confgen -r /dev/urandom 来加快,或安装rng-tools(yum install rng-tools) 并启动 (systemctl start rngd.service)后再执行rndc-confgen
rndc-confgen 产生的结果 分上下两部分,上半部分需要写在/etc/rndc.conf(默认不存在)
在/var下面新建named目录,并进入
生成3个文件:localhost.zone named.ca named.local
named.ca 是根域名服务器的地址
localhost.zone localhost的正向解析记录
named.local localhost的反向解析记录
named.ca 通过 dig 8.8.8.8 > named.ca 得到
PS:现在好像只能得到一个a.root-servers.net的结果了,以前可以获得全部13个
localhost.zone
$TTL 86400
$ORIGIN localhost.
@ 1D IN SOA @ root (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
1D IN NS @
1D IN A 127.0.0.1
named.local
$TTL 86400
@ IN SOA localhost. root.localhost. (
2012062001 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS localhost.
1 IN PTR localhost.
配置完成后,就可以通过named命令启动DNS了,如果有错误,可以通过named -g 看报什么错误,通过named-checkconf 检查named.conf 是否有语法错误,named-checkzone 检查数据数据文件是否有语法错误
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。