DNS服务和搭建

DNS服务:
        名字解析
        DNS 服务
        实现主从服务器
        实现子域
        实现view
        编译安装
        压力测试
        DNS排错
DNS:Domain Name Service   应用层协议
         端口号: C/S,53/udp, 53/tc
本地名称解析配置文件:hosts   
           vim  /etc/hosts
格式:
        122.10.117.2 www.magedu.com      #ip地址可以对应多个域名
        93.46.8.89 www.google.com

根域
    一级域名:Top Level Domain: tld
         com, edu, mil, gov, net, org, int,arpa
         三类:组织 域、国家域(.cn, .ca, .hk, .tw)、 、 反向 域
    二级域名
    三级域名
    最多127 级域名
           ICANN (The Internet Corporation for Assigned Names
           and Numbers )互联网名称与数字地址分配机构,负责在全
           球范围内对 互联网通用顶级域名(gTLD )以及国家和地区顶
           级域名(ccTLD )系统的管理、以及根服务器系统的管理
DNS服务和搭建
DNS 查询类型:
      递归查询          #给定最终结果
      迭代查询          #只指示下一级域的dns和ip,和甩锅类似
      名称服务器:域内负责解析本域内的名称的主机
      根服务器:13 组服务器
      解析类型:
          FQDN –> IP                         #域名解析成IP
          IP –> FQDN
    注意:正反向解析是两个不同的名称空间,是两棵不同的解析树

DNS 服务器的类型:
       主DNS 服务器    管理和维护所负责解析的域内解析库的服务器
       从DNS 服务器    从主服务器或从服务器“复制”(区域传输)解析库副本
       缓存DNS 服务器(转发器)
       “ 通知” 机制:主服务器解析库发生变化时,会主动通知从服务器

一次完整的查询请求经过的流程:
       Client –>hosts件 文件 –>DNS Service Local Cache
       –> DNS Server (recursion) –> Server Cache –>
       iteration( 迭代) –>  根–>  顶级域名DNS–> 二级域名DNS…

区域解析库:由众多RR 组成:
       资源记录:Resource Record, RR
       记录类型:A, AAAA, PTR, SOA, NS, CNAME, MX
    SOA :Start Of Authority ,起始授权记录;一个区域解析库有
          且仅能有一个SOA 记录,必须位于解析库的第一条记录       
         A :internet Address  作用,FQDN –> IP    #域名解析
    AAAA: FQDN –> IPv6
      PTR: PoinTeR ,IP –> FQDN           #反向解析记录
        NS: Name Server                     #专用于标明当前区域的DNS 服务器
 CNAME :Canonical Name                  #别名记录
        MX: Mail eXchanger                   #邮件交换记录

资源记录定义的格式:
          语法:name [TTL] IN  rr_type  value         #一共五项
     注意:           生命期      记录类型   值
      (1) TTL 可从全局继承 
      (2) @ 可用于引用当前区域的名字
      (3) 同一个名字可以通过多条记录定义多个不同的值;此时
            DNS 服务器会以轮询方式响应
      (4)  同一个值也可能有多个不同的定义名字;通过多个不同的名字指向
            同一个值进行定义;此仅表示通过多个不同的名字可以找到同一个主机

name:  当前区域的名字,例如“magedu.com.”
    value:  有多部分组成
      (1)  当前区域的主DNS 服务器的FQDN ,也可以使用当前区域的名字;
      (2)  当前区域管理员的邮箱地址;但地址中不能使用@ 符号,一般用. 替换
           例如linuxedu.magedu.com
      (3)  主从服务区域传输相关定义以及否定的答案的统一的TTL
例如:
     magedu.com.         86400     IN     SOA      ns.magedu.com.
  域名(这个点一定要写)   有效时间        记录类型     主DNS的名字
    可以用@代替方便些
     nsadmin.magedu.com.  (                #邮箱地址,建议写完整加上点
                           2015042201 ; 序列号
                           2H ; 刷新时间
                          10M ; 重试时间
                           1W ; 过期时间
                           1D ; 否定答案的TTL值
                           )
      name:  当前区域的名字
     value:  当前区域的某DNS 服务器的名字,例如:ns.magedu.com.
      注意:一个区域可以有多个NS 记录
  例如:
       magedu.com. IN NS ns1.magedu.com.
       magedu.com. IN NS ns2.magedu.com.
  注意:
     (1)  相邻的两个资源记录的name 相同时,后续的可省略
     (2)  对NS记录而言,任何一个ns 
          记录后面的服务器名字,都应该在后续有一个A
