码迷,mamicode.com
首页 > 其他好文 > 详细

DNS配置之【正反解析与主从服务】

时间:2015-06-19 13:46:04      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:dns server主从服务器


    今天和很高兴和大家分享DNS服务的配置,记得点赞哦!  话不多说了,赶紧进入正题吧!

简介:

1.Linux下使用的DNS服务器软件是Bind,其守护进程是named,用于提供域名解析服务

DNS的基本介绍:

DNS系统在网络中的作用就是维护着一个地址数据库,其中记录了各种主机域名与IP地址的对应关系,以便为客户机提供正向与反向的地址查询,即正向与反向解析。

 

正向解析:根据域名查ip地址,将指定的域名解析为相对应的ip地址。

 

反向解析:根据ip地址查域名,将指定的ip地址解析成相对应的域名。

 

DNS可分为不同的类型,常见的几类如下:

缓存域名服务器:只提供域名解析结果和缓存功能,目的在于高效查询速度和效率,但是没有自己控制的区域地址数据。配置此服务器时,必须指定其他DNS服务器作为解析。

 

主域名服务器:维护某个特定DNS区域的地址数据库,对其中的解析记录具有自主控制权,配置此服务器时,需要自行建立所负责区域的地址数据文件。

 

从域名服务器:与主服务器提供完全相同的DNS解析服务,通常用于服务器的热备份。

 

 

 

实验环境:

两台Linux虚拟机,一条做主服务器,并提供正、反解析,从服务器做服务器的热备份

RedHat6.2 64位  ip地址为192.168.100.20

 

系统中的各种软件包,及作用

bind-9.7.3-8.P3.el6.x86_64.rpm            //主要程序及相关的配置文件
bind-chroot-9.7.3-8.P3.el6.x86_64.rpm      //BIND服务的伪装根目录,以提高安全性
bind-libs-9.7.3-8.P3.el6.i686.rpm           //提供了需要使用的数据函
bind-libs-9.7.3-8.P3.el6.x86_64.rpm
bind-utils-9.7.3-8.P3.el6.x86_64.rpm       //提供了对DNS服务器的测试工具host,nslookup

 

3.1 查询bind是否安装

rpm -q bind

如果没安装,则直接安装,方式有两种:

rpm -ivh /mnt/Packages/bind-9.7.3-8.P3.el6.x86_64.rpm  //使用RPM进行安装

 

yum install bind                                  //使用yum进行安装 (创建yum的方法这里就不解释了)如有需要,请看前几篇

 

[root@server02 ~]# rpm -qc bind    //使用此命令,可以查看配置文件的所在目录 主要修改一下三个配置文件即可

/etc/logrotate.d/named
/etc/named.conf     主配置文件
/etc/named.iscdlv.key
/etc/named.rfc1912.zones   区域配置文件
/etc/named.root.key
/etc/rndc.conf
/etc/rndc.key
/etc/sysconfig/named
/var/named/named.ca
/var/named/named.empty
/var/named/named.localhost   区域数据配置文件
/var/named/named.loopback



主配置文件:位于etc目录下,/etc/named.confoptions定义服务器的全局配置选项,在一个named.conf文件中只能有一

