centos6.5下DNS搭建

  1. 什么是DNS。

域名系统(domain name system)的缩写,直白点就是域名与ip之间的对应关系的数据库,相对ip字符串,域名更容易记忆,方便用户访问互联网。而域名到ip之间的转换就叫做域名解析。

比如:我们想访问www.baidu.com这个网站

wKiom1kta0vgjHrJAADjY4NCr9Q496.png-wh_50














这样就可以正常访问了,这就是DNS的重要性。

2.开始安装了

2.1、我们要使用的DNS就是使用柏克莱大学发展出来的 BIND ( Berkeley Internet Name Domain, BIND ) 这个套件。所以要安装DNS,就看看系统有么有安装这个套件。使用rpm这个命令看看

[root@dns-catch ~]# rpm -qa | grep bind

2.2、如果没有安装,下面我们就使用yum这个命令安装

[root@dns-catch ~]# yum -y install bind

bind的设定档主要有3个

/etc/named.conf:主机的设定值都在这个档案

/etc/named.rfc1912.zones:设定zone,定义hostname <--> IP 的对应关系

/var/named/:存放zone规定的档案

说到这里,有三个概念需要了解下

    1、zone:区域,一个正解或者反解的设定就是一个zone。

    2、正解:hostname到ip的映射,不唯一

    3、反解:ip到hostname的映射,唯一一个

    4、关于正反解的格式

下面通过例子来详细说明正反解

这些都是固定格式,正解反解都一样


$TTL 600                         ;catch的缓存时间

@      IN      SOA     @ hostname. (

                                serial:主备之间更新参考的参数

                                refresh:更新时间

                                retry:间隔多久重新连接

                                expire:连接超时多久后不再连接

                                minimum:类似与TTL值

                                )

下面说正解的格式

$TTL 600

@             IN      NS      hostname.

hostname.     IN      A       对应的ip

www           IN      CNAME   hostname.


反解的格式:

@              IN     NS      hostname.

hostname.      IN     A       对应的ip

对应的ip       IN     PTR    hostname.


对于正解和反解都可以简写

就拿上面的正解来看对应的简写方式

NS       hostname.

A         对应ip

CNAME     hostname.

就这么简单,@ IN 都可以省略


2.3、简易的 cache-only DNS 设定:

设定一个 cache-only 的 DNS 主机其实真的很简单的啦!因为不需要设定正反解的 Zone ,所以只要设定一个档案(就是 named.conf)即可。转发移动公共DNS:114.114.114.114

wKioL1ktdlmh-_5SAACStFYBgA4451.png-wh_50

2.4、重启named服务

[root@dns-catch /]# service  named restart

2.5、观察port:53端口的变化,看下有么有启动

[root@dns-catch /]# netstat -tunl | grep :53
tcp        0      0 *.*.*.*:53            0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:53          0.0.0.0:*                   LISTEN      
tcp        0      0 ::1:53                :::*                        LISTEN      
udp        0      0 *.*.*.*:53            0.0.0.0:*                               
udp        0      0 127.0.0.1:53          0.0.0.0:*                               
udp        0      0 ::1:53                :::*       

2.6、检查/var/log/message的讯息

named 这个服务的记录文件就直接给他放置在 /var/log/messages 里面啦,所以来看看里面的几行吧!
wKioL1ktekyTn3YWAADovUqECy4794.png-wh_50

2.7、没什么问题,就开始测试了,正常解析就大功告成。

但是客户端nslookup会显示下面的问题,这是因为么有做正反解。

wKioL1mUE4uyTOITAAAUJ7zDRTc600.png-wh_50

下来就需要创建两个zone,一个正解,一个反解。

/etc/named.rfc1912.zones:设定zone,定义hostname <--> IP 的对应关系

zone "cache-1" IN {
        type master;
        file "named.cache-1";
        allow-update {none ;};
};


zone "*.*.*.*.in-addr.arpa" IN {
        type master;
        file "named.*.*.*.*";
        allow-update {none ;};
};

建立好zone后,就需要对zone做相应的正反解,/var/named/:存放zone规定的档案

root@root@dns-cache named]# vi named.cache-1
$TTL 600
@               IN      SOA     @       cache-1. (
                                20170530
                                28800
                                14400
                                720000
                                86400)
        NS      cache-1.
        A       *.*.*.*

[root@root@dns-cache named]# vi named.*.*.*.*
$TTL 600
@               IN      SOA     @ cache-1. (
                                        20170530
                                        28800   
                                        14400
                                        720000
                                        86400)
        NS      cache-1.
        A       *.*.*.*
        PTR     cache-1.

设置完,重启named服务
[root@root@dns-cache named]# service named restart

下面再来nslookup,就可以正常显示了

wKioL1mUFviyBohfAAAMtIBGe24872.png-wh_50