搭建dns域名服务器过程

在用TCP/IP协议族架设的网络中,每一个节点都有一个唯一的IP地址,用来作为它们唯一的标志。然而,如果让使用者来记住这些毫无记忆规律的IP地址将是不可想象的。人们就需要一种有记忆规律的字符串来作为唯一标记节点的名字。

然而,虽然符号名对于人来说是极为方便的,但是在计算机上实现却不是那么方便的。为了解决这个需求,应运而生了一个域名服务系统DNS,它运行在TCP协议之上,负责将字符名-- 域名 转换成实际相对应的IP地址。这个过程就是域名解析,负责域名解析的机器就叫域名服务器。

1、 域名解析的方法

1.1 最早的域名解析方法

最简单的主机名解析方法是,在一个文件中记录所有主机名及与其对应的IP地址,并保证该文件中主机名的唯一性,通过检索文件中的便可以完成主机名的解析。采用这种最简单的解决方法有其历史原因:在整个70年代,APRANET只是一个小规模的,由类似的数百台主机组成的团体。于是为了解决主机名解析的问题,将连接到ARPANET上每台主机的名字与对应的地址都保存在HOSTS.TXT文件中。这样每增加一台机器,就必须修改HOSTS.TXT文件一次。随着网络的不断发展,网络中的主机数量爆炸性地增加,这种域名 解析的方法已经无法适应新的解析需要。

1.2 分布式的域名服务器

这种方法,我们已经在基础篇的第六章中有了详细的叙述,在此就不再重复了。在这种分布式的 域名 服务器体系中,每一台域名服务器(DNS)负责解析属于自己的这一部分主机的域名 。一般说来,如果你所处在公司或组织所拥有的主机并不多,一般是将域名 的解析工作交给自己的ISP的域名服务器 来完成。而如果你所在组织拥有的主机比较多,我们就可以组建自己的域名服务器负责解析你所在组织的主机。

2、 域名服务器建立实例

2.1 实例环境

假设我们需要建立一台应用于以下情况的一个企业主域名服务器 。

1.拥有一个C类网段地址,为202.101.55.0

2.企业域名注册为company.com。

3.域名服务器的IP定为202.101.55.55,主机名为dns.company.com。它同时充当Proxy.

4.企业网通过路由器与Internet连接。

5.要解析的服务器有:

www.company.com (202.101.55.1)Web服务器mail.company.com(202.101.55.2)E-Mail服务器

2.2 安装前的准备工作

首先要保证在作为系中统有/etc/resolv.conf和/etc/hosts.conf这两个文件。/etc/resolv.conf文件中内容如下所示:

domain compay.comnameserver 202.101.55.55

其中第一行指出对于任何希望连到它上面的主机应该搜寻的域。而第二行指出了在哪个地址可以找到需要的域名服务大。/etc/hosts.conf的内容如下所示:

order hosts,bindmulti on

这里的设置告诉主机名称先在/etc/hosts文件中搜索,然后再查询 域名 服务器 。

2.3 定义文件/etc/named.boot

要使LINUX系统完成域名服务器 的功能,则需要运行一个named的服务进程。这个服务进程可以在安装LINUX时选中。

named启动时需要读取一个初始化文件--/etc/named.boot,这个文件是named的基本配置文件。它并不包含任何DNS数据,针对前面的假定环境,我们要在这个文件中写入:

diretory /etc/namedprimary company.com db.companyprimary0.0.127.IN-ADDR.ARPA db.127.0.0primary 55.101.202.IN-ADDR.ARPAdb.202.101.55cache . db.cache

下面我们逐行讲解这个文件中的内容:

1)在第一行中我们指定named从/etc/named目录下读取DNS数据文件。这个目录可以自行指定并创建,指定后将所有的DNS数据文件均存放在这个目录下;

2) 第二行指定named作为company.com的主域名服务器,db.company文件中包含了所有*.my.com形式的域名的解析数据。

3) 第三行则指定named作为127.0.0网段(本地loopback)地址的转换主服务器。其中db.127.0.0文件中包含了所有127.0.0.*形式的地址到域名的转换数据。

4) 第四行指定named作为202.101.55网段地址转换主服务器,db.202.101.55文件中包含了所有以202.101.55.*形式的地址到域名的转换数据。

5) 最后一行指定named从db.cache文件中获得Internet的顶层"根" 服务器地址。要说明的是,这些数据文件的名称均是自行决定的

2.4 建立正向域名转换数据文件db.company

