海运的博客

Centos6安装配置DNS服务器Bind

发布时间:July 5, 2012 // 分类:DNS // No Comments

DNS服务器分为三种:

缓存DNS:负责接收缓存用户DNS请求,查询通过转发DNS服务器,一般家用路由带这种DNS。
递归DNS:普通用户最常接触的就是递归DNS了,用于递归查询域名所对应的IP地址,一般都是使用运营商提供的DNS。
权威DNS:包含根DNS,权威域名DNS,当用户通过递归DNS查询域名对应IP的时候就要向权威DNS查询。

本文要介绍的是权威DNS服务器的安装配置,用于提供对域名的解析服务。
Centos6下BIND安装:

#http://www.haiyun.me
yum install bind

Centos5下BIND安装:

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服务器:

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。

//全局设置
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";
        };
};

正解配置:

$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服务器

/etc/init.d/named start
iptables -p upd --dport 53 -j ACCEPT

验证是否生效:

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

标签:dns, dns服务器配置, centos安装配置bind9服务器, centos配置智能DNS

发表评论

分类
最新文章
最近回复
  • track: NAT 部分没处理,这块感觉有问题。
  • yu: 查到有用的资料很幸福!
  • boscotsang: 请问下服务器端如何控制权限让通过权限认证的客户端才能连接?现在这样只要有自编译的客户端程序都可...
  • yck932: 大侠,请问哪里有 tunnels 详细参考资料,谢谢
  • bubble: 现在linux 4.9以上的内核有个bbr的参数,用这个bbr比用锐速效果更好,可参考我的博文...
  • wang: openwrt 只有 tmp/etc/miniupnpd.conf 修改后又重置了,其他路径找...
  • wbq: 可以了 只是https透明代理如何做呢?
  • wbq: 你的这个配置需要浏览器设置代理ip+port, 现在假设不设置,只配置客户端网关为Nginx那...
  • wbq: 您好,想用Nginx做个透明代理,客户端机器配置下网关(即Nginx那台机器),客户端dns配...
  • ccc: 可以提供易调用openssl常用函数吗?