您的位置:首页 > 运维架构 > Linux

菜鸟必看Linux下架设DNS服务器详细过程及测试

2013-05-13 18:44 204 查看
Linux下DNS服务器的搭建是在虚拟机下架设的,首先要先在虚拟机下安装Linux系统,我安装的是RedHat Linux5.5版本的,大家可以将下面的地址直接复制下来,用下载工具下载,只有一个ISO文件ed2k://|file|%5B%E7%BA%A2%E5%B8%BDLinux.5.5.for.x86.%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%89%88%5D.rhel-server-5.5-i386-dvd.iso|3111600128|c31ef40064e8ad1a1f59078c39a4bbda|h=7dktorhoclc3vxgssp3rovehomd2bfii|/ 如果要填写注册码的话,可以用以下的注册码2515dd4e215225dd怎么安装就不说了,安装好之后就进入我们今天讲解的主题了:DNS服务器的架设。DNS的作用说句简单的就是将形如www.baidu.com 这样的域名解析成192.168.45.7这样的IP地址(正向解析),也可将形如192.168.45.7这样的IP地址解析成www.baidu.com这样的域名(反向解析)。

DNS服务架设

架设之前在架设之前先要明白这样几个问题。由于安装的系统的版本等其它问题,可能有些同学的系统带有图形用户界面。用图形用户界面做确实简单,但是我们还是用一般的配置命令以及配置各种文件做。DNS的安装需要安装几个rpm包,还要配置几个文件。所需要的包如下图所示:这些包中bind-9.3.6是主程序包,是必不可缺少的caching-nameserver是DNS服务器缓存文件软件包bind-utils是客户端工具bind-chroot是用于改变程序执行时的根目录位置,主要是为了系统的安全。一般都会用这个包改变目录位置,代替根目录执行操作。


第一步:挂载ISO文件由于我们刚安装好Linux系统,所以先查看我们的系统中已经安装了哪些包,还有哪些我们以上所需要的包还没有安装。


用以上命令查看了bind和caching-nameserver中的包,安装的包只有bind-libs和bind-utils,我们还需要手动安装其它的包。 如下图所示在虚拟机标题出右键单机,选择设置。


弹出如下框,选择CD/DVD,然后选择User ISO image file,单机Browse按钮,选择当初下载好的ISO文件

,需要注意的是要将上述的Conneced勾选,否则会无法挂载。(这个默认是不勾选的)

单机ok完成。如果成功挂载的话,会在Linux桌面上出现

图标。 挂载完成后就需要安装各种rpm包了。

第二步:安装各种rpm包(BIND)

使用下面的命令安装包, mkdir: 在mnt下创建dns文件夹 mount : 将cdrom下的包挂载到dns文件夹中 cd : 进入文件夹中 dir: 查看bind中的所有包


可以看到bind中有我们所需要的各种包,那就安装吧,执行以下命令安装


安装成功的话会出现如上图所示的内容,上面只是安装了bind-9.3.6这个包,还需要安装bind-devel、bind-chroot。方法还是一样,执行rpm -ivh+包的名字


安装了bind-devel后,先不要急着安装bind-chroot这个包,这个包应该在安装完caching-nameserver(是不是把这个包给忘了啊)这个包之后安装,而caching-nameserver应该在安装完bind-9.3.6之后安装。 安装caching-nameserver包和bind-chroot包执行命令如下;


之后我们查看一下我们安装的包是不是都全了,执行查看命令如下:


看以看到我们所需要的包的确都安装成功了。在安装这些包的时候需要注意个问题:就是安装包的顺序问题。准确的顺序应该是: 先bind-9.36 然后caching-nameserver,最后bind-chroot.这个顺序是不能乱的,否则会出现依赖关系错误提示。

第三步:启动服务

安装完成后,我们就可以启动服务了,命令如下;


先从Server文件夹回到根目录~,然后执行命令启动服务器,如果没有错误的话,会提示正确。

第四步:修改配置文件(重要)

案例:假如某个公司要架设一台DNS服务器负责zhaoyuqiang.blog.51cto.com域的域名解析工作,DNS服务器的FQDN为dns.zhaoyuqiang.blog.51cto.com,IP地址为192.168.1.2,要求为以下域名实现正反向域名解析服务:


