源码编译安装bind
author:JevonWei
版权声明:原创作品
编译bind
准备阶段:
- 下载bind软件包,然后传输到系统中
https://www.isc.org/downloads/ - 安装开发包组
yum -y groupinstall "Development tools"
3 . 解压bind软件包
tar xvf bind-9.10.5-P3.tar.gz - 创建named系统用户账号
useradd -r -d /var/named -s /sbin/nologin -u 53 named \-r 指定系统账号,-d指定家目录为/var/named -s指定shell环境为/sbin/nologin -u 指定UID为53 - 创建named的家目录及修改所属组信息
mkdir /var/named
chgrp named /var/named/ \修改所属组为named
chmod o= /var/named/ - iptables -F
- 下载bind软件包,然后传输到系统中
编译
cd bind-9.10.5-P3
./configure --help \查看configure编译的说明
mkdir /usr/src/bind9 \新建目录作为bind的根目录
./configure --prefix=/usr/src/bind9/ \执行编译安装,出现如下提示时,需要安装OpenSSL软件包或在编译时使用--without-openssl关闭安全加密功能

./configure --prefix=/usr/src/bind9/ --without-openssl
make && make install
vim /etc/profile.d/bind9.sh \添加bind9二进制文件的路径到全局变量中
export PATH=/usr/src/bind9/sbin:/usr/src/bind9/bin:$PATH. /etc/profile.d/bind9.sh \刷新生效
ls /usr/src/bind9/bin
which dig \测试dig命令的路径是否正确
man dig \测试帮助文档命令路径是否正确
vim /usr/src/bind9/etc/named.conf \新建named.conf配置文件
options {
directory "/var/named";
};
zone "." {
type hint;
file "root.ca";
};编辑DNS . 文件,可从其他主机中复制,可在网络中某个DNS服务器中抓取
dig -t NS . @172.16.0.1 > /var/named/root.ca \抓取 .DNS数据到/var/named/root.ca
vim /usr/src/bind9/etc/named.conf \添加DNS解析域文件
options {
directory "/var/named";
};
zone "." {
type hint;
file "root.ca";
};
zone "danran.com" {
type master;
file "danran.zone";
};vim /var/named/danran.zone \编辑DNS数据库文件
$TTL 1D
@ IN SOA ns admin ( 0 1D 10M 3D 1H)
NS nsns A 192.168.198.136
www A 192.168.198.150named --help \查看named命令的使用帮助
vim /etc/man.config \将named帮助文档的路径写入/etc/man.config全局文件中,/usr/src/bind9/share/man/为named的帮助文档路径
MANPATH /usr/src/bind9/share/man/
man named \查看named的帮助文档
named -f -g -d 3 -u named \ 开启named服务,-f 前台执行,-g 将日志信息输出到标准输出,-d 以什么级别显示debug信息,-u 指定什么用户执行命令
客户端访问测试
dig www.danran.com @192.168.198.136
安装rndc
1. 生成DNS key文件
rndc-confgen -r /dev/urandom > /usr/src/bind9/etc/rndc.con
2. vim /usr/src/bind9/etc/rndc.conf \\将文件中的如下注释内容剪切到/usr/src/bind9/etc/named.conf文件中
# Use with the following in named.conf, adjusting the allow list as needed:
# key "rndc-key" {
# algorithm hmac-md5;
# secret "JZMdWLCUJhuMaes8bUJJKw==";
# };
#
# controls {
# inet 127.0.0.1 port 953
# allow { 127.0.0.1; } keys { "rndc-key"; };
# };
# End of named.conf
3. vim /usr/src/bind9/etc/named.conf \\将/usr/src/bind9/etc/rndc.conf文件中剪切的内容复制到此文件中,并去掉#注释信息
# Use with the following in named.conf, adjusting the allow list as needed:
key "rndc-key" {
algorithm hmac-md5;
secret "JZMdWLCUJhuMaes8bUJJKw==";
};
controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc-key"; };
};
# End of named.conf
4. named -f -g -d 3 -u named \\ 开启named服务,-f 前台执行,-g 将日志信息输出到标准输出,-d 以什么级别显示debug信息,-u 指定什么用户执行命令
5. ss -ntln \\rndc的953端口一打开
6. rndc reload \\rndc命令已安装
7. rndc querylog \\打开named的日志功能
8. rndc status \\查看named的状态信息
编译安装压力测试工具queryperf
编译安装queryperf
cd /root/bind-9.10.5-P3/contrib/queryperf \切换到bind的解压文件目录的contrib/queryperf
./configure \编译queryperf此工具
make
cp /root/bind-9.10.5-P3/contrib/queryperf/queryperf /usr/src/bind9/bin/ \复制queryperf工具的二进制文件到/usr/src/bind9/bin/路径中
queryperf --help \查看queryperf工具的帮助
scp /usr/src/bind9/bin/queryperf /192.168.198.134:/bin \复制queryperf二进制文件到另一台主机的bin目录下进行压力测试
vim /root/text.txt \编辑需要解析的数据文件
www.danran.com A
danran.com NS
ftp danran.com A
www.danran.com A
www.danran.com A
www.danran.com A
www.danran.com A
www.danran.com A
www.danran.com A
.....queryperf -d /root/text.txt \本机进行DNS压力测试
远程压力测试
vim /root/text.txt \编辑需要解析的数据文件
www.danran.com A
danran.com NS
ftp danran.com A
www.danran.com A
www.danran.com A
www.danran.com A
www.danran.com A
www.danran.com A
www.danran.com A
.....queryperf -d /root/text.txt -s 192.168.198.134 \-d 指定解析的数据文件,-s 指定需要测试的远程主机
编译bind的相关内容
http://119.23.52.191/编译安装bind及queryperf压力测试工具详解/
http://119.23.52.191/dns服务/
源码编译安装bind的更多相关文章
- CentOS 7.4 源码编译安装 Redis
一.CentOS 7.4 源码编译安装 Redis 1.下载源码并解压 wget http://download.redis.io/releases/redis-4.0.10.tar.gz tar ...
- 小D课堂 - 零基础入门SpringBoot2.X到实战_第9节 SpringBoot2.x整合Redis实战_38、源码编译安装Redis4.x
笔记 2.源码编译安装Redis4.x 简介:使用源码安装Redis4.x和配置外网访问 1.快速安装 https://redis.io/download#installation ...
- SSH/SSL 源码编译安装简易操作说明
环境:CentOS 6.7 安全加固需求,由于某盟扫描系统主机有SSL系列漏洞,客户要求必须修复: 解决方案:将SSH/SSL升级到最新版本,删除SSL旧版本(实测不删除旧版本某盟扫描无法通过). 当 ...
- 源码编译安装 MySQL 5.5.x 实践
1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...
- 烂泥:mysql5.5数据库cmake源码编译安装
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前也写过一篇有关mysql5.0源码编译的文章,该文章为<烂泥:mysql5.0数据库源码编译安装>.但是MySQL自5.5版本以后,就开 ...
- Centos7.X 源码编译安装subversion svn1.8.x
说明:SVN(subversion)的运行方式有两种:一种是基于Apache的http.https网页访问形式:还有一种是基于svnserve的独立服务器模式.SVN的数据存储方式也有两种:一种是在B ...
- centos6.5环境源码编译安装mysql5.6.34
centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...
- centos 6.5源码编译安装subversion 1.8.10
一.简介 CentOS 6.5的yum源可以安装的SVN客户端版本太低了,1.6.11,所以需要升级到1.8.10,而官网有没有找到1.8.10的安装包,只能选择源码编译安装. 二.安装步骤 参考官网 ...
- Linux环境PostgreSQL源码编译安装
Linux环境PostgreSQL源码编译安装 Linux版本: Red Hat 6.4 PostgreSQL版本: postgresql-9.3.2.tar.gz 数据存放目录: /var/post ...
随机推荐
- 【设计模式】Bridge模式(桥接模式)
最近的一次面试中,被问到桥接模式,以前呢并没有很仔细的研究过这个设计模式,借此机会剖析一下. 先给出自己对这个模式理解后的源码: interface A{ void methodA(); } inte ...
- 1.Why Apache Spark?
Why Apache Spark? 1 Why Apache Spark 2 关于Apache Spark 3 如何安装Apache Spark 4 Apache Spark的工作原理 5 spark ...
- github 或者gitlab 设置添加SSH
克隆项目二种方式: 1. 使用https url克隆, 复制https url 然后到 git clone https-url 2.使用 SSH url 克隆却需要在克隆之前先配置和添加好 SSH ...
- 【原创】08. easyui form控件,回调参数存在后缀 audio controls="controls" style="display: none;"></audio>
版本: jQuery EasyUI 1.4.3 springmvc 3.2.6 谷歌浏览器,内核版本 chrome 56.0.2924.87 360急速浏览器,内核版本 chrome 50.0.266 ...
- kill 和killall----杀死进程
1.根据进程ip查看进程名 Liunx中 通过进程名查找进程PID可以通过 pidof [进程名] 来查找. 反过来 ,通过PID查找进程名则没有相关命令.但在linux根目录中,有一个/proc的 ...
- 使用OracleDBLink进行数据库之间对象的访问操作
Oracle中自带了DBLink功能,它的作用是将多个oracle数据库逻辑上看成一个数据库,也就是说在一个数据库中可以操作另一个数据库中的对象,例如我们新建了一个数据database1,我们需要操作 ...
- MySQL里创建外键时错误的解决
--MySQL里创建外键时错误的解决 --------------------------------2014/04/30 在MySQL里创建外键时(Alter table xxx add const ...
- 安装atlas后执行hive命令报错
在集群中安装atlas,在安装atlas的节点上执行hive -e "show databases;" 正常,但是在集群中其他节点上执行hive -e "show dat ...
- 【问题解决记录】Error: Cannot find module '@ionic/app-scripts'
主要问题为: ionic serve 编译在浏览器中预览项目时,提示报错 Error: Cannot find module '@ionic/app-scripts'.这个问题的主要现象就是创建的项目 ...
- 一个基于JRTPLIB的轻量级RTSP客户端(myRTSPClient)——实现篇:(五)用户接口层之提取媒体流数据
当RTSP客户端向RTSP服务端发送完PLAY命令后,RTSP服务端就会另外开启UDP端口(SDP协商定义的端口)发送RTP媒体流数据包.这些数据包之间会间隔一段时间(毫秒级)陆续被发送到RTSP客户 ...

