linux--dns

一. 什么是DNS
   dns 的全名是domain name system <域名系统> , 它是为了方便访问互连网而采用的一种 域名和ip地址 之间相互转化的管理方法. <每台主机间的访问都用ip地址是不现实的>
简单的说就是: dns 服务器解决了ip地址和名称之间的转化过程, 这就是为什么访问者在不知道一个网站的ip地址的情况下, 还可以根据网站的名字而轻松访问网站的原因. 
如新浪网的网址为:  www.sina.com  而它的一台服务器的地址为 1.1.1.1 
这样dns 服务器记录的是  www.sina.com.  -------1.1.1.1  
客户访问时 只需输入 网址即可  
原理如图 :
过程 :
     当用户要访问www.sina.com.cn时 会向网络中的dns服务器发送dns 请求 "请告诉我
www.sina.com.cn的ip地址."   当dns 服务器在线时并且收到dns请求后 会回应这个dns请 
求 "www.sina.com.cn  的ip地址是 1.1.1.1 "  用户收到dhs 应答包 就知道www 服务器的ip地址   然后用户主机就会发送目的地址 为 1.1.1.1 的 数据包进行通讯 
DNS有关的名词解析    
<1> 域  : 一种递归管理网的方法, 以树状结构的形式来寻址,以便方便的找到目的地
             就像一个人的身份证一样. 属于那个国家, 哪个省,那个市,哪个县........
             只不过域的划分是按: 国家. 类别 组织等
            如图所示 
      
<2> dns 服务器 : 也称:dns <domain name server> , 他是为普通客户机提供域名解析服务的  
                服务器
    主dns 服务器: 区域内主要的dns服务器, 其内部的dns数据记录为原始记录 可以进行 
              修改
辅助dns服务器: 像主dns一样为 区域内的主机提供dns服务 不过他的dns 数据记录 
               是从主dns上拷来的 ,只能根据主dns的数据变化而变化
cachonly 服务器: 它不属于任何域 但是却缓存dns数据 为其他主机提供dns 服务
存根服务器:   这种服务器记录那些访问的比较频繁的 dns记录 
<3>查找区域: 
可分为:
    正向查找区域: 根据名字解析ip地址<90% 的查找都是正向的>
    反向查找区域: 根据ip地址解析名字<10%>
<4>记录类型 : 正向区域:
                      SOA记录 <授权起始记录><这里面包含了: 主dns 服务器; 管理
                                 员邮箱; 刷新的策略>
                     NS 记录  <该区域内的dns 服务器>  //所有的dns服务器都记录
                     A   记录  <名称到地址的映射关系>  //前面是名称后面是地址
                     CNAME 记录  <别名记录>  //     记录主机别名
             反向的查找区域:  PTR记录        // 记录ip地址到域名的对应关系
配置简单实例:
       这里配置一台linux 主机上的dns服务器 
        实验环境: linux 做dns 服务器  windows 2003 做客户机
        目标: 在客户机上执行nslookup + ip地址可以解析到dns域名 
              或者在客户主机上 ping 某个服务主机 看是否可以解析到域名
首先搭建实验环境:  
               局域网内部  实现主机和服务器的连通
客户机配置
          ip地址  192.168.1.20 首选dns 指向linux服务器 即 192.168.1.1 
二.在linux操作系统上搭建dns 服务器
 <1>  首先安装dns 服务
        mount    /dev   /crom  /mnt/cdrom
      cd  /mnt/cdrom/Server
      rpm -ivh bind-9.3........< 参数太多还是省略了吧 反正按tab 键可以出来 >
      rpm -ivh caching-named-server 
      rpm -ivh bind-chroot 
       以上三个包安装后就行了 注意三个顺序一定不要乱了,乱了的话会出问题的 这与
        依赖关系有关吧,也不是太明白 >
    安装后在查询效果如下:
           
 <2> 编辑有关的配置文档       
     主要的有几个:
      /   var/   named/   chroot/   etc  下的 : 
         named.conf  < 这个是主配置文档的模板
                      named.caching-nameserver.conf 拷贝过来的 >
                           
        n amed.rfc1912.zones   <这个是区域主配置文档 里面声明了dns内有几个区域 
                                以及这些区域的配置文件的名字及放置的地方>
     
       /var/named/chroot/var/named    下的:
          localhost.zone   <这个是区域配置文件的模板文件>
      下面是以上配置文件的具体配置方法:
