zoukankan      html  css  js  c++  java
  • 源码编译安装bind

    author:JevonWei
    版权声明:原创作品


    编译bind

    • 准备阶段:

      1. 下载bind软件包,然后传输到系统中
        https://www.isc.org/downloads/
      2. 安装开发包组
        yum -y groupinstall "Development tools"
        3 . 解压bind软件包
        tar xvf bind-9.10.5-P3.tar.gz
      3. 创建named系统用户账号
        useradd -r -d /var/named -s /sbin/nologin -u 53 named -r 指定系统账号,-d指定家目录为/var/named -s指定shell环境为/sbin/nologin -u 指定UID为53
      4. 创建named的家目录及修改所属组信息
        mkdir /var/named
        chgrp named /var/named/ 修改所属组为named
        chmod o= /var/named/
      5. iptables -F
    • 编译

      1. cd bind-9.10.5-P3

      2. ./configure --help 查看configure编译的说明

      3. mkdir /usr/src/bind9 新建目录作为bind的根目录

      4. ./configure --prefix=/usr/src/bind9/ 执行编译安装,出现如下提示时,需要安装OpenSSL软件包或在编译时使用--without-openssl关闭安全加密功能
        image

      5. ./configure --prefix=/usr/src/bind9/ --without-openssl

      6. make && make install

      7. vim /etc/profile.d/bind9.sh 添加bind9二进制文件的路径到全局变量中
        export PATH=/usr/src/bind9/sbin:/usr/src/bind9/bin:$PATH

      8. . /etc/profile.d/bind9.sh 刷新生效

      9. ls /usr/src/bind9/bin

      10. which dig 测试dig命令的路径是否正确

      11. man dig 测试帮助文档命令路径是否正确

      12. vim /usr/src/bind9/etc/named.conf 新建named.conf配置文件

        options {
        directory "/var/named";
        };
        zone "." {
        type hint;
        file "root.ca";
        };

      13. 编辑DNS . 文件,可从其他主机中复制,可在网络中某个DNS服务器中抓取

      14. dig -t NS . @172.16.0.1 > /var/named/root.ca 抓取 .DNS数据到/var/named/root.ca

      15. 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";
        };

      16. vim /var/named/danran.zone 编辑DNS数据库文件

        $TTL 1D
        @ IN SOA ns admin ( 0 1D 10M 3D 1H)
        NS ns

        ns A 192.168.198.136
        www A 192.168.198.150

      17. named --help 查看named命令的使用帮助

      18. vim /etc/man.config 将named帮助文档的路径写入/etc/man.config全局文件中,/usr/src/bind9/share/man/为named的帮助文档路径

        MANPATH /usr/src/bind9/share/man/  
        
      19. man named 查看named的帮助文档

      20. 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
    

    image

    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
    

    image

    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

      1. cd /root/bind-9.10.5-P3/contrib/queryperf 切换到bind的解压文件目录的contrib/queryperf

      2. ./configure 编译queryperf此工具

      3. make

      4. cp /root/bind-9.10.5-P3/contrib/queryperf/queryperf /usr/src/bind9/bin/ 复制queryperf工具的二进制文件到/usr/src/bind9/bin/路径中

      5. queryperf --help 查看queryperf工具的帮助

      6. scp /usr/src/bind9/bin/queryperf /192.168.198.134:/bin 复制queryperf二进制文件到另一台主机的bin目录下进行压力测试

      7. 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
        .....

      8. queryperf -d /root/text.txt 本机进行DNS压力测试

    • 远程压力测试

      1. 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
        .....

      2. 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服务/

    danran
  • 相关阅读:
    剑指offer字符串列表
    剑指offer数组3
    剑指offer数组2
    剑指offer数组1
    剑指offer数组列表
    tensorflow+ssd_mobilenet实现目标检测的训练
    Win7+keras+tensorflow使用YOLO-v3训练自己的数据集
    Java是如何实现跨平台的
    Xshell 、PuTTY 复制文件到Linux
    Asp.Net Core2.0在linux下发布
  • 原文地址:https://www.cnblogs.com/JevonWei/p/7252295.html
Copyright © 2011-2022 走看看