根据/etc/named.boot文件中的定义,我们在/etc/named目录下建立文件db.company,并且在其中写入所有在company.com域内的主机节点。根据前面假定的环境,可以写入:@IN SOA dns.company.com. root.dns.company.com.(200002011 ;文件版本号28800;刷新时间(秒)7200 ;重试时间(秒)3600000 ;终止时间(秒)86400);TTL生存时间(秒)IN NSdns.company.comwww IN A 202.101.55.1email IN A 202.101.55.2proxy INCNAME

下面我们就逐句地理解这里的配置。

1.SOA是主服务器设定文件中一定要设定的命令,我们通常将它放在文件的第一行。

1)最前面的符号"@"代表目前所管辖的域。

2)接着的"IN"代表地址类别,这里就是固定使用"IN"的。

3)接下来就是命令SOA。

4)接下来填入域名服务器 ,记住由于DNS数据文件的特殊格式规定,在最后一定要加上"·",在这个例子中,我们填入域名服务器:"dns.company.com."

5)接下来是域名服务器管理员的E-MAIL地址,但要注意的是,E-Mail地址中的分隔符"@"在这里用"·"来代替,在最后也要加上"。",在这里,我们相应写入:"root.dns.company.com."

6)接下来在括号内填上各种选项:

文件版本号:当你修改这个文件的内容时,也要修改这个版本序列号。以此来区分是否有更新。

更新时间:指定二级服务器向主服务器拷贝数据的更新时间周期。

重试时间:指定二级服务器在更新出现通信故障时的重试时间。

终止时间:指定二级服务器重新执行更新动作后仍然无法完成更新任务而终止更新的时间。

生存时间:指定当域名服务器询问某个域名和其IP地址后,在域名服务器上放置的时间。

注:二级服务器所设定的域名服务器是主服务器的备份主机。

2.在第二行中,我们用NS命令指定这个域的域名服务器 。在这里我们指出这个域的域名服务器是"dns.company.com"。

3.接下来的两行我们使用A命令来指定域名与IP地址的对应关系。我们将Web服务器的域www.company.com与其IP地址202.101.55.1对应起来;将E-Mail服务器 的域名 mail.company.com与其IP地址202.101.55.2对应起来。

4.最后一行,我们使用了CNAME命令为dns.company.com指定了另一个域名以供使用:proxy.company.com。

2.5 建立反向域名转换数据文件db.127.0.0和db.202.101.55

反向域名转换数据文件用来提供IP地址查询相应的DNS主机名,每个网段分别有一个数据文件。

1.网段127.0.0通常只有一个地址,那就是127.0.0.1loopback地址。所以我们在db.127.0.0中写入的内容是:

@ IN SOA dns.company.com. root.dns.company.com.(200002011;文件版本号28800 ;刷新时间(秒)7200 ;重试时间(秒)3600000;终止时间(秒)86400);TTL生存时间(秒)IN NS dns.company.com1 IN PTRlocalhost

前面两名相信读者已经不会陌生,最后一句我们使用PTR命令让配置文件中的主机可以使用IP地址来知道所对应的域名。

最前面的1代表127.0.0.1,对应的域名就是localhost。

2.网段202.101.55就可能会存在更多的记录,前面假定环境下的设置应是:

@ IN SOA dns.company.com. root.dns.company.com.(200002011;文件版本号28800 ;刷新时间(秒)7200 ;重试时间(秒)3600000;终止时间(秒)86400);TTL生存时间(秒)IN NS dns.company.com1 IN PTR www2 IN PTRemail55 IN PTR dns55 IN PTR proxy

2.6 获得db.cache文件

在LINUX系统中通常在提供了一个named.ca的文件,该文件中Internet的顶层域名服务器,但是这个文件通常会发生变化,所以建议最好从Internet上下载最新的版本。该文件可以通过匿名FTP从ftp.rs.internic.net/domain下载,文件名是named.boot。将它拷贝一份为db.cache就可以了。

3、测试域名服务器

3.1 使用nslookup测试

nslookup命令的功能是查询域名服务器中的数据资料。下例就是使用它来测试域名服务器是否架设成功,其中斜体字代表要输入的内容。

# nslookupDefault server:dns.company.com

Address:202.101.55.55 ;能出现这些信息代表成功

> wwwserver:dns.company.comAddress:202.101.55.1

3.2 使用ping测试

还有一种更简单的测试方法,那就是用ping命令,如果成功将显示:

# ping www.company.comPing www.company.com(202.101.55.1);56 databytes64 bytes from 202.101.55.1:icmp_seq=0 ttl=255 time=1.3ms64bytes from 202.101.55.1:icmp_seq=1 ttl=255 time=0.6ms64 bytes from202.101.55.1:icmp_seq=2 ttl=255 time=0.6ms……

8.4 小技巧

