编译安装bind-9.9.5及测试

编译安装bind-9.9.5

环境:Development Tools和Server Platform Development

[[email protected] ~]# tar xf bind-9.9.5.tar.gz   #解压 
[[email protected] ~]# cd bind-9.9.5               #进入目录

应该以普通用户运行,所以创建普通用户

[[email protected] bind-9.9.5]# id named   #查看named用户是否存在
id: named: No such user
[[email protected] bind-9.9.5]# groupadd -r -g 53 named   #创建named组
[[email protected] bind-9.9.5]# useradd -g named -r -u 53 named   #创建named用户
[[email protected] bind-9.9.5]# id named   #查看named用户信息
uid=53(named) gid=53(named) groups=53(named)
编译安装
[[email protected] bind-9.9.5]# ./configure --prefix=/usr/local/bind9 --sysconfdir=/etc/named/ --enable-threads --disable-chroot --disable-ipv6    
[[email protected] bind-9.9.5]# make && make install
选项:
--enable-threads   #启用多线程功能
--disable-chroot   #不启用chroot功能
--disable-ipv6     #不启用ipv6

bind客户端工具:bind-libs,bind-utils在安装目录下bin下

定义环境变量:

[[email protected] bind9]# vim /etc/profile.d/bind.sh
export PATH=/usr/local/bind9/bin:/usr/local/bind9/sbin:$PATH
[[email protected] bind9]# . /etc/profile.d/bind.sh 
[[email protected] bind9]# dig -v
DiG 9.9.5

导出MAN文档:

[[email protected] named]# vim /etc/man.config 
MANPATH /usr/local/bind9/share/man

导出头文件

如果基于软件进行二次开发,则需要导出头文件和库文件。但named不需要。

导出库文件

[[email protected] bind9]# ls lib
libbind9.a  libdns.a  libisc.a  libisccc.a  libisccfg.a  liblwres.a
由于都是静态库,所以不用导出,否则需要编辑/etc/ld.so.conf.d/bind9.conf文件写入库目录

配置文件:

[[email protected] ~]# cd /etc/named
[[email protected] named]# vim named.conf
options {
        directory "/var/named";   #区域文件所在目录
        recursion yes;            #是否允许递归
};
zone "localhost" IN {                   
        type master;
        file "localhost.zone";
        allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "127.0.0.zone";
        allow-update { none; };
};

更改属主属组

[[email protected] named]# chown root:named named.conf
[[email protected] named]# chmod 640 named.conf
[[email protected] named]# mkdir /var/named/slaves -pv
mkdir: created directory `/var/named‘
mkdir: created directory `/var/named/slaves‘
[[email protected] named]# chown root:named /var/named
[[email protected] named]# chown named:named /var/named/slaves/
[[email protected] named]# chmod 750 /var/named
[[email protected] named]# chmod 770 /var/named/slaves/

提供ca文件

[[email protected] named]# dig -t NS . @a.root-servers.net > /var/named/named.ca

创建正反向解析文件:

[[email protected] named]# vim localhost.zone
$TTL 86400
@       IN      SOA     localhost.      admin.localhost. (
                                2015072301
                                3H
                                15M
                                7D
                                1D )
        IN      NS      localhost.
        IN      A       127.0.0.1
[[email protected] named]# vim 127.0.0.zone
$TTL 86400
@       IN      SOA     localhost.      admin.localhost. (
                                2015072301
                                3H
                                15M
                                7D
                                1D )
        IN      NS      localhost.
        IN      PTR     localhost.

更改属主属组

[[email protected] named]# chgrp named 127.0.0.zone localhost.zone named.ca 
[[email protected] named]# chmod 640 127.0.0.zone localhost.zone named.ca 
[[email protected] named]# ll
total 16
-rw-r-----. 1 root  named  133 Jul 23 19:50 127.0.0.zone
-rw-r-----. 1 root  named  129 Jul 23 19:48 localhost.zone
-rw-r-----. 1 root  named 2177 Jul 23 19:45 named.ca
drwxrwx---. 2 named named 4096 Jul 23 19:39 slaves

检查配置文件、区域文件语法错误

