以下安装配置是在192.168.100.87服务器上实施的操作记录。

1.从http://www.isc.org/products/BIND/bind9.html下载bind9的源文件。目前版本为9.7.2-p3,源文件为bind-9.7.2-P3.tar.gz。将源文件bind-9.7.2-P3.tar.gz置于/root目录下。(随便放的,与安装配置无关)
2.解压缩源文件bind-9.7.2-P3.tar.gz
  # cd /root
  # tar -zxvf bind-9.7.2-P3.tar.gz
3.进入安装目录
  # cd bind-9.7.2-P3
4.配置、编译、安装
  # ./configure --prefix=/usr/local/named --disable-openssl-version-check   //安装到/usr/local/named目录下,并且禁止检查openssl版本
  # make
  # make install
安装完成后,生成的可执行文件位于/usr/local/named/sbin目录下。最重要的可执行文件为named和rndc。
5.创建rndc.conf配置文件。
  # cd /usr/local/named/sbin
  # rndc-confgen > /usr/local/named/etc/rndc.conf
  # cd /usr/local/named/etc
  # more /etc/rndc.conf
  输出为: 
       # Start of rndc.conf
       key "rndc-key" {
              algorithm hmac-md5;
              secret "y9xvvfQjdWv9f/Fo7wquBg==";
       };
       
       options {
              default-key "rndc-key";
              default-server 127.0.0.1;
              default-port 953;
       };
       # End of rndc.conf
       
       # Use with the following in named.conf, adjusting the allow list as needed:
       # key "rndc-key" {
       #       algorithm hmac-md5;
       #       secret "y9xvvfQjdWv9f/Fo7wquBg==";
       # };
       #
       # controls {
       #       inet 127.0.0.1 port 953
       #               allow { 127.0.0.1; } keys { "rndc-key"; };
       # };
       # End of named.conf
6.创建named.conf配置文件,并将rndc.conf文件中注释部分拷贝添加到named.conf配置文件中。
   # vi /etc/named.conf
  key "rndc-key" {
         algorithm hmac-md5;
         secret "bX4pVk/C1CO+ROBTEAD84A==";
  };

   controls {
         inet 127.0.0.1 port 953
                 allow { 127.0.0.1; } keys { "rndc-key"; };
  };
7.在named.conf文件中加入以下部分
options {
        directory "/usr/local/named/var";
        pid-file "/usr/local/named/var/run/named.pid";
        /*
         * If there is a firewall between you and nameservers you want
         * to talk to, you might need to uncomment the query-source
         * directive below.  Previous versions of BIND always asked
         * questions using port 53, but BIND 8.1 uses an unprivileged
         * port by default.
         */
         allow-transfer {none;};
//         recursion no;
//         recursion yes;
//         allow-recursion {trusted;};
//         allow-query-cache { any; };
//         query-source address * port 53;
};
zone "." IN {
         type hint;
         file "named.root";
};
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "named.local";
        allow-update { none; };
};
zone "hebei.com.cn" IN {
        type master;
        file "hebei.com.cn";
        allow-update { none; };
};

8.匿名登录到ftp站点,获取/domain目录下的named.root文件和named.ca文件(这两个文件是一样的),将该文件置于/usr/local/named/var目录下。
   # cd /usr/local/named/var
9.创建localhost.zone文件(实际没有创建)
   # vi /var/named/localhost.zone
   $TTL 86400
   $ORIGIN localhost.
   @ 1D IN SOA @ root (
        42 ; serial (d. adams)
        3H ; refresh
        15M ; retry
        1W ; expiry
        1D ) ; minimum
   1D IN NS @
   1D IN A 127.0.0.1
10.创建named.local文件
   # vi named.local
$TTL 86400
      @       IN      SOA     localhost. root.localhost.  (
                                            1997022700 ; Serial
                                            28800      ; Refresh
                                            14400      ; Retry
                                            3600000    ; Expire
                                            86400 )    ; Minimum
                    IN      NS      localhost.
1       IN      PTR     localhost.
11.创建hebei.com.cn文件
   # vi hebei.com.cn
$TTL    86400
@     900       IN      SOA     localhost. root.  (
                                           2003061800 ; Serial
                                           28800      ; Refresh
                                           14400      ; Retry
                                           3600000    ; Expire
                                           86400 )    ; Minimum
                   IN      NS      localhost.
www      900     IN    A       123.123.123.123
12.创建反向解析文件(还没做)
13.启动 /usr/local/named/sbin/named -c /usr/local/named/etc/named.conf
   停止 killall -9 named
14.测试 
C:\Documents and Settings\Administrator>nslookup 192.168.100.87
*** Can't find server name for address 192.168.100.87: Query refused
Server:  UnKnown
Address:  192.168.100.87
Name:    
Address:  123.123.123.123

