一 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. 使用swagger2配置springboot时出现的问题

    这个问题踩了几次坑了,这次又遇到了,不记录一下看来是不长记性了: 测试普通的增删改查的时候,发现删除和查询是对的,可是增加和更新却数据绑定不到controller的参数上面去. 因为是自定义的实体类, ...

  2. HTTP header location 重定向 URL

    http头信息 头信息的作用很多,最主要的有下面几个:1.跳转当浏览器接受到头信息中的 Location: xxxx 后,就会自动跳转到 xxxx 指向的URL地址,这点有点类似用 js 写跳转.但是 ...

  3. eclipse启动tomcat内存溢出的解决方式

    eclipse启动tomcat内存溢出的解决方式 ——IT唐伯虎 摘要:eclipse启动tomcat内存溢出的解决方式. 1.打开Run Configurations 2.在VM arguments ...

  4. Sparrow.Chart.Wpf控件的动态调用

    最近需要在Wpf程序中显示曲线,感觉Sparrow.Chart.Wpf控件不错(http://sparrowtoolkit.codeplex.com/),完全开源的一个控件支持,可以通过nuget下载 ...

  5. Codeforces 314 E. Sereja and Squares

    http://codeforces.com/contest/314/problem/E 题意: 原本有一个合法的括号序列 擦去了所有的右括号和部分左括号 问有多少种填括号的方式使他仍然是合法的括号序列 ...

  6. Struts2_day02

    一.内容大纲 1 结果页面配置 (1)全局结果页面 (2)局部结果页面 - 配置全局也配置局部,最终局部为准 (3)result标签type属性 - 默认值 dispatcher做转发 - redir ...

  7. Java面试题系列(二)Java内存模型

    在进行Java编程时,我们通常需要通过new创建一个对象的实例.就比如有一个People的类,那么创建一个People的实例:People w_people = new People(); 此时,ne ...

  8. ASP.NET中最简单的自定义控件

    ASP.NET用户控件一般适用于产生相对静态的内容,所以没有builtin的事件支持.本文讨论用户控件返回事件的方法.          假定用户控件(UserControl.ascx)中包含按钮控件 ...

  9. ASP.NET私有构造函数作用

    一.私有构造函数的特性 1.一般构造函数不是私有或者保护成员,但构造函数可以使私有成员函数,在一些特殊的场合,会把构造函数定义为私有或者保护成员. 2.私有构造函数是一种特殊的实例构造函数.它通常用在 ...

  10. v140平台工具集与v110工具集选择

    今天在编译用vs2012编译C++动态库提示:error MSB8020: The builds tools for v140_xp (Platform Toolset = 'v140_xp') ca ...