一 Linux-BIND服务器简介

Bind是Berkeley Internet Name Domain Service的简写,它是一款实现DNS服务器的开放源码软件。已经成为世界上使用最为广泛的DNS服务器软件,目前Internet上半数以上的DNS服务器有都是用Bind来架设的,已经成为DNS中事实上的标准。

二 DNS服务器类型

  • 缓存服务器:不负责解析,仅为加速,不需要注册
  • 主DNS服务器:负责解析本地客户端请求
  • 辅助DNS服务器:辅助服务器的区域数据都是从主服务器复制而来,其数据都是只读的

三 BIND简介

3.1 bind详解

  • 包名:bind
  • 进程:named
  • 协议:dns
  • 使用端口:53(tcp,udp)

相关包:

  • bind-chroot:将named进程的活动范围限定在chroot目录,保证安全性。
  • bind-devel:与开发相关的头文件和库文件(编译安装bind时所需)
  • bind-libs:bind服务器端和客户端都使用到的公共库文件
  • bind-utils :  bind客户端工具

程序文件:/usr/sbin/named

主程序目录:/var/named

主配置文件:/etc/named.conf

bind权限相关:安装完named会自动创建用户named系统用户

3.2 bind配置文件解释

  1 /etc/logrotate.d/named/etc/named.conf #主配置文件
2 •/etc/named.rfc1912.zones #区域配置文件(用include指令包含在主配置文件)
3 •/etc/named.root.key #根区域的key文件以实现事务签名;
4 •/etc/rndc.conf #rndc(远程名称服务器控制器)配置文件
5 •/etc/rndc.key #rndc加密密钥
6 •/etc/sysconfig/named
7 •/var/named/named.ca #13个根服务器存放文件/var/named/named.empty
8 •/var/named/named.localhost
9 •/var/named/named.loopback

3.3 主配置文件

named.conf,每个语句都要使用分号结尾;其功能如下:

  • 定义区域
  • 定义各区域的全局配置
  • 定义视图
  • 定义日志

第一段:

  1 options {
2 listen-on port 53 { 0.0.0.0/0; };
3 listen-on-v6 port 53 { ::1; };
4 directory "/var/named";
5 dump-file "/var/named/data/cache_dump.db";
6 statistics-file "/var/named/data/named_stats.txt";
7 memstatistics-file "/var/named/data/named_mem_stats.txt";
8 allow-query { any; };
9 recursion yes;
10
11 dnssec-enable yes;
12 dnssec-validation yes;
13 dnssec-lookaside auto;
14
15 bindkeys-file "/etc/named.iscdlv.key";
16
17 managed-keys-directory "/var/named/dynamic";
18
19 pid=file "/run/named/named.pid";
20 session-keyfile "/run/named/session.key";
21 };

第一段主要配置项解释:

  • listen-on:指定IPv4监听的端口和IP,默认为53,IP位127.0.0.1;
  • directory:指定named读取DNS数据文件的目录,默认为/var/named/;
  • dump-file:设置域名缓存数据库文件的位置,默认为/var/named/data;
  • statistics-file:设置状态统计文件的路径,默认为/var/named/data;
  • allow-query:设置允许DNS查询的客户端地址,默认值为localhost;
  • recursion:设置递归查询,yes:允许递归查询,no:不允许递归查询,默认配置允许递归查询。

第二段:

  1 logging {						#定义日志
2 channel default_debug {
3 file "data/named.run";
4 severity dynamic;
5 };
6 };

第二段主要配置项解释:

  • channel:定义日志输出方式,有syslog、文本文件、标准错误输出或/dev/null等方式;
  • file:表示输出到纯文本文件;
  • severity:表示消息的严重性等级,有critical、error、warning、info、debug等;

第三段:

  1 zone "." IN {
2 type hint;
3 file "named.ca";
4 allow-update { none; };
5 };

第三段主要配置项解释:

  • zone:定义一个正向区域,对应的域名;
  • type:类型,通常有master、slave和hit,含义如下——
  • master:表示定义的是主域名服务器;
  • slave:表示定义的是辅助域名服务器;
  • hint:表示定义的是互联网中根域名服务器。
  • file:指定存放dns记录的数据文件名称,默认路径为/var/named;
  • allow-update:是否允许客户主机或服务器自行更新dns记录。

3.4 区域文件

区域文件包括正向区域文件和反向区域文件。

  • 正向区域
  1 [root@linuxmaster named]# vi /var/named/aliyun.com.zone
2 $TTL 300;
3 @ IN SOA linuxmaster.aliyun.com. admin.aliyun.com. (
4 2017051720 ;serial
5 1H ;refresh
6 5M ;retry
7 7D ;expiry
8 3D ) ;minimum
9 IN NS linuxmaster
10 IN MX 20 MX
11 linuxmaster IN A 172.24.8.10
12 www IN A 172.24.8.30
13 mirrors IN A 172.24.8.30
14 ftp IN CNAME www

