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

相关推荐

  • 第二周作业

    第二周

    Linux干货 2017-12-11
  • linux文件管理类命令

    stat、alias、xargs命令使用;(非)字母,(非)数字的表示方法。

    2017-12-11
  • 内部命令与外部命令

    内部命令与外部命令 内部命令在系统启动时就调入内存,是常驻内存的,所以执行效率高。 外部命令是系统的软件功能,用户需要时才从硬盘中读入内存。 1.type type COMMAND 判断一个命令的类型即判断一个命令是否为内置命令。   2.enable(内部命令) enable既可以查看内部命令,同时也可以判断是否为内部命令 enable 显示所有…

    2017-07-15
  • 位置变量在Shell脚本编程中的作用

    位置变量:         如果要向一个shell脚本传递信息,可以使用位置参数完成此功能;参数相关数目传入脚本,此数目可以任意多,但只有前9个可以被访问,使用shift命令可以改变这个限制;参数从第一个开始,在第九个结束;每个访问参数前要加$符号;第一个参数为0,表示预留保存实…

    Linux干货 2016-08-15
  • 于浩的第一篇随笔

    人生只有两件事,努力工作,享受生活!

    2018-03-26
  • 2016全球运维大会,优云蒋君伟演讲“CMDB+自动化的管理融合”成一大亮点

    2016全球运维大会于9月23日-24日在上海盛大开幕。作为国内运维行业的重量级大会,优云产品总监蒋君伟在自动化专场与来自全国各地的运维同行一起探讨、分享业内自动化运维的最佳实践。现场情绪热烈,气氛高涨,成为了本届全球运维大会的一大亮点。 全新梳理自动化与CMDB的融合之道 全球运维大会当天,运维自动化专场很多大牛针对自动化运维管理中的CMDB进行了激烈的讨…

    Linux资讯 2016-12-05