前言:
搞LINUX的朋友都知道,bind是linux下的DNS服务软件,但很多人不清楚,它也可以运行在windows系统中,windows系统自带的dns,功能弱,是不能作智能DNS解析的,在windows 2008 R2版也没有解决这个问题,有些公司技术力量薄弱一些,一直在用windows系统,所以本文从windows出发,安装bind,利用它的view功能,做智能DNS,解决双线机房南北电信联通访问问题。
一、环境:
系统:Windows 2003 Enterprise Edition sp2
软件:Bind9.9.0( for windows)
设计解析的域名及IP地址:
电信IP:119.145.254.1
联通IP:112.90.180.1
二、下载并安装软件
2.1下载
bind官网地址:
bind下载地址:ftp://ftp.isc.org/isc/bind9/9.9.0/BIND9.9.0.zip
2.2安装
将下载的BIND9.9.0.ZIP解压,进入到解压后的文件夹,运行 BINDInstall.exe,在弹出的安装窗口中输入一个密码,一直默认安装就行了,不需要更改什么设置。默认安装到 windowssystem32dns目录下。
三,DNS服务器配置
3.1目录赋权
我们在规划windows系统时,都会把C盘格式化为NTFS,根据第二步安装步骤,bind安装程序新建了一个named帐号,这个帐号是控制bind相关进程与配置文件的,它不隶属于任何部门,为安全性考虑,大家也不要把它加放到administrators组。我们刚把bind安装在默认的c:windowssystem32dns目录中,所以我们必须给这个目录赋权给named帐号读写权限。
3.2 产生rhdc.key文件
打开DOS窗口,进dns目录,用rndc-config.exe程序生产rndc.key。
rndc-confgen -a (运行完成后会在etc目录下生成rndc.key)
rndc-confgen > ..etcrndc.conf
3.3 新建named.conf主配置文件
Linux系统安装好bind,会有一个named.conf模块,而windows系统下,并没有这个文件,所以不熟悉bind的朋友,建议参考linux下的格式进行编写。
进入etc目录,用记事本(notepad) 建 named.conf 内容如下:
复制代码 代码如下:
acl "trust-lan" { 127.0.0.1/8; 192.168.0.0/16; };
#全局参数设置,对整个bind有效
options {
directory "C:WINDOWSsystem32dnsetc";
#recursion yes;
version "0.0.0"; #屏蔽版本
allow-transfer { “trust-lan”; }; #允许trust-lan里的IP从主DNS上进行区域传输
allow-notify { “trust-lan”; }; #从服务器接收主服务器的更新通知
allow-query { “trust-lan”; }; #允许普通查询
allow-recursion{ “trust-lan” }; #打开BIND递归查询功能
auth-nxdomAIn no; #默认值为0,若为yes,则AA位将一直设置为NXDOMAIN响应
forwarders { #把DNS请求转发至上一级DNS商
202.96.134.133;
202.103.96.112;
};
};
#这一段KEY内容来自rndc.conf,加上这段,好用rndc控制dns进程
include "C:WINDOWSsystem32dnsetcrndc.key";
controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc-key"; };
};
logging {
channel warning #下面内容会介绍新建dns_warnings.txt与dns_logs.txt
{ file "C:WINDOWSsystem32dnslogdns_warnings.txt" versions 3 size 1240k;
severity warning;
print-category yes;
print-severity yes;
print-time yes;
};
channel general_dns
{ file "C:WINDOWSsystem32dnslogdns_logs.txt" versions 3 size 1240k;
severity info;
print-category yes;
print-severity yes;
print-time yes;
};
category default { warning; };
category queries { general_dns; };
};
include "cnc.conf"; #将网通的IP地址范围数据,包含进来
view "view_cnc" { #判断如果是网通的地址范围,则会执行此处(读取cnc.def文件)
match-clients { CNC; };
zone "." {
type hint;
file "named.root";
};
zone "0.0.127.IN-ADDR.ARPA" {
type master;
file "localhost.rev";
};
include "C:WINDOWSsystem32dnsetcmastercnc.def"; #自定义域名,内容在cnc.def
};
view "view_any" { # 判断是非网通的ip地址范围,则会执行此处(读取telecom.def文件)
match-clients { any; };
zone "." {
type hint;
file "named.root";
};
zone "0.0.127.IN-ADDR.ARPA" {
type master;
file "localhost.rev";
};
include "C:WINDOWSsystem32dnsetcmastertelecom.def";
};
3.4建立联通IP地址ACL策略文件
在WINDOWSsystem32dnsetc建立cnc.conf文件
cnc.conf内容如下:
复制代码 代码如下: |