cd  /var/named/chroot/etc
cp -p  named.caching-namedserver.conf  named.conf 
vim namd.conf 
name.conf  <以截图说明>
                                             
这一步的配置主要是 讲几个 主要参数改为 any 就行了 
vim   n amed.rfc1912.zones 
named.rfc 编辑后截图 如下
上图中 下面的那个区域的五行是从上面拷贝并编辑过来的 事实上也就加这五行就行了
依据上图: 有区域 hh.com  并且 区域文件放在 hh.com.db 中
则 将  /var/named/chroot/var/named/  中的  /localhost.zone   拷贝为  hh.com.db  作为 这个区域的配置文档 然后 
vim hh.com.db  
截图如下: 
                     
 正如上如所示 在数据文件中添加了  www  和  ftp  服务器的主机记录
到这里基本上配置完成:
可以使用几个命令来验证你手工编辑的几个文件的正确性
named-checkconf   /var/named/chroot/etc/named.conf 
                      config文件所在目录
named-checkzone    hh.com    /var/named/chroot/var/named/hh.com.db  
                   域名         域文件所在位置
然后重启dns 服务 
service   network   restart 
或者用
rndc  reload    来更新配置文件
下面开始在客户机上验证dns的配置是否成功
在命令行模式下输入
nslookup  www.hh.com  
nslookup ftp.hh.com 
得到结果如图;
  
从结果可以看出已经可以解析到记录了
 
以上做的是一个主dns 服务器下面开始我们把linux主机配制成另外一个区域的辅助dns服务器
三. 把linux主机配置成辅助dns服务器
实验环境:
 同上 
 但这次 配置另一个区域 并且把linux主机当做辅助dns服务器
原理: 
辅助dns 会从主dns 服务器上边复制数据
在辅助dns上的区域配置文件是自动产生的 
<1>在windows 上配置主dns服务器
   配置一个名为 qq.com 的主区域   
主机记录
        mail.qq.com    3.3.3.3
        test.qq.com     4.4.4.4 
<2> 配置linux 上的辅助区域
    这里需要编辑 named.rfc文档<这里只是缩写.按TAB键就能出来> 
   加入如下几行:
   
  zone "ns1.qq.com" IN {
         type slave;                 \\这里声明自己是辅助dns
         master s  {  192.168.1.1;  };    \\  这里声明主dns的地址
         file "/var/named/slaves /qq.com.db ";   \\辅助dns数据放置的位置       
};
这里的qq.com.db是不用手工创建的 因为他是从主dns上拷贝过来的 
注意 主dns不能开启防火墙或者将dns这一项改成例外 要不让复制不过来
然后重启dns服务 或者 r ndc reload  就行了 
下面是截屏:
到这里看来区域复制已经完成.下面还有关于dns的委派关系

四: dns的委派关系 

委派关系就是管理一个大区域的dns服务器将他的dns解析功能或者权利下放到隶属于他的某一个比较小的dns服务器,即他的子dns服务器
这里以一台linux主机作为父域的dns服务器
在父域创建名为 aaa.com的主区域作为父域
并创建  bj.aaa.com 为他的一个子域
创建主机记录  www  7.7.7.7
              mail   8.8.8.8
只在它上面演示如何编辑需要的文件就行了
这里还是需要改named.rfc 文档
加入如下图
创建父域和子域的区域数据文档
即:
  aaa.com.db  
  bj.aaa.com.db
 编辑 aaa.com.db 
 在编辑 aaa 时需要将他所授权的子域bj.aaa.com给声明出来
 如图:
这便是一次完整的授权 验证 省略
dns 到这儿基本就这么多了 
反向解析不常用不再解释了:
<the  end >
 
  
         

你可能感兴趣的:(linux,linux,职场,dns,休闲)