DNS服务器(Centos 7):bind安装&配置

来源:互联网 发布:淘宝充值平台怎么提现 编辑:程序博客网 时间:2024/06/05 15:02

介绍

Linux系统中的DNS服务器的名字叫bind,本文通过介绍bind的安装以及

环境

[root@localhost ~]# cat /etc/redhat-releaseCentOS Linux release 7.1.1503 (Core)DNS服务器地址:192.168.1.100

安装

  1. 安装bind: yum install bind
  2. 启动服务: service named start
  3. 设置开机启动:systemctl enable named

安装后便有个入口配置文件/etc/named.conf,其中(1)可以include其他配置文件,(2)以及设置不同的域的配置文件.

例如/etc/named.conf中包含下面的内容,指定了不同的zone所对应的配置文件

logging {        channel default_debug {                file "data/named.run";                severity dynamic;        }};zone "." IN {    type hint;    file "named.ca";};

配置

说明

如果要增加demo.com的域,从而使用a.demo.com、b.demo.com等域名,则需要主要进行两步:(1)配置named.conf(2)配置demo.com的配置文件

增加域名

  • 步骤1:在/etc/named.conf增加域,增加如下配置
zone "demo.com" {        type master;        file "/var/named/demo.com";};

上面示例是:增加了demo.com域,并指定了该域的配置文件位置file/var/named/demo.com。当然的file值也可以换成其他值。

  • 步骤2:配置/var/named/demo.com。这个文件可以copy其他已有的文件(例如/var/named/named.empty),然后进行修改。修改成如下内容:
$TTL 3H@       IN SOA  @ demo.com. (                                        0       ; serial                                        1D      ; refresh                                        1H      ; retry                                        1W      ; expire                                        3H )    ; minimum         NS      @        A       127.0.0.1        AAAA    ::1a          IN      A       192.168.1.101b          IN      A       192.168.1.102                                     

如果要继续增加其他域名,在上面继续按照相同的方式追加即可

  • 步骤3:重启named服务:service named restart

本地测试

进行测试前,需要设置本机的dns服务器。

  • 编辑/etc/resolv.con,修改文件为如下内容:
nameserver 192.168.1.100
  • 在DNS服务器本地测试:nslookup a.demo.com如果能解析到,则说明域名服务器以及域名配置成功

远端测试-失败

  • 在另外一个主机上(如Windows PC)上配置DNS服务器为DNS服务器地址(本例子中为:192.168.1.100)
  • (Windows)刷新DNS缓存:ipconfig /flushdns
  • 执行nslookup a.demo.com。可以发现无法解析。

无法解析的原因是,DNS服务器(bind)默认只允许地址为127.0.0.1/localhost的主机通过DNS服务器进行查询,即DNS服务器本身只能被自己查询。

如果要解决这个问题,则需要进行配置。如下面的步骤。

配置允许远端查询

配置文件/etc/named.conf需要进行如下修改

  • listen-on port 53 { 127.0.0.1; };修改为listen-on port 53 { any; };
  • allow-query { localhost; };修改为allow-query { any; };
  • dnssec-enable yes;修改为dnssec-enable no;
  • dnssec-validation yes;修改为dnssec-validation no;

重启named服务:service named restart

再一次远端测试-成功

  • 在另外一个主机上(如Windows PC)上配置DNS服务器为DNS服务器地址(本例子中为:192.168.1.100)
  • (Windows)刷新DNS缓存:ipconfig /flushdns
  • 执行nslookup a.demo.com。可以发现能够正常解析。

至此通过bind部署DNS服务器以及配置实验结束。

TODO

  • /var/named.conf中各个字段的作用
  • demo.com文件中各个字段的意义以及作用
0 0