linux杂谈(十八):DNSserver的配置(一)

1.DNSserver简单介绍

域名系统英文Domain Name System,縮寫DNS)是因特网的一项服务。

它作为将域名IP地址相互映射的一个分布式数据库,可以使人更方便的訪问互联网。DNS 使用TCPUDPport53。

当前。对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

在dns出现之前,我们把域名和IP的对比存放在/etc/hosts文件中边。可是随着IP的不断增大,使用文件存放显得不够了。并且不利于和其它的主机进行同步,DNS应运而生。

DNS的结构:他是利用树形文件夹的架构。将主机名的管理分配在不同层级的DNSserver,让每一层的改动和查找都变得功能单一。

DNS查询主机名的流程:

(1)先在本机有没有记录,没有的话向(.root)查询;
(2)向最顶层的.查询;
(3)然后分层的查询,每次仅仅查询它所对的下一层。
(4)查到之后记录缓存,而且将路径返回给用户。



注:在系统中我们能够通过dig命令进行路径追踪。

工作流程如图所看到的:


​2.搭建DNSserver


​今天我们来自己搭建一个DNSserver。这种需求在公司的内部还是有的。

​首先我们来查找安装dns的包有那些:


​安装dnsserver:


​开启服务后看到dns服务开启的port号是53:


​接下来我们要改动配置文件提供对应的服务,这里我们为了安全期间。在/var/named/chroot的文件夹下改动配置文件,而不直接对/etc/named文件夹下的文件进行改动。两者是同步的,可是有一个约束条件,前者仅仅有在dns开启成功的情况下才干使用!

!!



​我们在选项中关闭了ipv6的开放。并且同意随意用户使用。





主配置文件的最后两行各自是副配置文件和我们的dns加密文件:



(1)DNS的正向解析:
​我们依次来查看:



​我们来设置自己的域名系统,上边的是模板,底下的我们指定了域名配置文件的名称,这个要自己创建,位置在/var/named/chroot/var/named下:



​这个文件夹底下也有域名配置文件的模板,我们拷贝一份并进行设置:



这个是初始模样。请务必记住,而且和改动之后的进行对照:



​改动之后的:



​注意:这里的@等于example.com. 所以在最后两行,假设没有把域名补全的话。系统会把@所代表的值加入到末尾。而且注意每一个com后边另一个点。



​这个时候我们重新启动服务,而且查看火墙是否已经关闭:



​服务端设置好之后,我们在另外一台机子上訪问dnsserver。



​首先要做的就是改动ifcfg-eth0文件中的DNS1參数为指定DNSserver的IP:192.168.2.100.然后又一次启动network服务:




​又一次启动network:





​我们追踪了一下。发现能够找到www.example.com,而且dnsserver为192.168.2.100这就说明我么之前的dnsserver配置是没有问题的。


​上述部分是dnsserver的正向解析,同一时候我们还知道dns具有反向解析的能力。那怎样实现呢,当然还是要改动配置文件了,与正向解析的步骤区别不大。



(2)DNS的反向解析:

​回到副配置文件里。在文件夹/var/named/chroot/etc下:



​看到我们IP的书写格式了么,是的,既然是反向解析,IP的书写顺序也是相反的,而且指定了配置文件:



​跳转到配置文件文件夹。首先我们拷贝反向解析配置文件的模板。然后进行编辑:



​这个是模板的格式:



​我们改动之后的样子:



记住最后一行。它代表的意思是192.168.2.200所相应的域名是ptr.example.com.这个是我们等会检验配置是否正确的标准。

​退出保存后重新启动dns服务:



​回到客户机我们来反向解析一下192.168.2.200是什么域名:



​小结:

​     如上所讲,dns的正向解析和反向解析已经完毕,可是这种功能有点单一化,其实它还有些不使用,比方说怎样去同步的改动,怎样和dhcp共同协作提供ddns的服务。这些我们在下节解说。


posted @ 2017-06-07 16:17  gccbuaa  阅读(451)  评论(0编辑  收藏  举报