编译安装bind9

一、下载bind9.9.5源码包

    可以通过www.isc.org站点来获得源码包。

二、将源码包解压到任意目录

    源码包通常都是.tar.gz文件,因此我们需要先将其解压:

0.png

三、编译安装bind

    1、安装前的准备工作

        安装gcc和openssl-devel

2.png3.png

        gcc无需多说,编译时必须要用到的工具;安装openssl-devel是因为在进行编译时,提示openssl头文件找不到,不安装openssl-devel的话可以使用–without-openssl选项,但无法使用DNS的安全功能。

    2、生成Makefile

01.png

1.png

    选项:

        –prefix:指定安装路径;

        –sysconfdir:指定配置文件路径;

        –enable-threads:启用线程;

        –disable-chroot:禁用chroot;

        –disable-ipv6:禁用ipv6;

        –with-openssl:指明openssl头文件的位置。

    3、编译安装

4.png

05.png四、配置bind的环境

    1、使用bind9的自带命令

        在bind9的安装目录中的bin和sbin中存放着其自带的命令,可以将这两个目录加入到PATH变量中:

5.png

        重新登录终端后查看PATH:

6.png

    2、man手册

        在bind9的安装目录中share下面存放了man手册,也可以将man加入到系统中实现使用man named即可调用。

7.png

        在/etc/man.config中加入一行即可,如下图所示:

8.png

    3、库文件

        创建/etc/ld.so.conf.d/bind9.conf文件,并添加以下内容即可:

9.png

五、创建目录及配置文件

    1、主配置文件

        创建/etc/named/named.conf文件,内容如下:

13.png

    2、创建系统用户和组

10.png

    3、修改主配置文件权限并创建目录

11.png

    4、创建named.ca文件

        named.ca文件中是存放全球根服务信息的,可以使用一台可以访问互联网的DNS服务器来获得根服务器信息,下图中使用了联通的DNS服务器进行查询。

12.png    5、创建localhost.zone文件和127.0.0.zone文件

14.png

    6、修改区域文件的权限 

15.png

27.png

六、启动服务

    在启动服务之前,先检查一下主配置文件是否有语法错误:

16.png

    named命令用于启动服务,其选项含义为:

        -u:指定运行服务的用户;

        -c:指定读取的配置文件。

    使用ss命令查看53端口是否已启用监听:

17.png    至此DNS服务器已经可以正常工作了,不过rndc目前还不能使用,下面我们配置一下rndc。

七、rndc

    1、创建rndc.conf

        rndc的功能实现依靠/etc/named目录中的rndc.conf文件来实现,先来创建此文件:

18.png

    2、将rndc.conf中的内容复制到主配置文件中,如下图所示:

19.png20.png

3、重读配置文件

21.png

4、设置权限

22.png

5、验证

23.png

八、测试 

    我们来新建一个正向区域测试一下DNS服务器能否正常解析。

    1、修改主配置文件

24.png

    2、创建区域配置文件

25.png

    3、修改权限

28.png

    4、重启服务

23.png

    5、解析主机记录

26.png

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

(0)
petmasterpetmaster
上一篇 2015-05-04 18:39
下一篇 2015-05-05 18:17

相关推荐

  • Linux系统时间简单修改方法

          Linux时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟。系统时钟是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电的时钟,这个硬件时钟可以在BIOS中进行设置。Linux中的所有命令(包括函数)都是采用的系统时钟设置。Linux操作系统运行…

    Linux干货 2015-06-12
  • C++的std::string的“读时也拷贝”技术!

    C++的std::string的读时也拷贝技术! 嘿嘿,你没有看错,我也没有写错,是读时也拷贝技术。什么?我的错,你之前听说写过时才拷贝,嗯,不错的确有这门技术,英文是Copy On Write,简写就是COW,非常’牛’!那么我们就来看看这个’牛’技术的效果吧。 我们先编写一段程序 #include <string> #include…

    Linux干货 2015-04-03
  • CentOS程序包管理

    对于Linux系统而言,其能执行的程序为二进制格式,而对于程序开发者而言,直接利用二进制开发程序是不太现实的,所以一般都是利用高级语言来进行软件开发,其程序也即称为源代码;那么我们在对一个程序进行安装、升级、卸载、 查询、校验等操作时,需要对每个源代码进行编译成为二进制程序,那么显然是不太现实的。所以在各Linux发行版中一般都带有程序包管理器。 所谓程序包…

    Linux干货 2016-08-25
  • Linux进程及管理(1)

    Linux进程及管理(1) 内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能 Process: 运行中的程序的一个副本; 存在生命周期Linux内核存储进程信息的固定格式:task struct 多个任务的的task struct组件的链表:task list 进程创建: init 父子关系 进程:都由其父进程创建 fork(), cl…

    Linux干货 2015-05-28
  • AWK 的用法

    目录: 一、概述 二、awk基本语法格式 三、awk基本操作 四、awk条件及循环语句 五、awk函数 六、awk演示示例(源自于man手册) 一、概述 产品概述:  awk是一种编程语言,用于在linux/unix下对文本和数据进行扫描与处理。数据可以来自标准输入、文件、管道。&nbsp…

    Linux干货 2017-05-30
  • 马哥教育30期学员开学典礼

         早上背上书包去学校报到,很有一番学生时期去新学校的感觉,既兴奋又紧张,一段新的人生历程即将开始。      大学时曾经劝说我的同学别逃选修课,我说也许你苦学四年的专业比不上一节选修课对你的将来更有用,如今我却用亲身经历验证了这句话,我是通过大学的一堂选修课了解的Linux系统,开源软件,没想到多年后今天的我竟然也要入这行了。       到教室后,…

    2018-03-26