DNS服务器分为三种:
1 2 3 | 缓存DNS:负责接收缓存用户DNS请求,查询通过转发DNS服务器,一般家用路由带这种DNS。 递归DNS:普通用户最常接触的就是递归DNS了,用于递归查询域名所对应的IP地址,一般都是使用运营商提供的DNS。 权威DNS:包含根DNS,权威域名DNS,当用户通过递归DNS查询域名对应IP的时候就要向权威DNS查询。 |
本文要介绍的是权威DNS服务器的安装配置,用于提供对域名的解析服务。
Centos6下BIND安装:
1 2 | yum install bind |
Centos5下BIND安装:
1 2 3 | yum install bind cp -a /usr/share/doc/bind-9.3.6/sample/etc/* /etc/ cp -a /usr/share/doc/bind-9.3.6/sample/var/named/* /var/named/ |
配置为本地缓存转发DNS服务器:
1 2 3 4 5 6 7 8 9 10 11 12 13 | cat /etc/named.conf options { listen-on port 53 { 127.0.0.1; }; directory "/var/named"; allow-query { localhost; }; #仅允许本地查询 recursion yes; #允许递归查询 forward only; #仅转发 forwarders { 8.8.8.8; #转发查询DNS服务器 4.4.4.4; }; }; |
配置为域名解析权威服务器,根据view功能对内提供递归查询服务,对外提供域名解析服务,需在域名注册商处理更改DNS服务器,如ns1.haiyun.me。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | //全局设置 options { listen-on port 53 { any; }; directory "/var/named"; }; //日志设置 logging { channel default_debug { file "data/named.run"; print-time yes; severity dynamic; }; channel query_log { file "data/query.log" versions 3 size 20m; severity info; print-time yes; print-category yes; }; category queries { query_log; }; }; //匹配本机 view localhost { match-clients { localhost; }; allow-query { any; }; recursion yes; //允许递归查询,即本地DNS缓存服务器 include "/etc/named.rfc1912.zones"; //调用根服务器及本地 }; //匹配外网 view external { match-clients { any; }; allow-query { any; }; recursion no; //非递归服务器 allow-transfer { none; }; //不允许传送 allow-query-cache { any; }; zone "haiyun.me" { type master; file "haiyun.me"; }; }; |
正解配置:
1 2 3 4 5 6 7 8 9 10 11 12 13 | $ORIGIN haiyun.me //此参数配合下面@,无设置为主配置文件内zone参数 $TTL 600 //SOA ns用于主从判断权威服务器 @ IN SOA ns1.haiyun.me. mail.haiyun.me. ( 2012070401; #序号,slave判断是否下载 3H; #更新频率 10M; #失败重新连接时间 1W; #失效时间 1H ); #TTL时间 @ IN NS ns1.haiyun.me. //授权ns服务器 @ IN NS ns2.haiyun.me. ns1 IN A 1.2.3.4 ns2 IN A 1.2.3.4 www IN A 1.2.3.4 |
配置完成启动named服务,如有配置iptables需开启udp53端口,为稳定可配置主从同步DNS服务器。
1 2 | /etc/init.d/named start iptables -p upd --dport 53 -j ACCEPT |
验证是否生效:
1 2 3 4 5 6 7 8 9 10 11 | dig -t ns www.haiyun.me ;; QUESTION SECTION: ;www.haiyun.me. IN NS ;; ANSWER SECTION: www.haiyun.me. 600 IN NS ns1.haiyun.me. www.haiyun.me. 600 IN NS ns2.haiyun.me. ;; ADDITIONAL SECTION: ns1.haiyun.me. 600 IN A 1.2.3.4 ns2.haiyun.me. 600 IN A 1.2.3.4 |