至此,bind安装配置完成,并测试通过,下面是智能DNS解析配置过程。

什么是智能域名服务器,有什么用?简单的说,就是域名服务器能够按照请求用户的网络地址范围,做出不同的地址解析。
智能域名服务器在中国的主要作用是解决中国电信和中国网通间存在的问题
-- 当你设置一个服务器在电信的网络上,这个时候网通的用户访问往往很慢,而如果设置在网通则电信访问很慢,要解决这个问题有很多方法,比较容易采用的是:在电信和网通都设置服务器,而后让用户使用不同的域名访问,如电信用户用www.xxx.com,而网通用户用 www2.xxx.com访问,但是这样带来的问题是要用户自己判断,并且还需要输入不同域名导致麻烦。
这个时候自然希望能够让用户输入www.xxx.com的时候,能够由域名服务器自动判断用户的网络情况,而后提供不同的地址解析,即:当网通的用户访问的时候,域名服务器判断(通过访问的域名服务器IP地址范围)到该用户来自网通,则给出设置在网通的机器IP,而如果来自电信则给出电信的。
推而广之,你不仅仅可以作为这个用途,还可以按照网络的情况进行优化,按照不同的IP范围(代表不同的网络区域),将用户带到不同的服务器节点上。
智能DNS策略解析很好的解决了上面所述的问题。DNS策略解析最基本的功能是可以智能的判断访问您网站的用户,然后根据不同的访问者把您的域名分别解析成不同的IP地址。如访问者是网通用户,DNS策略解析服务器会把你的域名对应的网通IP地址解析给这个访问者。如果用户是电信用户,DNS策略解析服务器会把您域名对应的电信IP地址解析给这个访问者。
智能DNS策略解析还可以给你的多个主机实现负载均衡,这时来自各地的访问流量会比较平均的分布到你的每一个主机上。

