推荐-DNS BIND初探

DNS BIND


  • DNS

  • BIND

    • 正向解析

    • 反向解析

    • 从服务器

    • 子域授权

    • 转发

    • view


DNS

什么是DNS?

DNS是domain name system,域名系统的简写,负责实现域名与IP的转换。

DNS的功能是什么?

DNS能够将IP地址与域名相互双向转换,能够实现域名访问。

DNS的历史:

 1. 初期网络上的计算机极少,所以通过每台计算机中自带的hosts表来进行解析换算。    -- hosts
 2. 随着发展,网络上的计算机慢慢的增加,通过与DNS服务器同步更新hosts表来解析。   -- hosts
 3. 计算机增量速度加快,通过发送解析请求给一台DNS服务器直接获得回应。                --server
 4. 计算机数量爆炸式增长,将domain根据不同类型不同层分成多份,分工来缓解压力。        --servers

客户端顺序流程:

查询本地hosts表 --> 指向的DNS Server域查询 --> Root根域迭代查询 --> 每一级域服务器迭代 --> 指向的DNS server查询到IP --> 返回给客户端。

DNS的实现方式:

DNS

从根开始将每一个顶级域名都分为单独的一台name server来管理,每一个顶级域名又分为多个二级域名,以此类推,每当一个消息请求到达缓存DNS server时,如果无法查询到就会去询问根服务器,根服务器会去查询此地址的top domain,然后返回此地址的top domain服务器地址,之后DNS server又会去询问top domain服务器,top domain就会返回下一级的服务器地址,直到查询到此主机所在的域的服务器,返回主机IP。

域名的格式:

FQDN(full qualitied domain name):完全解析域名,是用来标识域的,所以是从根开始的地址。
    N级域名...三级域名.二级域名.顶级域名.     

域名:标识一台主机。    
    N级域名...三级域名.二级域名.顶级域名

inquire type:

递归请求(recursion inquire):经常是在用户请求服务器的环境下,client直接请求server,直接得到回复。
迭代请求(iteration inquire):查询DNS,要通过去询问根服务器,一级一级的向下级域名服务器得到回复,直到得到目标主机IP。

DNS的域类型:

hint:根域服务器资料库类型,用来表示这个域是一个指向根域服务器的域。
master:服务器主域,标识是一个域的主服务器。
slave:服务器从域,标识是一个域的从服务器。

DNS功能类型:

正向解析:解析域名到IP。
反向解析:解析IP到域名。
转发:将特定网络内容或者所有内容转发给特定DNS服务器解析。
子域授权:授权一个子域。

智能DNS

根据发送请求的客户端IP,来返回各自不同的IP地址,做到分布式访问。

boot

BIND

什么是bind?

bind是Berkeley Internet Name Domain的缩写,是一个DNS服务器软件。

bind的功能是什么?

bind是目前互联网上用来架设DNS服务器的主流方案,bind能够提供双向解析,转发,子域授权,view等功能。

bind的文件:

