linux之DNS服务器

简介:

DNS的基本概念及作用

  DNSDomain Name System的缩写,中文的含义是域名系统。其作用是将人们易于记忆的域名与人们不容易记忆的IP地址进行转换。执行此项功能的主机被称为DNS服务器。  

  例如:在Internet中www.aa.com是一个域名,其IP地址是192.168.0.3.显而易见前者比后者容易记忆。但是用户必须确保用到的域名已经在DNS服务器中做好了相应的IP地址映射工作。  

DNS的结构  

 

    其中根域是有多台DNS服务器构成,是树的顶级,它表示未命名的等级。在DNS域名中使用时,他的尾部用”.”表示,以指定该名称位于层次结构的最高层或根。在这种情况下DNS域名被认为是完整名称并指向名称树种的确切位置。以这种方式表示的被称为完全合格域名FQDN。例如“Ly.edu.cn.  

    顶级域:通常有三个字母组成,指示国家或单位类型。常见的顶级域有:com,edu,org,gov,net  

    二级域:是在Internet上使用而注册到个人或单位的长度可变的名称,它必须基于相应的顶级域。  

    子域:单位可以创建的其他名称,这些名称从已注册的二级域名中派生,并可将其按部门或地理位置设置。  

DNS的组成  

  在概念上可以把DNS分为三个部分  

域名空间:这是标识一组主机并提供它们的有关信息的树结构的详细说明。树上的每一个节点都有它控制下的主机的有关信息的数据库  

域名服务器:这是保持并维护域名空间中数据的程序。每个域名服务器含有一个域名空间子集的完整信息,并保存其他有关部分的信息
   解析器:解析器是简单的程序或子程序库,它从服务器中提取信息以响应对域名空间中主机的查询。  

DNS服务器的类型  