正向区域文件解释:

  • TTL:定义区域中数据文件里面的各项记录的默认TTL值;
  • SOA:SOA记录,@代表相应的域名,每个区域数据文件只能有一个SOA,其中参数有——
  • serial:表示配置文件的修改版本,格式为年月日加上修改的次数;
  • refresh:设定辅助dns和主dns进行同步的间隔时间;
  • retry:如果辅助dns进行更新失败后,间隔多久进行重试;
  • expiry:设定辅助dns与主dns同步失败后,多长时间后清除对应的记录;
  • minimum:默认最小的TTL值,如果在前面没有设置TTL,则以此值为准。
  • NS:定义此主机属于域名服务器;
  • MX:定义一个邮箱交换器;
  • A指针:定义一个A记录,即域名到IP的记录;
  • CNAME:定义域名的别名。

002.DNS-BIND简介的更多相关文章

  1. 第7章 DNS & bind从基础到深入

    本文目录: 7.1 DNS必懂基础 7.1.1 域的分类 7.1.2 主机名.域名.FQDN 7.1.3 域的分层授权 7.1.4 DNS解析流程 7.2 DNS术语 7.2.1 递归查询和迭代查询 ...

  2. Linux DNS原理简介及配置

    Linux DNS原理简介及配置 DNS简介 DNS原理 域名解析的过程 资源记录 DNS BIND安装配置 一.简介 一般来讲域名比IP地址更加的有含义.也更容易记住,所以通常用户更习惯输入域名来访 ...

  3. DNS(bind)服务器安装和配置

    一.前言 DNS 域名系统(英文:Domain Name System,缩写:DNS)是因特网的一项服务.它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网.DNS使用TCP ...

  4. DNS bind子域授权安装

    失败经验:rhel 6.x bind 9.8,两台做子域授权,最后失败.原因不详. 改用rhel 5.5, bind 9.3,同样的配置,就成功了.具体记录一下9.3的配置. 安装:采用安装RHEL时 ...

  5. 为linux dns (bind named)服务器配置 单独的笔记

    注意: 当在把 named.ca文件下载好13个根dns服务器的 全球记录后, 就不再需要别的 dns服务器来辅助获得了. 只要把所有 本地服务器 不能解析的请求, 都发送到 . 点根去就行了, 所以 ...

  6. dns bind配置教程

    实验环境 三台centos7虚拟机,一台ip为192.168.52.130,一台为192.168.52.131,最后一台为192.168.52.132 安装bind 使用yum -y insall b ...

  7. DNS Bind服务配置解析

    DNS域名解析服务(Domain Name System)是用于解析域名与IP地址对应关系的服务,功能上可以实现正向解析与反向解析: 一.DNS服务器工作模式分类: 1.主服务器:在特定区域内具有唯一 ...

  8. DNS/BIND in Debian

    Debian official document:http://www.debian.org/doc/manuals/network-administrator/ch-bind.html Buildi ...

  9. DNS BIND之rndc介绍及使用

    rndc(Remote Name Domain Controllerr)是一个远程管理bind的工具,通过这个工具可以在本地或者远程了解当前服务器的运行状况,也可以对服务器进行关闭.重载.刷新缓存.增 ...

  10. DNS服务简介

    一.域名系统 1.域名系统概述 域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址.域名系统其实就是名字系统.为什么不叫“名字” ...

随机推荐

  1. 一个具有缓存数据功能的HttpWebRequest工具类

    背景:一个公共站点中的数据,供其它子站点共享,为了提高性能,简单实现了Http 1.1的缓存功能 特点:可以缓存Html数据到内存中;缓存具有过期时间;缓存过期后,通过再确认的方式来决定是否更新缓存; ...

  2. faster rcnn 详解

    转自:https://zhuanlan.zhihu.com/p/31426458 经过R-CNN和Fast RCNN的积淀,Ross B. Girshick在2016年提出了新的Faster RCNN ...

  3. GraphChi/graphchi-java程序配置

    1.导入graphchi-java maven项目时报错: Plugin execution not covered by lifecycle configuration: org.scala-too ...

  4. [整理]Win下好用的Markdown工具

    用过haroopad,MarkPad,Sublime + markdown插件,前2款勉强能用,都处于继续开发中,haroopad支持的语法相对较少,提示也不明显,MarkPad还是有不少bug. 后 ...

  5. [整理]Visual Studio 的Application Insights

    简单介绍 Application Insights(预览版) Visual Studio 的Application Insights插件简介 Application Insights for Visu ...

  6. [整理]定义但未初始化赋值的局部变量与OXCCCCCCCC

    开发环境 : win7 32bit ,VS2010,先看一段C代码: #include <stdio.h> int main(){ int x; //-858993460 printf(& ...

  7. 第9月第26天 pairs和ipairs cocos2dx 动画

    1. a={ ip = "127.0.0.1", port = 6789 } for i,v in pairs(a) do print(i,v) end a={1} for i,v ...

  8. 记webpack下进行普通模块化开发基础配置(自动打包生成html、多入口多页面)

    写本记时(2018-06-25)的各版本 "webpack": "^4.6.0"  //可直接使用4x以上的开发模式,刷新很快 "webpack-de ...

  9. 以python代码解释fork系统调用

    import os print('Process (%s) start...' % os.getpid()) # Only works on Unix/Linux/Mac: pid = os.fork ...

  10. 苹果ANCS协议学习【转】

    苹果ANCS协议学习 转自:http://www.cnblogs.com/alexcai/p/4321514.html 综述 苹果通知中心(Apple Notification Center Serv ...