LINUX环境下DNS服务器的简单搭建教程

一、DNS服务器的介绍

      DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。在RFC文档中RFC 2181对DNS有规范说明,RFC 2136对DNS的动态更新进行说明,RFC 2308对DNS查询的反向缓存进行说明。

二、DNS工作的原理

      该系统用于命名组织到域层次结构中的计算机和网络服务。在Internet上域名与IP地址之间是一一对应的,域名虽然便于人们记忆,但机器之间只能互相认识IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器。 DNS 命名用于 Internet 等 TCP/IP 网络中,通过用户友好的名称查找计算机和服务。当用户在应用程序中输入 DNS 名称时,DNS 服务可以将此名称解析为与之相关的其他信息,如 IP 地址。因为,你在上网时输入的网址,是通过域名解析系统解析找到了相对应的IP地址,这样才能上网。其实,域名的最终指向是IP。 

三、DNS的安装

DNS 服务对应的软件包

与DNS服务相关的软件包有以下几个:

bind:DNS服务器软件包。
bind-utils:DNS测试工具,包括dig,host与nslookup等。
bind-chroot:使BIND运行在指定的目录中的安全增强工具。
caching-nameserver:高速缓存DNS服务器的基本配置文件,建议一定安装。
DNS安装之前要检测系统是否安装了DNS相关软件
#rpm -qa | grep bind
如果没有安装,通过设置本地源后,利用yum命令安装
#yum install bind

安装chroot软件包

chroot也就是Change Root,用于改变程序执行时的根目录位置。早期的很多系统程序,默认所有程序执行的根目录都是“/",这样黑客或者其他的不法分子就很容易通过/etc/passwd绝对路径来窃取系统机密。有了chroot,比如BIND的根目录就被改变到了/var/named/chroot,这样即使黑客突破了BIND账号,也只能访问/var/named/chroot,能把攻击对系统的危害降低到最小。

安装chroot软件包

#yun install *chroot *

查看安装必要的软件

#rpm -qa | grep  '^bind'
vDNS 服务的配置文件

 BIND的配置文件在/etc找到name.conf文件,使用vim编辑之。

/etc/named.conf:这就是我们的主配置文件!

/etc/sysconfig/named:是否启动chroot及额外的参数,就由这个文件控制;

/var/named/ :数据库档案默认放置在这个目录

/var/run/named :named 程序执行时默认放置 pid-file 在此目录内。 

bind 的相关程序是需要/etc, /var/named, /var/run ...等目录的,所以实际上 bind 的相关程序所需要的所有数据会是在:


全局配置文件

1:选项配置如下:

 ◆ listen-on port 53 { 127.0.0.1; };这个是DNS侦听本机的端口及IP。这里设置表示只侦听127.0.0.1这个地址。如不定义此选项表示侦听所有网络

◆ directory “/var/named”指主配置文件路径,这个路径也是相对路径,它的绝对路 径/var/named/chroot/var/named            

◆ query-source port 53;客户端在进行DNS查询时必须使用53做为源端口

◆ allow-query {localhost; };允许提交查询的客户端,如不定义此选项表示允许所有查询

◆ allow-recursion {192.168.0.0/24;192.168.0.1/24}:允许提交递归查询的客户端,如不定义此选项表示允许所有

◆ allow-transfer {192.168.0.254;}:允许区域传输的DNS服务器(辅助DNS),不写表示允许所有

fowarders {192.168.0.9;}:转发器

forward only|first:only表示如果在指定的转发器找不到,不会去向根查询,first表示快速转发(默认)

2:定义主配置文件,此部分可有多个,只要求localhost_resolver这个名字不重复

match-clients {localhost; };客户端的源IP

   match-destinations {localhost; };解析出的目标IP 

   recursion yes;如果客户端提交的FQDN本服务器没有,那么服务器会帮助客户端去查询

include “/etc/named.rfc1912.zones”;指定主配置文件

上面参数中所有指定地址范围(如:listen-onmatch-clients)时都可以多个写法如下:

◆ 单个IP192.168.0.1;

◆ 网段:192.168.0.0/24;

◆ 指定多个IP192.168.0.1;192.168.0.2;

◆ 网段:192.168.0.;

还可以使用!表示不包括

none:不匹配所有

any:匹配所有

localhostDNS主机

localnet:与DNS主机同网段




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值