DNS服务器-bind

一 DNS服务简要介绍
    DNS域名解析服务:用于解析域名和IP地址对应服务。
   1.域名空间结构
       根域(" . ") 顶级域(组织域edu、com、gov... 国家地区域cn...) 二级域(imooc、baidu) 主机名(www、NEWS)
    2.DNS服务器类型
       1.主服务器:在特定区域内具有唯一性、负责维护该区域内域名与IP地址对应关系。
       2.从服务器:从主服务器获取域名与IP对应关系进行维护,防止主服务器宕机。
       3.缓存服务器:通过向其他域名解析服务器查询获得域名和IP对应关系,提高重复查询效率。
   3.DNS查询类型:
        1. 查询方式: 迭代查询和递归查询
            DNS客户机 
            <-> 本地域名服务器(递归查询(yes or no))(没有进行下列查询)
                <->根域(给出顶级域IP部分)(迭代查询(给最优查询))
                <->顶级域(给出二级域IP部分)(迭代查询)
                <->二级域(给出完整IP送至本地域名服务器)(迭代查询)
            ->Wed服务器(IP)
           
递归查询:用于客户机向DNS服务器查询
                迭代查询:用于DNS服务器向DNS其它服务器的查询          
        2. 查询内容: 
            正向解析:根据主机名(域名)查找对应IP.
            反向解析:根据IP地址查找对应主机名(域名).
   4 . DNS域名申请方式:
        1.上层DNS设置区域查询权,让你自己设置DNS服务器。
        2.直接请上层DNS服务器来帮助你设置主机名对应。
      (一般网络主机少,直接向上层DNS服务器申请设置主机名即可,除非大型网络需要很多台网络server)
   5.DNS服务器Client相关文件和相关命令
       1.IP与域名对应解析设置文件
           /etc/hosts  本机自定义IP与域名对应文件
            /etc/resolv.conf  设置DNS服务器IP
           (一般查询先查询/etc/hosts文件,查不到域名对应时才会去/etc/resolv/conf设置的DNS服务器上查询)
       2.相关查询命令
           1. host FQDN
               -a 列出所有信息(包括IP,TTL与排错)
           2. host -l domain
               列出该域名所有主机名与IP对应(不过这个命令使用者必须是该域的管理者)
           3. nslook 交互查询
           4. dig FQDN 
                +trace  从.开始进行跟踪查询
                -t "type" 查询的数据主要有MX、NS、SOA等类型
                -x 查询反解信息
           5. whois doaminname  查询域名注册信息
二 DNS相关配置文件(安装bind-chroot(chroot会把DNS根目录限制在/var/named/chroot/目录下))
    /etc/named.conf  主配置文件
    /etc/sysconfig/named 是否启动chroot及额外参数
    /var/named/  数据库文件默认放置目录
   /var/run/named named程序执行默认放置pid-file在此目录
