一、简介
DNS是计算机域名系统或域名解析服务器(Domain Name Server或Domain Name System) 的缩写,它是由解析器以及域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。DNS使用TCP与UDP端口号都是53,主要使用UDP,服务器之间备份使用TCP。
在IPV4中IP是由32位二进制数组成的,将这32位二进制数分成4组每组8个二进制数,将这8个二进制数转化成十进制数,就是我们看到的IP地址,其范围是在0~255之间。因为,8个二进制数转化为十进制数的最大范围就是0~255。已开始试行、将来必将代替IPv4的IPV6中,将以128位二进制数表示一个IP地址。
DNS最早于1983年由保罗·莫卡派乔斯(Paul Mockapetris)发明;原始的技术规范在882号因特网标准草案(RFC 882)中发布。1987年发布的第1034和1035号草案修正了DNS技术规范,并废除了之前的第882和883号草案。在此之后对因特网标准草案的修改基本上没有涉及到DNS技术规范部分的改动。
二、环境规划
环境 | ip地址 |
主DNS(主机名dns) | 192.168.1.200 |
辅DNS(主机名ns2) | 192.168.1.210 |
www | 192.168.1.211 |
192.168.1.212 | |
ftp | 192.168.1.213 |
子域testdns | 192.168.1.220 |
子域www | 192.168.1.221 |
本文我们假设在互联网上申请到了一个域名为wangfeng7399.com,域名下面有www、ftp和mail服务器。由于公司发展需要,先在域名下分配了子域linux.wangfeng7399.com,子域下面现在只有www服务器
三、主副DNS搭建,并实现正向解析与反向解析
1)主DNS搭建
DNS的配置文件分为主配置文件和区域配置文件,其中主配置文件在/etc/named.conf其中最少应该包含三段信息,分别为根、local和127.0.0.1的配置,区域配置文件存放在/var/name的路径下,每个文件用于指定一个区域。
本文主要的配置文件是通过yum和rpm安装得到的配置文件,关于bind的源码安装将在后续推出,敬请关注
在配置的过程中,可以使用bind的自带的配置文件,也可自己生成配置文件,本文主要讲解自己生成配置文件,先将bind自带的配置文件改名,然后自己生成配置
1、正向解析搭建
主配置文件
区域文件
测试语法是否有错误
启动服务
测试
2、反向解析搭建
在主匹配文件中添加如下代码
反向解析的区域配置文件
测试,同样使用dig
为确保配置文件的安全性,建议将所有的配置文件的属主改为root,属组改为named,权限改为640
2)辅DNS搭建
1、正向解析同步,在主配置文件中添加如下参数
并在主配置文件中添加
测试
修改主DNS区域文件中的一条解析,将ftp解析到192.168.1.213上
查看辅DNS是否可以更新
2、反向解析同步同正向解析相同,本处不在做实验
四、DNS子域划分(本处只讲解正向解析在主DNS的划分,从DNS与主DNS相同)
在主DNS中添加如下内容
在子域的主配置文件添加
五、请求转发(本处之讲解正向解析的在主DNS的划分,从DNS与主DNS相同)
我们的DNS在本地指定的DNS找不到解析后,会直接向跟发起请求,为了使根的负载变小,我们可以设置请求转发
1)转发非本机负责解析的所有区域
需要在全局变量中定义
测试
2)解析某个特定的区域
测试
安全控制选项:
allow-transfer{};通常都需要启用,从服务器
allow-query{};此项仅用于服务器是缓存名称服务器时,只开放查询功能给本地客户端
allow-recursion{可以使用网段};允许递归的白名单
allow-update{ none; }:允许动态更新数据文件的主机白名单
六、acl访问控制列表
BINA支持使用访问控制列表,可以自己定义
如 acl ACL_NAME{
option1;
option2;
……
};
在使用的时候可以直接引用控制列表的名称即可
访问控制列表只有定义后才能使用,通常acl要定义在named.conf的最上方
BIND有四个内置的acl
any:任何主机
none:无一主机
local:本机
localnet:本机所在的网络
未完,待续
本文转自wangfeng7399 51CTO博客,原文链接:http://blog.51cto.com/wangfeng7399/1372121,如需转载请自行联系原作者