具体配置如下:以下配置操作在192.168.20.192服务器上实施测试
1、编辑named.conf文件,加入以下内容
# vi /usr/local/named/etc/named.conf
#装载网通地址范围数据
include "acl.conf";
#判断如是网通的地址范围,则会执行此处,调用网通的解析
view "view_cnc" {
match-clients{CNC;};
zone "." IN {
         type hint;
         file "named.root";
};
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "named.local";
        allow-update { none; };
};
zone "hebei.com.cn" IN {
        type master;
        file "cnc.hebei.com.cn.txt";
        allow-update { none; };
};
};
#如果不是网通的则进行电信的解析
view "view_any" {
match-clients{any;};
zone "." IN {
         type hint;
         file "named.root";
};
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "named.local";
        allow-update { none; };
};
zone "hebei.com.cn" IN {
        type master;
        file "tel.hebei.com.cn.txt";
        allow-update { none; };
};
};
2、在/usr/local/named/var目录下创建acl.conf文件,存放网通的地址范围数据
# vi /usr/local/named/var
# vi acl.conf
//cnc acl list
acl "CNC" {
192.168.10.194/32;
58.16.0.0/16;
58.17.0.0/17;
58.17.128.0/17;
58.18.0.0/16;
58.19.0.0/16;
58.20.0.0/16;
58.21.0.0/16;
58.22.0.0/15;
58.240.0.0/15;
58.242.0.0/15;
58.244.0.0/15;
58.246.0.0/15;
58.248.0.0/13;
60.0.0.0/13;
60.8.0.0/15;
60.10.0.0/16;
60.11.0.0/16;
60.12.0.0/16;
60.13.0.0/18;
60.13.128.0/17;
60.14.0.0/15;
60.16.0.0/13;
60.24.0.0/14;
60.30.0.0/16;
60.31.0.0/16;
60.208.0.0/13;
60.216.0.0/15;
60.218.0.0/15;
60.220.0.0/14;
61.48.0.0/13;
61.133.0.0/17;
61.134.96.0/19;
61.134.128.0/17;
61.135.0.0/16;
61.137.128.0/17;
61.138.0.0/17;
61.138.128.0/18;
61.139.128.0/18;
61.148.0.0/15;
61.156.0.0/16;
61.158.0.0/16;
61.159.0.0/18;
61.161.0.0/18;
61.161.128.0/17;
61.162.0.0/16;
61.163.0.0/16;
61.167.0.0/16;
61.168.0.0/16;
61.176.0.0/16;
61.179.0.0/16;
61.180.128.0/17;
61.181.0.0/16;
61.182.0.0/16;
61.189.0.0/17;
125.32.0.0/16;
125.40.0.0/13;
202.96.0.0/18;
202.96.64.0/21;
202.96.72.0/21;
202.97.128.0/18;
202.97.224.0/21;
202.97.240.0/20;
202.98.0.0/21;
202.98.8.0/21;
202.99.64.0/19;
202.99.96.0/21;
202.99.128.0/19;
202.99.160.0/21;
202.99.168.0/21;
202.99.176.0/20;
202.99.208.0/20;
202.99.224.0/21;
202.99.232.0/21;
202.99.240.0/20;
202.102.128.0/21;
202.102.224.0/21;
202.102.232.0/21;
202.106.0.0/16;
202.107.0.0/17;
202.108.0.0/16;
202.110.0.0/17;
202.111.128.0/18;
203.93.8.0/24;
203.93.192.0/18;
210.13.128.0/17;
210.14.160.0/19;
210.14.192.0/19;
210.15.32.0/19;
210.15.96.0/19;
210.15.128.0/18;
210.16.128.0/18;
210.21.0.0/16;
210.51.0.0/16;
210.52.128.0/17;
210.53.0.0/17;
210.53.128.0/17;
210.74.96.0/19;
210.74.128.0/19;
210.82.0.0/15;
211.152.0.0/13;
218.7.0.0/16;
218.8.0.0/14;
218.12.0.0/16;
218.21.128.0/17;
218.24.0.0/14;
218.28.0.0/15;
218.56.0.0/14;
218.60.0.0/15;
218.62.0.0/17;
218.67.128.0/17;
218.68.0.0/15;
218.104.0.0/14;
219.154.0.0/15;
219.156.0.0/15;
219.158.0.0/17;
219.158.128.0/17;
219.159.0.0/18;
220.252.0.0/16;
221.0.0.0/15;
221.2.0.0/16;
221.3.0.0/17;
221.3.128.0/17;
221.4.0.0/16;
221.5.0.0/17;
221.5.128.0/17;
221.6.0.0/16;
221.7.0.0/19;
221.7.32.0/19;
221.7.64.0/19;
221.7.96.0/19;
221.7.128.0/17;
221.8.0.0/15;
221.10.0.0/16;
221.11.0.0/17;
221.11.128.0/18;
221.11.192.0/19;
221.12.0.0/17;
221.12.128.0/18;
221.13.0.0/18;
221.13.64.0/19;
221.13.96.0/19;
221.13.128.0/17;
221.14.0.0/15;
221.192.0.0/15;
221.194.0.0/16;
221.195.0.0/16;
221.196.0.0/15;
221.198.0.0/16;
221.199.0.0/19;
221.199.32.0/20;
221.199.128.0/18;
221.199.192.0/20;
221.200.0.0/14;
221.204.0.0/15;
221.206.0.0/16;
221.207.0.0/18;
221.207.64.0/18;
221.207.128.0/17;
221.208.0.0/14;
221.212.0.0/16;
221.213.0.0/16;
221.216.0.0/13;
222.128.0.0/14;
222.132.0.0/14;
222.136.0.0/13;
222.160.0.0/15;
222.162.0.0/16;
222.163.0.0/19;
222.163.32.0/19;
222.163.64.0/18;
222.163.128.0/17;
219.235.56.194;
};
3、创建cnc.hebei.com.cn文件和tel.hebei.com.cn文件,分别存放需要解析的域名信息。
# vi cnc.hebei.com.cn
$TTL    86400
@     900       IN      SOA     localhost. root.  (
                                           2003061800 ; Serial
                                           28800      ; Refresh
                                           14400      ; Retry
                                           3600000    ; Expire
                                           86400 )    ; Minimum
                   IN      NS      localhost.
www      900     IN    A       123.123.123.123
# vi tel.hebei.com.cn
$TTL    86400
@     900       IN      SOA     localhost. root.  (
                                           2003061800 ; Serial
                                           28800      ; Refresh
                                           14400      ; Retry
                                           3600000    ; Expire
                                           86400 )    ; Minimum
                   IN      NS      localhost.
www      900     IN    A       23.23.23.23
4、启动/usr/local/named/sbin/named -gc /usr/local/named/etc/named.conf
5、测试,我的IP是192.168.10.194,不在acl.conf文件中列出的网通地址段里,因此返回地址为tel.hebei.com.cn文件中指定的23.23.23.23。
C:\Documents and Settings\Administrator>nslookup 192.168.20.192
*** Can't find server name for address 192.168.20.192: Query refused
Server:  UnKnown
Address:  192.168.20.192
Name:    
Address:  23.23.23.23

转载于:https://blog.51cto.com/75clouds/842206