DNS服务器(某个区域是主区域master.  

辅助DNS服务器(说明某个区域是从区域slave),可以从主服务器中转移一整套域信息。  

缓存服务器等  

DNS区域类型  

maser标准主区域:创建新的查找数据库,存储主机名和IP地址的解析记录。  

slave标准辅助区域:是标准主区域的数据库的只读拷贝,使用它可减轻主服务器的工作负荷,DNS使用区域传送从主域名服务器发送记录到辅助的域名服务器上。  

hint:线索区域  

forward:转发区域  

DNS查询  

DNS性质:DNS是一个分布式数据库系统,它提供将域名转换成IP地址信息。  

名称解析:将域名转换成IP地址的方法,即查询转换的过程。  

查询:递归查询(逐级的一个过程),和迭代查询(一个服务器请求多次)  

名称解析分类:  

正向解析:DNS将域名转换成IP地址的过程。  

反向解析:DNSIP地址转换成域名的一个过程。  

DNS资源记录类型  

FQDN-->IP  A记录,AAAA记录  正向解析  

      IP-->FQDN PTR指针记录       反向解析  

      SOA:Start Of Authority :起始授权记录,由此开始下面是区域,  

      NSNameserver  后面要加主机名称 标识区域的负责人  

      CNAME:别名记录,正式记录  

      MX:Mail exchanger  邮件交换器  只存在正向(A)记录中    

DNS的安装过程  

 下面是安装bind97的一个简单操作  

#yum list all | grep bind    查看当前系统上的bind的详细信息。  

#rm –e bind-libs bind-utils   删除以前安装的bind  

#yum install bind97 bind97-libs  bind97-utils  使用yum安装bind97  

DNS的配置过程  

  安装过DNS后,现在我们开始配置DNS的主配置文件/etc/named.conf  ,可以把原先的配置文件删除,自己建立一个具体内容如下  

 options{  

    directory /var/named; 定义DNS服务数据所在的文件目录  

};全局配置项  

  zone “.”  IN{            区域  

         type hint;  

         file “named.ca” ;  

};  

zone “localhost” IN {    正向解析  

 type master  

  file “localhost.zone”  

};  

    zone “0.0.127” IN{        反向解析  

       type master  

       file “named.local”  

};  

配置好主配置文件之后,接下来建立正向解析的文件localhost.zone 和反向解析的文件named.local.  

 vim localhost.zone  

 $TTL 600  

 localhost.  IN  SOA localhost.  admin.localhost. (  

                   2012071001      主服务器数据库上的版本号,也就是序列号  

                   50M             复制间隔时间  

                   20M             重试时间  

                   3D               过期时间  

                   1D)              否定回答时间  

localhost.  IN NS    localhost.  

localhost.  IN A     127.0.0.1  

 

vim named.local  

$TTL 600  

@  IN  SOA  localhost. admin .localhost.(  

                   2012071001      主服务器数据库上的版本号,也就是序列号  

                   50M             复制间隔时间  

                   20M             重试时间  

                   3D               过期时间  

                   1D)              否定回答时间  

@    IN  NS  localhost.  

1                 IN   PTR  localhost.  

修改文件的属组权限  

#chown :named  /etc/named.conf  

#chmod 640  /etc/named.conf  

#cd  /var/named  

#chown :named named.local localhost.zone  

#chmod 640 named.local localhost.zone  

检查配置文件以及区域的语法错误  

#named-checkconf   检查配置文件的语法错误  

#named-checkzone  localhost  localhost.zone  

#named-checkzone  0.0.127.in-addr.arpa named.local  

到此为止简单的DNS已经配置成功,接下来只需重启服务即可  

#service named start   效果如下图

 

主从配置过程  

 现在我们就假设我们有两台DNS服务器ABA作为主服务器,B 作为从服务器  

 主机AIP 172.16.99.1   域名ns1.magedu.com  

 主机BIP172.16.200.1   域名为ns2.magedu.com  

其中还有mail.magedu.com,pop3.magedu.com  

首先配置主DNS服务器,在上面的配置基础上,我们只需要在/etc/named.conf文件中添加如下区域即可。  

 

上图中的allow-transfer表示允许传送,后面跟允许传送的主机IP

然后分别创建magedu.com.zone16.172.zone两个文件  

vim magedu.com.zone,文件内容具体如下图

 

vim 16.172.zone 文件具体内容如下图

 

然后使用named-checkzone检查区域错误。  

测试建立的DNS服务器,测试结果如下图

 

配置从DNS服务器  

  主服务器配置基本上一样,但是从DNS服务器不用配置区域文件而是从主DNS服务器上复制而来,因此只需把主配置文件中的区域类型修改成slave即可,具体配置如下图:

 

然后service named start 启动服务,查看/var/named/slaves 目录下生成两个文件,如下图所示

 

查看自动生成的文件magedu.com.zone 如下图所示  

由此可知主从配置成功  

DNS子域授权  

  由于DNS分布式的层级结构,把一个大名称空间划分成许多小的名称空间,并逐级委托给某一个小空间的小服务器来实现名称解析的应用,当DNS服务器繁忙时,可以授予子域进行名称解析,以减少服务器压力。  

 在这里我们只讲解正向区域的DNS子域授权。  

 假使我们有两台主机ABA作为主DNS服务器,B作为子域授权服务器  

AIP地址为172.16.99.1BIP地址为172.16.8.1  

配置主机A    

主机A的主配置文件/etc/named.conf 和主从配置中A的配置一样,在这里就不再讲述了,接下来只需编辑区域文件,在magedu.com.zone中添加如下内容即可  

tech.magedu.com  IN  NS ns.tech.mageduc.om  

ns.tech.magedu.com IN A  172.16.8.1  

然后重启服务  

 配置主机B    

  配置DNS的主配置文件/etc/named.conf,先按照上述配置DNS过程把DNS服务能够启动起来,然后在主配置文件中添加如下区域,并创建区域文件即可,具体内容如下图

 

 编辑区域文件  

vim tech.magedu.come.zone具体内容如下图  

vim 172.16.zone,具体内容如下图

 如果有些请求BDNS服务器不能解析,则可以转发给主机A进行解析,此时只需在主机B中的主配置文件/etc/named.conf中添加区域  

zone “magedu.com” IN {  

      type forward;  

      forward none;  

      forwarders { 172.16.100.1; } ;  指定转发给谁  

};  

 

本文转自  沐木小布丁  51CTO博客,原文链接:http://blog.51cto.com/sxhxt/925858

相关文章
|
16天前
|
存储 域名解析 弹性计算
阿里云上云流程参考:云服务器+域名+备案+域名解析绑定,全流程图文详解
对于初次通过阿里云完成上云的企业和个人用户来说,很多用户不仅是需要选购云服务器,同时还需要注册域名以及完成备案和域名的解析相关流程,从而实现网站的上线。本文将以上云操作流程为核心,结合阿里云的活动政策与用户系统梳理云服务器选购、域名注册、备案申请及域名绑定四大关键环节,以供用户完成线上业务部署做出参考。
|
1月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
2月前
|
网络协议
利用Private Zone DNS - 搭建AD但不搭建DNS服务器如何加域
利用Private Zone DNS - 搭建AD但不搭建DNS服务器如何加域
利用Private Zone DNS - 搭建AD但不搭建DNS服务器如何加域
|
3月前
|
Linux 网络安全 数据安全/隐私保护
使用Linux系统的mount命令挂载远程服务器的文件夹。
如此一来,你就完成了一次从你的Linux发车站到远程服务器文件夹的有趣旅行。在这个技术之旅中,你既探索了新地方,也学到了如何桥接不同系统之间的距离。
523 21
|
2月前
|
Java Linux 网络安全
Linux云端服务器上部署Spring Boot应用的教程。
此流程涉及Linux命令行操作、系统服务管理及网络安全知识,需要管理员权限以进行配置和服务管理。务必在一个测试环境中验证所有步骤,确保一切配置正确无误后,再将应用部署到生产环境中。也可以使用如Ansible、Chef等配置管理工具来自动化部署过程,提升效率和可靠性。
311 13
|
2月前
|
监控 Linux 网络安全
FinalShell SSH工具下载,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux
FinalShell是一款国人开发的多平台SSH客户端工具,支持Windows、Mac OS X和Linux系统。它提供一体化服务器管理功能,支持shell和sftp同屏显示,命令自动提示,操作便捷。软件还具备加速功能,提升访问服务器速度,适合普通用户和专业人士使用。
214 0
|
2月前
|
存储 安全 Linux
Linux服务器上安装配置GitLab的步骤。
按照以上步骤,一个基础的GitLab服务应该运行并可以使用。记得定期检查GitLab官方文档,因为GitLab的安装和配置步骤可能随着新版本而变化。
241 0
|
4月前
|
存储 安全 Ubuntu
从Linux到Windows:阿里云服务器系统镜像适配场景与选择参考
阿里云为用户提供了丰富多样的服务器操作系统选择,以满足不同场景下的应用需求。目前,云服务器的操作系统镜像主要分为公共镜像、自定义镜像、共享镜像、镜像市场和社区镜像五大类。以下是对这些镜像类型的详细介绍及选择云服务器系统时需要考虑的因素,以供参考。
|
3月前
|
Linux
Linux下版本控制器(SVN) -服务器端环境搭建步骤
Linux下版本控制器(SVN) -服务器端环境搭建步骤
193 0
Linux下版本控制器(SVN) -服务器端环境搭建步骤
|
4月前
|
Ubuntu Linux 网络安全
在Linux云服务器上限制特定IP进行SSH远程连接的设置
温馨提示,修改iptables规则时要格外小心,否则可能导致无法远程访问你的服务器。最好在掌握足够技术知识和理解清楚操作含义之后再进行。另外,在已经配置了防火墙的情况下,例如ufw(Ubuntu Firewall)或firewalld,需要按照相应的防火墙的规则来设置。
192 24

相关产品

  • 云解析DNS