码迷,mamicode.com
首页 > 系统相关 > 详细

Linux之DNS多种服务搭建

时间:2014-08-07 07:35:30      阅读:449      评论:0      收藏:0      [点我收藏+]

标签:dns配置


  一:什么是DNS为什么会有DNS

  域名系统(英文:Domain Name System,缩写:DNS)是因特网的一项服务。在互联网诞生的早起因接入互联网的主机数量非常少,当时没有专用的DNS服务器来对整个互联网的域名进行解析,当时只在我们主机的host文件里记录了各个主机和IP对应的关系,他们每隔一定时间进行一次数据更新,但是后来接入互联网主机越来越多,以至于host文件里记录的数据太多,当在需要访问一个主机时查询host文件将是一个很浪费主机资源(不但有CPU还有巨大的内存资源)事情,所以人们提出了假设专用DNS服务器来提供域名解析服务,所以DNS服务器是一个将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,DNS 使用TCP和UDP端口53。那它是怎么工作的,为什么会同时监听在TCP和UDP的53号端口呢?


  二:DNS授权管理机制

   DNS是基于C/S架构的,它的主要作用是提供域名解析的,就是把域名转换为IP(正向解析),或者把IP转换为域名(反向解析)。如果互联网所有DNS解析都在一台机器上会怎么样?我想这样的话这台机器肯定是扛不住的,那怎么办?于是DNS服务出现了授权管理机制。

   要想弄清授权管理,先让我们介绍下域名。

bubuko.com,布布扣

  根域:全球域名都是从根域开始的(也是被经常忽略掉的)

  一级域:

          组织域:.com, .org, .net, .mil, .edu, .gov, 

          国家域:.cn, .us, .uk, .jp, .tw, .hk, .iq, .ir

          反向域:.in-addr.arpa

  二级域:公司、组织、个人可以申请

  主机:www,mail


 DNS授权机制就是根据域划分进行授权管理的

bubuko.com,布布扣


 llh下的www主机想要访问51cto下的WWW主机,但llh域内的DNS服务器没有51cto的域名解析信息,

      1)这时llh域内的DNS服务器就开始访问根服务器,问是否有51cto.com的解析信息,根服务器查询后说有的,你去找.COM服务器吧,他知道。

      2)于是llh域内的DNS服务器就开始向.COM服务器查询是否有51cto的域名解析,.COM服务器查询后说有的你去找51cto域内的DNS服务器吧。

      3)接着llh域内的DNS服务器就去查询51cto域内的DNS服务器,然后51cto域内的DNS服务器就把查询到的主机IP地址返给llh域内的DNS服务器

      4)最后llh域内的DNS服务器就把www.51cto.com的IP地址返给www.llh.com这台主机。?

      上图1-3属于迭代过程;4属于递归过程,所以DNS解析是一个递归加迭代的过程。


  三:DNS服务器配置

    DNS服务器安装包文件为BIND,20世纪80年代,柏克莱加州大学计算机系统研究小组的四个研究生Douglas B Terry、Mark Painter、David W. Riggle和周松年(Songnian Zhou)[5]一同编写了BIND的第一个版本,并随4.3BSD发布。-wikipedia

    DNS服务器安装配置过程

    1)yum install bind

bubuko.com,布布扣

bubuko.com,布布扣

   2)修改主配置文件

bubuko.com,布布扣

   3)打开/etc/named.rfc1912.zones定义区域添加新增区域信息

bubuko.com,布布扣

  4)为每个区域定制解析库分别

      编辑 vim /var/named/llh.com.zone(文件名要和主配置文件正向解析区域内命名文件名相同)

      编辑 vim /var/named/172.116.16.zone

    

bubuko.com,布布扣

      NS记录要有对应DNS服务地址。

bubuko.com,布布扣

     反向解析列表没有CNAME配置信息

     创建解析库文件以后需要对文件进行属主属组改变,属组为named。权限为640

  5)编辑完成以后可以对这次配置做个整体的测试。可以使用命令named-checkconf。

  6)启动DNS service named start

  7)测试DNS是否有效

      host命令

bubuko.com,布布扣

       nslookup 命令

bubuko.com,布布扣

    dig(正向测试命令)  命令

    命令:dig -t A www.llh.com @172.16.16.3


    dig(反向测试命令)  命令

    命令:dig -x  172.116.16.5 @172.16.16.3



  四:DNS主从同步

    DNS主从同步服务,从服务器会定时从主服务器获得最新的DNS解析列表,并分担一部分DNS解析服务,当主服务器不能提供服务时,从服务器会继续替主服务器提供服务,但是在规定的时间内如果主服务器不能起来工作,从服务器也将停止服务。这里的从服务器起到了冗余的作用。主从之间为了保证传输数据完整性采用的是TCP协议。

     1)为了保证主从真正做到同步,第一步先要进行时间同步。

     2)配置从服务器主配置文件

bubuko.com,布布扣

  3)测试下同步是否成功

        

bubuko.com,布布扣

   修改完成以后执行一下 rndc reload 命令

  4)查看同步过来的数据

bubuko.com,布布扣


 五:DNS安全机制

    为了保证我们的DNS安全,需要对我们的区域传送,主从同步配置安全策略信息,要求从服务器不允许其他DNS服务器同步,主DNS服务器只允许指定的服务器同步。

    主服务器安全配置策略

bubuko.com,布布扣

    从服务器安全配置策略

bubuko.com,布布扣


 六:DNS子域授权

    子域授权,在父域下面在加上子域,委派一个DNS服务器负责这个子域的DNS解析

       例 : ops.llh.com 其中llh为父域,ops便为子域。

 

bubuko.com,布布扣

  1)配置父域DNS解析库

bubuko.com,布布扣


  2)在另一台DNS服务器上配置子域DNS配置文件(以正向解析为例)

   

bubuko.com,布布扣

  3)编辑子域解析库

bubuko.com,布布扣

  4)测试子域和父域能否进行解析


  七:配置子域为转发器

     子域为转发器:转发所有非本机区域解析地址至父域来解析

      编辑子域的/etc/named.conf配置文件

bubuko.com,布布扣

      查询父域及子域信息

bubuko.com,布布扣


  八:配置转发区域

    转发区域:指定哪些区域到父域服务器查找解析信息,其他的还是通过本机到互联网根节点一级一级进行查找。

     1)配置子域DNS zone配置文件(配置之前先把上面/etc/named.conf里的forward;forwarders注销掉)

bubuko.com,布布扣


九:bind view

    可以根据客户端来源不同,将同一个域名解析成不同的IP地址,例如联通的IP解析到联通的机房,电信的IP解析到电信的机房。


bubuko.com,布布扣

172.16.0.0/16网段的主机解析www.llh.com得到的IP地址为172.16.16.4

192.168.1.0/24网段的主机解析www.llh.com得到的IP地址为172.16.116.5

   1)配置172.16.0.0/16 解析段的地址

bubuko.com,布布扣

  2)配置192.168.1.0/24解析段的地址。

bubuko.com,布布扣

  3)重新加载一下配置文件(在配置文件修改后都要从新加载一下才能生效)rndc reload

  4) 测试用ip地址段位172.16.0.0/16主机测试返回来的结果为

bubuko.com,布布扣

  5)ip地址段位192.168.1.0/24主机测试返回来的结果

bubuko.com,布布扣


  


本文出自 “slayer” 博客,请务必保留此出处http://slayer.blog.51cto.com/4845839/1536492

Linux之DNS多种服务搭建,布布扣,bubuko.com

Linux之DNS多种服务搭建

标签:dns配置

原文地址:http://slayer.blog.51cto.com/4845839/1536492

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