/etc/named.conf        bind的主要配置,区域配置文件,其中不包含在区域中的配置为全局配置。
/var/named/*.zone        区域解析库文件,其中的配置仅为当前区域有效。

named的一些属性:

listen-on port 53 { 192.168.1.1; 201.0.0.1;  }; 指定named监听的端口和IP。
listen-on-v6 port 53 { ::1; }; IPV6监听设定。
directory   "/var/named"; 指定区域解析库文件存放目录。
recursion {yes|no};是否允许去迭代查询。

allow-query { address_match_list }; 允许查询本DNS的客户端地址或列表。
allow-transfer { address_match_list }; 允许从服务器进行区域传送的地址或列表。
allow-recursion { address_match_list }; 允许递归查询的客户端地址或列表。
allow-update { address_match_list }; 允许更新本DNS的主机地址,即可以修改,删除,新增zone。

//  dnssec-enable no;   DNS安全扩展机制,建议关闭或者直接注释掉。
//  dnssec-validation no;
//  dnssec-lookaside no;
//  bindkeys-file "/etc/named.iscdlv.key";
//  managed-keys-directory "/var/named/dynamic";

区域文件格式:

zone "ZONE_NAME" IN {
type {hint|master|slave|forward};        
file "ZONE_FILE";
};

解析库文件格式:

解析库中的类型与其格式:

SOA:起始授权机构
    [ZONE_NAME] IN SOA [ZONE_NAME] [ADMIN_MAIL_ADDRESS] (virson 更新时间 重试时间 过期时间 错误缓存时间)
NS:文件服务器
    [ZONE_NAME] IN NS [NAME_SERVER]
A:address
    [NAME_SERVER] IN A [IPADDRESS_IPV4]
AAAA:ipv6 address
    [NAME_SERVER] IN AAAA [IPADDRESS_IPV6]
CNAME:主要名称
    [CNAME] IN CNAME [NAME_SERVER]
PTR:反向解析
    [IP] IN PTR [DOMAIN NAME]
MX:邮件交换服务器
    [ZONE_NAME] IN MX [MX_NAME_SERVER]

从服务器:

zone "ZONE_NAME" IN {                
type slave;                    指定类型为从服务器;
file "slaves/ZONE_FILE";        由于从服务器会从主服务器直接同步解析库,所以无需设置,但是还是要将同步文件指向存放到指定目录下。
};

子域授权

父域解析库:    
    ops.xiao.com IN NS ns1.ops.xiao.com        指定子域的NS
    ns1.ops.xiao.com IN A [IP_ADDRESS]     指定子域NS的地址。

子域设置为正常的DNS服务器流程即可。

转发

zone "ZONE_NAME" IN {
type forward;                指定类型为转发。
forward {only|first};        指定转发的方式,only表示将指定范围内的所有查询都转发,first只转发一次,无回应则自己完成查询。
forwarders { "acl" };        指定转发的范围。
};

view

view [NAME] {                如果在服务器上设定了view,则所有的区域设定都要包含在view中。
match clients { "acl"; };    指定view所负责的范围。
 zone "name" {};
 ...                            包含的区域。
};

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

(0)
Net18_肖肖Net18_肖肖
上一篇 2016-04-19 11:36
下一篇 2016-04-19

相关推荐

  • 理解Inode

    inode是一个重要概念,是理解Unix/Linux文件系统和硬盘储存的基础。 我觉得,理解inode,不仅有助于提高系统操作水平,还有助于体会Unix设计哲学,即如何把底层的复杂性抽象成一个简单概念,从而大大简化用户接口。 下面就是我的inode学习笔记,尽量保持简单。 一、inode是什么? 理解inode,要从文件储存说起。 文件储存在硬盘上,硬盘的最…

    Linux干货 2015-03-20
  • ifconfig命令学习

    ifconfig命令 网络配置 ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。 语法 ifconfig(参数) 参数 add<地址>:设置网络设备IPv6的ip地址; del&lt…

    Linux干货 2017-07-02
  • 搜索引擎-网络爬虫

     通用搜索引擎的处理对象是互联网网页,目前网页数量以百亿计,搜索引擎的网络爬虫能够高效地将海量的网页数据传下载到本地,在本地 形成互联网网页的镜像备份。它是搜索引擎系统中很关键也很基础的构件。 1. 网络爬虫本质就是浏览器http请求。      浏览器和网络爬虫是两种不同的网络客户端,都以相同的方式来获取网…

    Linux干货 2015-11-18
  • lvs集群搭建

    Linux Cluster: Cluster:计算机集合,为解决某个特定问题组合起来形成的单个系统; Linux Cluster类型:LB:Load Balancing,负载均衡;HA:High Availiablity,高可用;A=MTBF/(MTBF+MTTR)(0,1):90%, 95%, 99%, 99.5%,  99.9%, 99.99%…

    2017-05-09
  • N25_第一周

    计算机组成 计算机通常由硬件和软件组成1.硬件 CPU CPU通常由控制器和运算器组成。控制器:是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。运算器:是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。 存储 存储器的功能是存储程序、…

    Linux干货 2016-12-03
  • nginx+keepalived构建负载均衡代理服务器

    实验环境: 1、centos7.3 centos6.82、两台VS提供nginx代理和keepalived3、两台RS提供httpd服务并部署wordpress4、另外一台提供Mysql数据库服务 实验拓扑图: 拓扑图 实验步骤 1、在vs1(172.18.251.4)上配置,用yum安装keepalived和nginx yum install -y kee…

    Linux干货 2017-05-21

评论列表(1条)

  • stanley
    stanley 2016-04-19 11:39

    恭喜加入免检一族