编译安装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
下一篇 2015-05-05

相关推荐

  • 安装CentOS 7.2操作系统

        工具:     VMware Workstation     http://www.vmware.com/cn/products/workstation/workstation-evaluation.html  &nbsp…

    Linux干货 2016-08-04
  • rpm和yum的使用,程序包编译安装以及编译apache过程中出现的问题

    一、rpm包管理          用法: rpm [选项…]              查询/验证软件包选项:   &nbsp…

    Linux干货 2016-03-19
  • 第4周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。     ~]# cp -r /etc/skel/ /home/tuser1     ~]# chmod 700 /home/tuser1/ 2、…

    Linux干货 2016-12-25
  • linux程序包管理

    Linux程序包管理        API:Application Program Interface        ABI:Application Binary Interface           Unix-like, &n…

    Linux干货 2016-12-30
  • Linux之网络管理

    Linux之网络管理     在学习linux的过程中,Linux网络的管理和配置中是很重要的,几乎学习的后期都离不开网络的概念和配置,如集群中的使用,学习好Linux网络至关重要。     Linux网络IP地址有两种配置方式:静态指定和动态分配 动态分配就是利用DHCP服务器,动态的给linux主机分配IP地址。静…

    Linux干货 2016-09-05
  • shell脚本的练习

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态  在线的主机使用绿色显示  不在线的主机使用红色显示 #!/bin/bash for i in {1..254};do { ip=…

    2017-09-17