MX记录:
    name:  当前区域的名字
   value:  当前区域的某邮件服务器(smtp 服务器) 的主机名
           一个区域内,MX 记录可有多个;但每个记录的value 之前应
          该有一个数字(0-99) ,表示此服务器的优先级;数字越小优先级越高
   例如:
        magedu.com. IN MX 10 mx1.magedu.com.
        IN  MX 20 mx2.magedu.com.
   注意:
     (1)  对MX 记录而言,任何一个MX 记录后面的服务器名字,
          都应该在后续有一个A 记录
A记录:
exam:
www.magedu.com.  IN A  1.1.1.1
www.magedu.com.  IN A 2.2.2.2
mx1.magedu.com.  IN A 3.3.3.3
mx2.magedu.com.  IN A 4.4.4.4
$GENERATE 1-254 HOST$ A 1.2.3.$
.magedu.com.  IN A 5.5.5.5
magedu.com. IN A 6.6.6.6
    避免用户写错名称时给错误答案,可通过泛域名解析进行解
    析至某特定地址,如上使用

服务脚本和名称:/etc/rc.d/init.d/named
               /usr/lib/systemd/system/named.service
  主配置文件:/etc/named.conf, /etc/named.rfc1912.zones, /etc/rndc.key
  解析库文件:/var/named/ ZONE_NAME.ZONE
  注意:
      (1)  一台物理服务器可同时为多个区域提供解析
      (2)  必须要有根区域文件;named.ca
      (3)  应该有两个(如果包括ipv6 的,应该更多)实现localhost
     rndc: remote name domain controller,
     默认与bind 安装在同一主机,且只能通过127.0.0.1 连接named 进程
    提供辅助性的管理功能;953/tcp

主DNS 名称服务器:
      (1)  在主配置文件中定义区域
           zone “ZONE_NAME” IN {
                type {master|slave|hint|forward};
                file “ZONE_NAME.zone”;
            };

        dig 只用于测试dns 系统,不会查询hosts 文件进行解析
测试反向解析:

        dig -x IP = dig –t ptr reverseip.in-addr.arpa

NDS排错:

• NOERROR 不代表没有问题,也可以是过时的记录
•  查看是否为权威记录,flags:aa 标记判断
•  被删除的记录仍能返回结果,可能是因为* 记录存在
•  如:*.example.com. . IN A 172.25.254.254
•  注意“. ”的使用
•  避免CNAME 指向CNAME 记录,可能产生回环
          test.example.com. IN CNAME lab.example.com.
          lab.example.com. IN CNAME test.example.com.
•  正确配置PTR 记录,许多服务依赖PTR ,如sshd,MTA
•  正确配置轮询round-robin

原创文章,作者:shewei,如若转载,请注明出处:http://www.178linux.com/73384

(0)
sheweishewei
上一篇 2017-04-15
下一篇 2017-04-16

相关推荐

  • 装饰器

    装饰器(Decorator) 装饰器推导过程 需求 一个加法函数,想增强它的功能,能够输出被调用过以及调用的参数信息 def add(x,y): return x + y 增加信息输出功能 def add(x,y): print(‘call {},{}+{}’.format(add.__name__, x, y)) return x + y 不足:打印语句的…

    2017-10-23
  • 【26期】Linux第五周学习小总结

        第五周的学习内容很丰富, 从查找到压缩打包,到软件包的管理,其中尤其是以压缩的内容最为丰富,而且庞大的选项让人绝望,那我今天就总结了一下压缩的一些东西,和大家一起分享。     为什么会产生压缩工具呢?因为我们的现在的很多文件会利用到的东西很多,电脑的读存速度也越来越快,一些大的文件在传输和使用上就会很麻烦,虽…

    2017-08-12
  • 权限

    用户组和管理权限

    2017-11-30
  • bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示

    1)bash的工作特性之命令执行状态返回值; 在 Linux 下,任意一个命令执行结束之后,bash都会返回0-255之间的数值以表示命令执行成功与否;其返回值保存于bash的特殊变量$?中; 其中0表示:执行成功;1-255表示执行错误; 例如: [root@localhost ~]# ls anaconda-ks.cfg initial-setup-ks…

    Linux干货 2016-11-06
  • 文件管理

    compress:压缩命令 -d:解压缩(=uncompress) -c:结果输出到标准输出,不删除原文件 -v:显示详情 zcat:不解压文件查看内容   gzip:压缩命令 -d:解压缩 -c:结果输出到标准输出,不删除原文件 -#:1-9代表压缩比,默认为6 zcat:不解压文件查看内容   bzip2:压缩命令 -k:保留原文件 …

    Linux干货 2016-08-18