另外,为www.zhaoyuqiang.blog.51cto.com设置别名为web.zhaoyuqiang.blog.51cto.com。一:编辑named.conf文件 我们要在虚拟目录下进行配置,这样保证了安全. 我们要在/var/named/chroot/etc文件夹中配置named.conf,但是在/var/named/chroot/etc文件夹中named.conf默认是没有的,我们需要将这个文件夹下的另一个文件named.caching-nameserver.conf复制,然后改名为named.conf. 相关配置命令如下:


建好named.conf文件后需要打开进行修改里面的一些参数。编辑的命令用vi+文件名,命令如下:(也可以找到文件直接打开,然后修改,但是我们还是用命令吧,这样显得有点技术性,嘿嘿!)


进入named.conf文件内容,我们修改的地方如下图所示:(注意:对于vi编辑命令可能对于初学者掌握的不是很透彻,进入内容后,光标默认是不能修改的,我们需要按字母“i”键进入编辑改动状态,这样就能编辑了)


我们需要改的地方就是红色区域的地方,上图中红色区域为改变后的内容。 内容改完之后需要保存此文件:按下“Esc”键,然后按“:”然后输入“wq”,点击回车就保存好了。 在最后我们将主配置文件的地址改成了/etc/named.zones,我们就需要新建一个named.zones文件。

二:配置主配置文件

主配置文件named.zones还是在/var/named/chroot/etc目录中配置,这个主配置文件在此目录中依然没有,我们需要新建一个,和配置named.conf时差不多,可以复制此目录中的另一个文件(named.rfc1912.zones),然后将此文件改名为name.zones。然后进入named.zones进行配置修改里面的一些参数。命令如下:


进入named.zones文件后修改后如下图:


上图红色部分为修改后的内容,其它的内容不变。按照前面讲述的方法保存此文件。 我们将正向解析的地址file到了zhaoyuqiang.blog.51cto.com.zone 将反向解析的地址file到了 192.168.zone 那么我们就需要创建这两个文件。

三:配置zhaoyuqiang.blog.51cto.com.zone正向区域文件

配置zhaoyuqiang.blog.51cto.com.zone文件需要在/var/named/chroot/var/named目录下。 在这个目录下同样没有所需要的配置文件,我们要复制这个目录下的named.zero文件。然后进入zhaoyuqiang.blog.51cto.com.zone配置,命令如下:


进入编辑,增加信息如下:


注意:在编辑以上信息的时候,每一行都要顶头写,不能在头上出现空格,否则会出现错误。 编辑完成后保存即可。

四:配置192.168.zone反向区域文件

配置反向区域文件和配置正向的样,复制/var/named/chroot/var/named下的named.local文件,改名为192.168.zone。然后进入该文件进行配置,命令如下:


进入编辑,如下;


第五步:重启DNS服务器


第六步:测试

测试一:nslookup命令测试


上图中,正向解析没有问题,再来看一下反向解析


反向解析也没有问题测试二:用dig命令测试


上述的测试说明查看域名也是没有问题的。注意;如果输入命令,但是无法查看域名,或者域名报错。原因可能是防火墙阻止了,这个时候要关闭一下防火墙。命令是:service iptables stop。 关闭防火墙后再dig查看就不会报错了。

测试三:与windows测试虚拟机中LinuxDNS服务器的解析

我们需要先修改一下真实机windows和虚拟机Linux系统的IP地址。 Windows地址修改如下:


为了方便,Linux系统中的IP地址修改我们要图像用户界面来修改。


打开网络;


双击点开,配置IP地址如下


然后选中右边的确定按钮,这时会提示要重启网络设备。点击“是”; 然后回到客户端,输入命令重启网络和DNS服务器。


做完之后,打开真实机windows上的命令运行:先ping 一下看看能不能ping通

确实能够ping,如果ping不通的话,很可能是虚拟机的网络设备设置成了NAT而不是桥接。需要把Linux的网络设置为桥接 测试DNS


发现测试DNS服务器失败了,怎么回事? 呵呵 不要着急,原因是Linux的防火墙开着,我们需要关闭Linux的防火墙。然后重启网络和DNS服务器。命令如下:


这个时候我们再回到windows中进行测试:


好了 这个时候无论是正向还是反向,都能够通过windows测试Linux中的DNS服务器了。大家在测试的时候注意的是:网络的连接方法要给成桥接,如果有必要的话就关闭防火墙;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息