安装好域名服务器后,在内部使用域名进行远程连接时,会发现速度非常慢。其实只要/etc/hosts中加上所有内部的机器的域名就可以了。交流QQ:2881064152

时间: 2024-10-06 14:11:31

搭建dns域名服务器过程的相关文章

搭建DNS域名解析服务器

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

DNS查询过程及DNS服务器简单搭建

1.描述DNS查询过程以及DNS服务器类别. DNS查询过程: 一次完整的查询请求经过的流程: Client--> hosts文件 --> DNS Local Cache --> DNS Server (recursion) --> 自己负责解析的域:直接查询数据库并返回答案: 不是自己负责解析域:ServerCache --> iteration(迭代) DNS服务器类别: 主-辅DNS服务器: 主DNS服务器:维护所负责解析的域数据库的那台服务器:读写操作均可进行: 从D

自己动手搭建DNS服务器

前言: 在我们平时上网中,访问的都是域名,那么域名是如何转换为IP地址的呢?进而访问我们的服务器主机的呢?这时候就需要用到DNS服务器了.DNS是由域名解析器和域名服务器组成的,域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器. 那么接下就开始搭建DNS服务器吧! 1.首先搭建主DNS服务器,ch1主机配置如下: [[email protected] ~]# yum -y install bind        ## 安装bind程序 [[emai

CentOS6.6下bind搭建DNS服务器

我们通过浏览器访问互联网需要输入网址,而这个网址是我们比较容易记忆的,互联网上的服务器却并不能识别这一串有意义的地址,互联网之间的通信是靠ip地址来实现的,ip地址是数字组成的,对于我们日常访问都需要输入一串数字,这是一件很痛苦的事情,所以才有了上面说的有意义的网址,那么网址是如何转换成IP地址的呢?这就是DNS服务器的作用了. DNS全称是Domain Name System域名系统,那么域名又是什么呢?域名就是我们容易记忆的的一串字符,如果想拥有自己的域名则需要向域名代理商进行注册,代理商会

DNS原理介绍和具体搭建DNS

DNS (Domail Name Server,域名服务) 一.DNS概述     DNS 是一种 C/S 架构,实现域名解析.服务端监听在 UDP/53 和 TCP/53 号端口.主要主机名与 IP 地址之间的名称解析. 所谓的名称解析:简单的来说是将一种名称转换为另一种名称.通常是用户名和 IP 地址之间的转换.它们之间是通过解析库来实现的.像 /etc/passwd 文件就是一种用户名和UID之间的一种解析库. 在 Linux 操作系统中,服务端协议的实现是 bind 软件,客户端通过调用

Linux下搭建DNS 服务器

CentOS6.6下DNS服务器的搭建 Linux下的DNS的软件包为bind,有如下几个软件包: bind           #DNS服务的主程序 bind-utils # 工具,包含dig,nslookup等网络诊断工具. bind-chroot      # 修改named 的root目录,这样named被入侵后,黑客也被限制在指定的目录下,不能切换到/,避免造成更大的破坏.[下面的演示中,为了简单起见就没安装该组件] # 安装bind软件包 yuminstall bind bind-u

DNS 域名服务器

域名服务器 域名服务器: 1.域名服务基础: 1).DNS作用及类型: 2).安装和配置: 3).配置文件详解. 2.构建域名服务器: 1).主域名服务器: 2).从域名服务器(辅助域名服务器): 3).分离解析服务器. 一.DNS的作用 域名是为了方便记忆而专门建立的一套地址转换系统,要访问一台互联网上的服务器,最终还必须通过IP地址来实现,域名解析就是将域名重新转换为IP地址的过程.这一过程通过域名解析系统DNS来完成. 1.作用: 正向解析:根据主机名称(域名)查找对应的IP地址. 反向解

(转)DNS解析过程详解

DNS解析过程详解 原文:http://blog.csdn.net/crazw/article/details/8986504 先说一下DNS的几个基本概念: 一. 根域 就是所谓的".",其实我们的网址www.baidu.com在配置当中应该是www.baidu.com.(最后有一点),一般我们在浏览器里输入时会省略后面的点,而这也已经成为了习惯. 根域服务器我们知道有13台,但是这是错误的观点. 根域服务器只是具有13个IP地址,但机器数量却不是13台,因为这些IP地址借助了任播的

Linux搭建DNS服务器

DNS相关概念 DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串.通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析).DNS协议运行在UDP协议之上,使用端口号53. 作用:解析域名 区域:正向区域.反向区域 记录: A记录 MX记录:搭建邮件服务器 PTR记录:反向记录,出现在反向区域中 CNAME记录:别名记录 NS记录:DNS授权服