[[email protected] named]# named-checkconf /etc/named/named.conf 
[[email protected] named]# named-checkzone "localhost" /var/named/localhost.zone 
zone localhost/IN: loaded serial 20150723
OK
[[email protected] named]# named-checkzone "0.0.127.in-addr.arpa" /var/named/127.0.0.zone 
zone 0.0.127.in-addr.arpa/IN: loaded serial 20150723
OK

启动

[[email protected] named]# named -g -u named -c /etc/named/named.conf

添加区域解析库文件

[[email protected] named]# vim /etc/named/named.conf 
zone "school.com" IN {
        type master;
        file "school.com.zone";
        allow-transfer {192.168.0.0/24; 127.0.0.1; };
        allow-update { none; };
};
[[email protected] named]# vim /var/named/school.com.zone
$TTL 3600
@       IN      SOA     ns.school.com.  admin.school.com. (
                        2015072301
                        1H
                        10M
                        7D
                        1D )
        IN      NS      ns
ns      IN      A       192.168.0.9
www      IN      A       192.168.0.15

更改属主属组

[[email protected] named]# chown :named school.com.zone 
[[email protected] named]# chmod 640 school.com.zone

启动

[[email protected] named]# named -u named -c /etc/named/named.conf

[[email protected] named]# ss -tunl

重启后测试

[[email protected] named]# dig -t A www.school.com @192.168.0.9
; <<>> DiG 9.9.5 <<>> -t A www.school.com @192.168.0.9
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53521
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.school.com.INA
;; ANSWER SECTION:

生成rndc

[[email protected] named]# rndc-confgen -r /dev/urandom > /etc/named/rndc.conf
[[email protected] named]# cat /etc/named/rndc.conf
添加rndc信息
[[email protected] named]# vim /etc/named/named.conf
 key "rndc-key" {
        algorithm hmac-md5;
        secret "tXqZXfssZ1HPhn28T+GhUA==";
 };
 
 controls {
        inet 127.0.0.1 port 953
                allow { 127.0.0.1; } keys { "rndc-key"; };
 };

重读配置文件

[[email protected] named]# killall -HUP named 
[[email protected] named]# rndc reload
server reload successful
[[email protected] named]# rndc status
version: 9.9.5 <id:f9b8a50e>
CPUs found: 4
worker threads: 4
UDP listeners per interface: 4
number of zones: 101
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
recursive clients: 0/0/1000
tcp clients: 0/100
server is up and running

改属主属组

[[email protected] named]# chmod 440 rndc.conf 
[[email protected] named]# chgrp named rndc.conf

提供脚本

/etc/rc.d/init.d/functions函数很经典,应该多读

压力测试

bind-9.9.5/contrib/queryperf

编译

./configure

make不用make install

cp queryperf /usr/bin安装成功

建立一个测试文件

格式

ns.school.com A
mail.school.com A
pop.school.com A

测试

[[email protected] ~]# queryperf -d test.txt -s 192.168.0.9

DNS Query Performance Testing Tool
Version: $Id: queryperf.c,v 1.12 2007/09/05 07:36:04 marka Exp $

[Status] Processing input data
[Status] Sending queries (beginning with 192.168.0.9)
[Status] Testing complete

Statistics:

  Parse input file:     once
  Ended due to:         reaching end of file

  Queries sent:         257664 queries
  Queries completed:    257664 queries
  Queries lost:         0 queries
  Queries delayed(?):   0 queries

  RTT max:         	0.019282 sec
  RTT min:              0.000038 sec
  RTT average:          0.000383 sec
  RTT std deviation:    0.000590 sec
  RTT out of range:     0 queries

  Percentage completed: 100.00%
  Percentage lost:        0.00%

  Started at:           Thu Jul 23 22:13:32 2015
  Finished at:          Thu Jul 23 22:13:39 2015
  Ran for:              6.266114 seconds

  Queries per second:   41120.222198 qps
时间: 2024-11-09 00:48:13

编译安装bind-9.9.5及测试的相关文章

16、编译安装bind 9.10.6及queryperf性能测试 学习笔记

1.安装开发环境 [[email protected] ~]# yum -y groupinstall "Server Platform Development" "Development tools" 2.编译安装bind [[email protected] ~]# tar xf bind-9.10.6.tar.gz [[email protected] ~]# cd bind-9.10.6 [[email protected] bind-9.10.6]# ./

Centos6编译安装bind文件,注意事项

