基于BIND实现DNS的解析、主从、子域、请求转发、访问控制

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介:

一、简介

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
mail 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、正向解析搭建

主配置文件

wKiom1Md3AuQzlJsAAF62rD3BHA662.jpg

区域文件

 

wKioL1Md05LTUUvMAAFfSiI2RIw591.jpg

测试语法是否有错误

wKioL1Md1JPD0dYqAACJr9C8aFs113.jpg

启动服务

wKiom1Md1QPh79-fAAAsEukdvU0034.jpg

测试

wKioL1Md1TGxBLscAAJVBdzfmPQ637.jpg

 2、反向解析搭建

    在主匹配文件中添加如下代码

wKioL1Md3C-R3_o4AAA90Vx8weU347.jpg

    反向解析的区域配置文件

wKiom1Md3LXAbc67AADNVe3_6yg981.jpg

   测试,同样使用dig

wKiom1Md3RyBLvFGAAFXOBuSb8c480.jpg

   为确保配置文件的安全性,建议将所有的配置文件的属主改为root,属组改为named,权限改为640

2)辅DNS搭建

 1、正向解析同步,在主配置文件中添加如下参数

wKiom1Md37HiZEu4AACOgcdTbE8565.jpg

   并在主配置文件中添加

   

wKioL1Md4PnR9LrxAACIiBeW_cA729.jpg

   测试

wKioL1Md3_Oh0CMrAAJn1-RC2is965.jpg

  修改主DNS区域文件中的一条解析,将ftp解析到192.168.1.213上

wKioL1Md4TzRZEG8AADh9Mz8jQo438.jpg

查看辅DNS是否可以更新

wKiom1Md4efghGuWAAJOizxAatw694.jpg

 2、反向解析同步同正向解析相同,本处不在做实验

四、DNS子域划分(本处只讲解正向解析在主DNS的划分,从DNS与主DNS相同)

在主DNS中添加如下内容

wKiom1Md7u6hZzo0AAEW_oIbfo4078.jpg

在子域的主配置文件添加

   wKioL1Md7o-CL5XGAAHB7b7bwv4428.jpg

五、请求转发(本处之讲解正向解析的在主DNS的划分,从DNS与主DNS相同

我们的DNS在本地指定的DNS找不到解析后,会直接向跟发起请求,为了使根的负载变小,我们可以设置请求转发

1)转发非本机负责解析的所有区域

 需要在全局变量中定义

 wKiom1Md8mrjVmkiAABCOrEPN7Q887.jpg

测试

wKiom1Md8wvB7CNMAALXkTxx4tc282.jpg

2)解析某个特定的区域

wKioL1Md8ZKzlYZ4AACOn50Lz8o812.jpg

测试

wKioL1Md8wqCpYLgAAITdPKoZd4543.jpg

安全控制选项:

  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,如需转载请自行联系原作者

相关文章
|
1月前
|
XML JSON JavaScript
HttpGet 请求的响应处理:获取和解析数据
HttpGet 请求的响应处理:获取和解析数据
|
2月前
|
前端开发 Java 开发者
Spring MVC中的请求映射:@RequestMapping注解深度解析
在Spring MVC框架中,`@RequestMapping`注解是实现请求映射的关键,它将HTTP请求映射到相应的处理器方法上。本文将深入探讨`@RequestMapping`注解的工作原理、使用方法以及最佳实践,为开发者提供一份详尽的技术干货。
131 2
|
2月前
|
域名解析 缓存 网络协议
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
|
3月前
|
监控 网络协议 安全
DNS服务器故障不容小觑,从应急视角谈DNS架构
DNS服务器故障不容小觑,从应急视角谈DNS架构
74 4
|
3月前
|
域名解析 网络协议
非阿里云注册域名如何在云解析DNS设置解析?
非阿里云注册域名如何在云解析DNS设置解析?
|
3月前
|
域名解析 存储 缓存
域名解析 DNS:连接数字世界的关键枢纽
在数字世界中,DNS(域名解析系统)如同一位至关重要的引路人,将我们输入的域名与对应的IP地址相连,使我们可以轻松访问各种网站和服务。它通过多级服务器查询,将易于记忆的域名转换为复杂的IP地址,极大提升了互联网的易用性和普及度。尽管面临网络延迟和域名数量激增等挑战,通过分布式系统和缓存技术等创新方案,DNS 系统将持续发展,为用户提供更安全、高效的网络体验。
64 2
|
3月前
|
前端开发 JavaScript UED
axios取消请求CancelToken的原理解析及用法示例
axios取消请求CancelToken的原理解析及用法示例
180 0
|
3月前
|
域名解析 弹性计算
内网域?名解析记录是否会覆盖公网域名解析记录?
内网域?名解析记录是否会覆盖公网域名解析记录?
|
2月前
|
安全 网络安全 数据安全/隐私保护
访问控制列表(ACL)是网络安全中的一种重要机制,用于定义和管理对网络资源的访问权限
访问控制列表(ACL)是网络安全中的一种重要机制,用于定义和管理对网络资源的访问权限。它通过设置一系列规则,控制谁可以访问特定资源、在什么条件下访问以及可以执行哪些操作。ACL 可以应用于路由器、防火墙等设备,分为标准、扩展、基于时间和基于用户等多种类型,广泛用于企业网络和互联网中,以增强安全性和精细管理。
256 7

相关产品

  • 云解析DNS
  • 推荐镜像

    更多