Linux系统下智能DNS服务器BIND9.7.2安装配置相关推荐

  1. linux下dns服务器部署,linux系统下部署DNS服务器

    一.实验环境: 准备一台cos7系统的虚拟机 二.实验要求:物理机和虚拟机要能相互通信 三.实验步骤: 1)安装bind.bind-chroot软件包 yum -y install bind bind ...

  2. linux的dns怎么配置正向区域文件,linux系统下部署DNS正向解析

    DNS服务概述: DNS(Domain Name System)域名系统,能够提供域名与IP地址的解析服务. 正向解析 正向解析是指域名到IP 地址的解析过程. 部署DNS正向解析 DNS服务的三个配 ...

  3. 国产化探索之路---中标麒麟 Linux系统下,FTP服务器部署

    中标麒麟 Linux系统下,FTP服务器部署 1.安装FTP软件包 yum install vsftpd -y 2.创建ftp用户密码 useradd ftpuserecho "ftpuse ...

  4. cs1.5 linux服务端,Linux系统下CS1.5服务器架设详解

    Linux系统下如何进行CS1.5服务器架设操作呢,其实知道的朋友应该不难上手的,快来看看下面的Linux系统下CS1.5服务器架设文章教程吧. 首先你要下载两个文件.hlds_l_3110_full ...

  5. Linux系统下搭建常用服务器

    1.搭建telnet服务器 2.搭建DHCP服务器 3.搭建DNS服务器 4.搭建sendmail服务器 5.搭建FTP服务器 6.搭建web服务器 安装 apache tomcat 7.搭建samb ...

  6. 基于Linux系统搭建智能DNS

    智能DNS 对域名进行智能解析,能够根据客户端的IP的特点对相同域名解析为不同的IP. 用到DNS里的视图(view)功能: 类似于编程语言的if语句 if [ IP == "中国电信的IP ...

  7. 在wdos系统下搭建Dns服务器

    一.简介: 1.关于dns服务器: Dns服务器的作用简单来说,就是当你访问网络时将你在浏览器地址栏上输入的域名转换为相应的ip地址,或者反过来将ip地址转换为相应的域名. 2.安装过程中需要安装的包 ...

  8. linux时序图工具,在Linux系统下通过IAuto.deb或星火商店安装IAuto流程图工具

    以下将提供针对Linux系统的IAuto.deb包下载,也可以通过星火应用商店来安装IAuto,亲测在Deepin 20系统中可用.其实IAuto流程图软件可以解决Linux没有Visio软件的问题, ...

  9. xps13安装linux系统,[操作系统]Dell XPS 13 (9360)安装配置 ubuntu 16.04 实现 win10 Linux双系统...

    [操作系统]Dell XPS 13 (9360)安装配置 ubuntu 16.04 实现 win10 Linux双系统 0 2017-07-17 12:00:18 博主今日投身于SLAM的研究事业,放 ...

最新文章

  1. Spring----Spring Boot Rest的使用方法
  2. docker-ce 配置初始化后服务启动报错
  3. Redis:MySQL算老几?
  4. python安装pyqt5第三方_搭建pyqt5开发环境(python3+pycharm2019+pyqt5)
  5. Ubuntu 16.04 安装 Gazebo
  6. 如果从椭圆的一个焦点发出光线,再经过椭圆的反射,会发生什么?
  7. oracle 分页查询
  8. MyBatis学习总结(六)——调用存储过程
  9. linux火狐浏览器和爬虫,爬虫入门:Firefox 结合 Scrapy Shell 爬取网页数据
  10. 贴片元器件焊接经验及总结
  11. chrome不跟随系统分辨率
  12. 中国出海50强,华为超越阿里得亚军,第一名居然是它?
  13. getch.h与走迷宫推箱子的简单实现
  14. python画一片树叶的故事_《Python数据分析与机器学习实战-唐宇迪》读书笔记第7章--决策树...
  15. 测试驱动需求分析--需求文档评审实例
  16. sql server 更新表,每天的数据分固定批次设置批次号sql
  17. 基于 ESP8266 的智能家居开源解决方案 【文章结尾有资料】
  18. vue+axios 实现Excel下载
  19. Nexus 私服资源的上传下载
  20. LINUX留后门--教程(六)—— PAM后门

热门文章

  1. package.json 入门
  2. Spring Aop中解析spel表达式,实现更灵活的功能
  3. 洛谷P1962 斐波那契数列
  4. Ubuntu 16.04 PXE+kickstart部署系统
  5. SpringMvc自定义参数绑定
  6. Android UI设计之十一自定义ViewGroup,打造通用的关闭键盘小控件ImeObser
  7. iOS 开发者证书总结 in-house
  8. VMware快照功能与(非永久)永久磁盘详解
  9. 使用POI导入导出Excel2003、2007示例
  10. ​EMC存储产品介绍分析(二):大数据利器Isilon (2)