编译安装 1.下载并安装Centos6 64位系统,记住不要最小化安装,最好安装带图形界面.内核2.6 2.系统安装好后,配置阿里云yum源,可连接外网.如果是内网自己去找yum源,这里简单介绍下配置阿里云yum源 直接给出命令 cd /etc/yum.repos.d mkdir files mv *repo* files vim base.repo [base] baseurl=http://mirrors.aliyun.com/centos/7/os/x86_64/ gpgcheck=0 保

编译安装bind

编译安装bind (1)下载源码包 https://www.isc.org/downloads/ (2)解压缩源码包 [[email protected]~]#mv bind-9.10.6.tar.gz /usr/src/ [[email protected]~]#cd /usr/src/ [[email protected]/usr/src]#tar xvf bind-9.10.6.tar.gz (3)来我们先看看bind包原来有没有安装脚本呢? [[email protected] ~]# 

编译安装bind练习

启动前检查环境: 网络.root用户.是否存在配置,rndc.conf,/var/named目录,及权限配置 服务脚本 #!/bin/bash ##编译方法: ./configure --prefix=/usr/local/bind9 --sysconfdir=/etc/named --disable-ipv6 --disable-chroot --enable-threads # chkconfig: - 13 87 # description # . /etc/init.d/function

编译安装bind及SysV服务脚本编写

1.解析程序包 # wget http://ftp.isc.org/isc/bind9/9.7.3/bind-9.7.3.tar.gz    # tar xvf bind-9.7.3.tar.gz    # cd bind-9.7.3.tar.gz # ./configure --prefix=/usr/local/bind9 --sysconfdir=/etc/named/ --disable-ipv6 --enable-threads --enable-epoll --disable-chr

bind编译安装及压力测试

一.编译安装bind 1.编译安装 # useradd -r -u 53 -s /sbin/nologin named   #准备好一个名为named的系统用户 # tar xf bind-9.9.5.tar.gz # cd bind-9.9.5 # ./configure --prefix=/usr/local/bind9 --sysconfdir=/etc/named --disable-ipv6 --disable-chroot --enable-threads # make &&

bind的编译安装以及压力测试工具queryperf的使用

编译安装bind 安装前须知: 1.bind源代码程序在isc.org网站上,并下载好源码包bind-9.10.1-P1.tar.gz 1.安装开发组件 #yum groupinstall "Development Tools" "Server Platform Development" -y 2.解压安装源码包 #tar xf bind-9.10.1-P1.tar.gz #cd bind-9.10.1-P1 注意查看READ.TXT文件 因为named进程只需普通

+++++++子域授权与编译安装(二)

子域授权.转发区域<子域解析父域>.DNS安全配置<acl定义,内置变量,acl安全指令>.dns使用view实现智能dns.CDN,全局负载均衡.编译安装bind.dns压力测试 一.恢复快照 二.缓存服务器 三.(正.反)区域解析库配置 四.主从同步 五.子域授权 六.转发区域 七.安全配置 八.view实现智能DNS 九.编译安装BIND 十.压力测试 拓扑模型 一.配置ntp服务器<192.168.58.131> 1.安装ntp # yum -y -q inst

+++++++子域授权与编译安装(一)

子域授权.转发区域<子域解析父域>.DNS安全配置<acl定义,内置变量,acl安全指令>.dns使用view实现智能dns.编译安装bind.dns压力测试 关闭dnssec 子域授权: 分布式数据库的主要手段 基于授权将功能分散出去,让多个主机分别处理 转发工作模式 全部转发:在/etc/named.conf中定义,所有非本机所负责的域的请求均转发 定义格式: options {     forward {first|only};     forwarders { IP; };

源码安装Bind 9.10 正式版 开启DLZ数据库支持

昨天看见新闻,说Bind 9.10.3版本已经正式发布了,迫不及待安装试试,,, 我前面的文章已经体验过 bind 9.10的RC版的个别新功能, 见文 Bind 9.10 源码安装 以及 新增redirect 类型 以及$GENERATE指令用法 系统环境:CentOS 6.6 x86_64 1,下载bind 9.10.3的源码包. http://isc.org 2,添加用户,和编译安装bind # tar xf bind-9.10.3.tar.gz # cd bind-9.10.3 # gr