三 服务器搭建
   1)主服务器搭建:
   1.配置前设置本机为DNS服务器
      
   2.安装DNS服务器
       yum install bind-chroot
   3.防火墙配置
       firewall-cmd -add-port=53/tcp --perment
       firewall-cmd -add-port=53/udp --perment
       firewall-cmd --reload
   4.修改主配置文件 /etc/named.conf,如下
       listen-on port 53 {   any;  } 允许监听任何IP地址
       allow-query {   any;  } 允许任何主机查询
      
      (主配置语法检错命令: named-checkconf
    5.正向解析配置
       1.vim   /etc/named.rfc1912.zones 解析区域信息文件追加
             
           (自定义管理 msun.com为域名的主机名和IP对应 )
           type:hint(根区域),master(主区域),slave(辅助区域)
           file:解析文件(存储在数据库文件默认目录,即/var/named/msun.com.zone)
           allow-update:不允许任何客户端更新解析信息
       2.创建解析文件
           cd /var/named/  切换进入数据库目录
            cp -a named.localhost msun.com.zone  用named.localhost模版创建解析文件msun.com.zone
           vim msun.com.zone  配置解析数据库文件(记录该域名区域下主机名和IP对应)( 汉字注释需删除
          
        
           ( named-checkzone zone  zonefile 检测区域数据文件语法)
   6.反向解析配置
        1.vim  /etc/named.rfc1912.zones   解析区域信息文件追加
          
           "1.168.192.in-addr.arpa" :表示192.168.1.0/24网段的反向解析区域信息
       2.创建解析文件
            cd /var/named/ 切换进入数据库目录
            cp -a named.loopback 192.168.1.arpa 使用named.loopback模版创建解析文件
           vim 192.168.1.arpa    配置解析数据库文件(记录该区域下IP和主机名对应)
          
   7.重启DNS服务并检测
        systemctl restart named 重启
        systemctl enable named 开机自
       使用 nslook命令检测(注意下面IP和主机名解析得到对方不一致,就是因为解析文件记录不同的原因)
      
   2)从服务器搭建(备份与负载均衡)
   1.主服务器配置 (主服务器区域信息允许从服务器更新请求)
  
   (其中 192.168.1.166 为从服务器IP)
   2.从服务器配置
       (安转和设置本机DNS服务为本机同上)
       1. 修改主配置文件 /etc/named.conf ,如下
           listen-on port 53 {  any; } 允许监听任何IP地址
           allow-query {  any; } 允许任何主机查询
       2.防火墙允许(同主服务器)
       3.区域信息文件修改 /etc/named.rfc1912.zones 
      
       4.重启从服务器并测试
       systemctl restart named 重启
        systemctl enable named 开机自
        ls /var/named/slaves/ 查看目录下文件是否添加
   3)DNS加密传输(TSIG加密机制)
   1.主服务器配置
       1.主服务器密匙生成(生成公钥与密匙),并查看私钥Key值
           dnssec-keygen -a HMAC-MD5 -b 128 -n HOST master-slave
           (参数: 128位HMAC-MD5算法 主机名叫master-slave)
          
          
       2.主服务器创建密钥验证文件
           vim /var/named/chroot/etc/transfer.key
          
           chown root.named  /var/named/chroot/etc/transfer.key 设置文件所有者和所在组
             chmod 640 /var/named/chroot/etc/transfer.key 设置文件权限(安全)
             ln /var/named/chroot/etc/transfer.key /etc/transfer.key 设置软链接
       3.开启主机密钥验证功能
           vim /etc/named.conf 添加9、18行内容
           
       4.重启
    2.从服务器配置(配置前先删除上面搭建服务器生成/var/named/slaves/下文件)
       1.主服务器将密钥文件发给从服务器
           scp /var/named/chroot/etc/transfer.key root@192.168.1.166:/var/named/chroot/etc/ 
       2.切换到从服务器,修改文件属性
           chown root.named  /var/named/chroot/etc/transfer.key 设置文件所有者和所在组
           ln /var/named/chroot/etc/transfer.key /etc/transfer.key   设置软链接
       3.从机 支持密钥验证配置
           vim /etc/named.conf (追加两处信息)
          
          
       4.重启并验证
           systemctl restart named 重启
            ls /var/named/slaves/ 查看该目录是否已同步文件成功
            nslookup 查询
    4)缓存服务器
       1.安装bind-chroot
       2.配置/etc/named.conf 
           listen-on port 53 { any; } 允许监听任何IP地址
           allow-query {  any; } 允许任何主机查询
          
           (221.11.1.67 为上层DNS服务器)
       3.重启DNS
       4.测试(使用一主机将缓存DNS服务器IP设置为DNS服务器,ping一地址即可)
    5)分离解析技术(来自不同IP地址查询相同域名时会给出不同结果)
       (位于中国或美国用户访问www.msun.com会获得该网站位于本国的服务器)
       1.安装bind-chroot
       2.配置/etc/named.conf 
           listen-on port 53 { any; } 允许监听任何IP地址
           allow-query {  any; } 允许任何主机查询
           注释根域信息
        
      3.编辑区域信息文件
           mv /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bak 备份
           cp -a /etc/named.rfc1912.zones.bak /etc/named.rfc1912.zones 
           vim /etc/named.rfc1912.zones 清空原有数据,并写如下面信息
        
      4.建立区域数据文件(dns服务器有中国,美国两个IP)
           cp -a /var/named/named.localhost /var/named/msun.com.china
           cp -a /var/named/named.localhost /var/named/msun.com.american
           vim /var/named/msun.com.china
        
         vim /var/named/msun.com.american
  
      5.结果
           不同国家IP段访问www.msun.com,IP结果不同
参考:《linux该怎么学》《鸟哥服务器篇》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值