一 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. 部署harbor1.2.0开启ldap验证

    就harbor本身部署来说是非常简单的,之前写过详细步骤,这里不再重复. 这里主要是总结一下部署当中遇到的问题,以及如何开启ldap验证. harbor默认是通过http通信的,当然也支持https, ...

  2. spring BasicDataSource 数据源配置 sqlserver数据库 oracle数据库 mysql数据jdbc配置

    spring BasicDataSource 数据源配置 sqlserver数据库 oracle数据库 mysql数据jdbc配置 jdbc.properties 文件信息如下: ---------- ...

  3. 各种蕴含算法思想的DP - 1

    study from: https://www.cnblogs.com/flashhu/p/9480669.html 1.前缀和 https://www.luogu.org/problemnew/sh ...

  4. linux man命令

    http://note.youdao.com/noteshare?id=98878258c6453f92117355deba8b8439

  5. linux c 编程 ------ 获取时间,计算程序执行时间

    #include <time.h> #include <stdio.h> #include <unistd.h> int main(int argc, char a ...

  6. CentOS 7 系统root用户忘记密码的重置方法

    在一台服务器我们忘记了root的账号或者root账号错误怎么办,我们只有进入到内核里面去修改,具体的操作如下: 1.进入内核 在开机的时候出现下图的界面时 按e键进入内核入下图 2.进入单用户模式 在 ...

  7. excel根据一列关键字将多个表格中所需列合并

    VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup]) lookup_value要查询的列 table_array第一列是被 ...

  8. 在线Python学习网站

    目前我们使用的Python集成环境是Anaconda3,然后使用Jupyter Notebook和Spyder两个开发环境 Goole推出了在线的开发环境,在线网站: https://colab.re ...

  9. Docker 入门 第一部分: 定位和设置

    目录 Docker 入门 第一部分: 定位和设置 Docker概念 镜像和容器 容器和虚拟机 准备你的Docker环境 测试 Docker 的版本 测试 Docker 安装 回顾 总结 Docker ...

  10. [转载]嵌入式C语言中的Doxygen注释模板

    http://blog.csdn.net/willerency/article/details/7083953 嵌入式C语言开发中通常使用Doxygen进行文档的生成.Doxygen支持多种格式,非常 ...