options {
        listen-on port 53 { 192.168.100.20; };  //监听地址和端口
        directory       "/var/named";       //区域数据文件的默认存放位置
        allow-query     { any; };           //允许所有地址进行访问




区域配置部分:/etc/named.rfc1912.zones

zone "benet.com" IN {              //正向“benet.com”区域
        type master;              //类型为主区域
        file "benet.com.zone";      //区域数据文件为benet.com.zone
allow-transfer { 192.168.100.30; };  //允许下载的从服务器地址
};

[root@server02 ~]# cd /var/named/

[root@server02 named]# ls

data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves

[root@server02 named]# cp -p named.localhost benet.com.zone   //复制一个新的区域数据文件,并保留属主、属组不变。

[root@server02 named]# vi benet.com.zone 


区域数据配置文件:

编写正向解析数据文件:

$TTL 1D                        //有效解析记录的生存周期     
@       IN SOA  @ admin  (    //SOA标记、域名、管理邮箱
                                        10      ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
 
 
这里@是一个变量,相当于benet.com
 
 
地址解析部分:
 
        NS      @             //记录当前区域的DNS服务器的主机地址
        A       192.168.100.20   
IN MX  5       benet.com.  
mail IN A       192.168.100.110    //设置A记录,正向解析记录
www IN  A       192.168.100.120
ftp IN  CNAME   www.benet.com.   //设置别名
*  IN   A       192.168.100.254    //设置泛域名解析


[root@server02 named]# echo "nameserver 192.168.100.20" > /etc/resolv.conf  //指定本地DNS 解析的地址,并重定向到/etc/resolv.conf 

 

[root@server02 named]# service named start  //开启服务

启动 named:                                               [确定]

 

为了做主从服务器,这里先关闭防火墙和SELinux,(不关,不影响正常解析)

[root@server02 named]# service iptables stop

iptables:清除防火墙规则:                                 [确定]

iptables:将链设置为政策 ACCEPTfilter                    [确定]

iptables:正在卸载模块:                                   [确定]

[root@server02 named]# setenforce 0

这时就能够在本地进行解析了

[root@server02 named]# host www.benet.com

www.benet.com has address 192.168.100.120

[root@server02 named]# host mail.benet.com

mail.benet.com has address 192.168.100.110

[root@server02 named]# host abc.benet.com

abc.benet.com has address 192.168.100.254

如果没有host测试工具,则使用RPM进行安装:rpm -ivh /mnt/Packages/bind-utils-9.7.3-8.P3.el6.x86_64.rpm 


配置反向解析:

zone "100.168.192.in-addr.arpa" IN {    //反向解析的区域为192.168.100.0段
        type master;
        file "benet.com.local";        //区域数据文件为 benet.com.local
        allow-update { none; };
};

[root@server02 named]# cp -p benet.com.zone benet.com.local

[root@server02 named]# vi benet.com.local 

配置区域数据文件:

这里@也是变量,表示为 192.168.100

 

$TTL 1D
@       IN SOA  benet.com. admin.benet.com.  (  域名为benet.com. 管理员邮箱(完全合 格域名)
                                        10      ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
         NS      benet.com.       
         A       192.168.100.20
110  IN  PTR     mail.benet.com.  使用PTR记录时,110表示ip地址的主机部分,表示
120  IN  PTR     www.benet.com.  ip地址为192.168.100.110的主机,域名为mial、www.benet.com


[root@server02 named]# service named restart

停止 named:                                               [确定]

启动 named:                                               [确定]

这时就可以正常反向解析了;

[root@server02 named]# host 192.168.100.110

110.100.168.192.in-addr.arpa domain name pointer mail.benet.com.

[root@server02 named]# host 192.168.100.120

120.100.168.192.in-addr.arpa domain name pointer www.benet.com.

[root@server02 named]#                                   



从服务器的配置:

全局配置:vi /etc/named.comf

 
options {
        listen-on port 53 { 192.168.100.30; };   //监听地址和端口
        directory       "/var/named";        //区域数据文件的默认存放位置
        allow-query     { any; };            //允许所有地址进行访问


区域配置:vi /etc/named.rfc1912.zones

zone "benet.com" IN {
        type slave;                   //类型为从区域
        masters { 192.168.100.20; };    // 指定主服务器的IP地址
        file "slaves/benet.com.zone";    // 下载的区域文件保存到slaves/目录,这里不用创建,将在主服务器上同步过来。
};


 

[root@server01 named]# service iptables stop

iptables:清除防火墙规则:                                 [确定]

iptables:将链设置为政策 ACCEPTfilter                    [确定]

iptables:正在卸载模块:                                   [确定]

[root@server01 named]# setenforce 0

[root@server01 named]# service named start

启动 named:                                               [确定]

[root@server01 named]# echo "nameserver 192.168.100.30" > /etc/resolv.conf 

[root@server01 named]# ls

data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves

[root@server01 named]# cd slaves/

[root@server01 slaves]# cat benet.com.zone   //这边是从主服务器上同步过来的

$ORIGIN .
$TTL 86400; 1 day
benet.comIN SOAbenet.com. admin.benet.com. (
10         ; serial
86400      ; refresh (1 day)
3600       ; retry (1 hour)
604800     ; expire (1 week)
10800      ; minimum (3 hours)
)
NS        benet.com.
    A     192.168.100.20
MX   5     benet.com.

*    A     192.168.100.254
ftp  CNAME www
mail A     192.168.100.110
www  A     192.168.100.120

上面以同步完成,在从服务器不用做任何配置,就可以解析到主服务器上的域名。

[root@server01 slaves]# host mail.benet.com         

mail.benet.com has address 192.168.100.110

[root@server01 slaves]# host www.benet.com

www.benet.com has address 192.168.100.120


OK ,实验完成,祝你好运。记得评论哦!

本文出自 “青鸟流氓团@多多” 博客,请务必保留此出处http://duo1314.blog.51cto.com/9961268/1663405

DNS配置之【正反解析与主从服务】

标签:dns server主从服务器

原文地址:http://duo1314.blog.51cto.com/9961268/1663405

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!