分享
 
 
 

UNIX下DNS服务器之创建篇(上)

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

本文主要和大家讨论在UNIX环境下,使用BIND服务器软件创建一个DNS主域服务器。我们知道在安装好一个UNIX系统后,BIND软件也随系统基本上安装好的,要做的工作是对有关的文件参数进行相关的修改与配置。

通常我们可以通过检查/var/log目录或系统上它的等价目录下的日志文件来确定目前拥有的BIND的版本。BIND服务器守护进程named在启动时将版本号记录到系统日志中(设施“守护进程”)。用grep查找类似下面这样的行:

第一行取自HP-UX 11.00发布附带的情况,第二行来自我们本地维护的一台SunOS机器。后一行撒了一个小谎,因为BIND 8.2.2的补丁4没有增加补丁级别。实际上是8.2.2-P4。

如果你需要升级BIND软件的版本的话,可以到www. isc.com网站上下载BIND新版本,如bind-9.0.0.tar打包源文件,解压并使用tar得到文件的内容,接下来要编译BIND,需要运行configure命令,从而产生如下的输出:

下一步,利用make命令构造二进制码:

最后,通过构造测试程序来测试二进制代码:

如果所有测试都通过了,就可以执行“make install”安装新代码。

UNIX系统的域名解析

Internet上常见的域名解析的有下面两种方式:

名字到地址的解析(正向解析)

如:www.study.js.cn è 61.155.107.131

地址到名字的解析(反/逆向解析)

如:61.155.107.131è www.study.js.cn

因此我们在配置UNIX域名服务器时,在互联网上要实现正向/反向解析,只有完成这两种解析方式,才可以说真正意思上的域名服务器。现在许多Internet上域名服务器特别是Windows系统的域名解析只实现正向解析。

UNIX 的DNS服务器创建

下面以Solaris为例来说明UNIX主域服务器创建过程,对于随Solaris7、8提供的BIND 8,主要配置文件是/etc/named.conf,BIND4 以及更早的版本使用名为/etc/named.boot的配置文件。/etc/named.conf 文件负责控制DNS服务器的行为,它提供了以下关键词,用来定义操作声明:

acl----定义一个访问控制列表,哪些客户可以使用该服务器。

include ----读入一个包含声明的外部文件,该文件使用与/etc/named.conf相同的格式。这在配置文件非常大时是很有用的,可以将不同的部分分成在逻辑上相关的几个文件。

logging----确定在声明指定的日志文件中记录哪些服务器活动。

options----定义本地服务器的操作特征。

server----定义其他服务器的操作特征。

zone----创建本地DNS区域。

在Solaris 中,in.named为进程域名服务器。通过网络初始化脚本S72inetsvc在level 2级上启动的,启动后,它读取/etc/named.conf以获取它所管理的区域和区域数据库文件。区域文件除了包含主机名到IP地址的映射外,还包含其他内容。域名服务器的配置过程包括下列步骤:

1)注册一个域名

2)创建一个主机名和ip地址的列表

3)创建/etc/named.conf文件

4)创建区域数据文件

在区域数据文件中,信息是以特定的格式存储的。这些信息被定义为资源记录类型(RR)。常用的标准的资源记录说明如下:

SOA(管理开始)资源记录----在master file(就是bind4里的zone file)中用到。

NS(名字服务器)资源记录----列出了域或区域中的名字服务器

A (地址)资源记录----地址资源记录用于说明DNS 数据库中主机的IP地址。它可能即使用到绝对主机名(FQHN),也可能使用相对的主机名(短主机名)。

MX(邮件交换服务器)资源记录----MX资源记录负责域内的主机之间的邮件交换服务。

PTR(指示器)资源记录----通常用于逆向主机名的解析。

CNAME ---- 用于定义主机的别名。

几个必须的配置文件

named.conf

named.ca

named.local

master file(就是bind4里的zone file) ----在本文中用study.js.cn和study.js.cn.rev 两个文件。

在这几个配置文件中,最主要的是named.conf,在/etc下, 它是named启动时缺省的启动文件。一个典型的named.conf文件至少包括options和zone,如:

① named.conf 文件

options {

directory "/var/named"; //数据库文件的位置,要创建named这个目录,

multiple-cnames yes;

pid-file "/etc/named.pid";

};

//type domin

source host/file backup file

zone "." in {

type hint; //这里hint表示为缓存服务器

file "named.ca";

};

zone "0.0.127.in-addr.arpa" in {

type master; //这里master表示为主dns server,

file "named.local";

};

zone "study.js.cn" in {

type master;

file "study.js.cn "; //这里的study.js.cn就是你要创建的域,正向解析 ,

};

zone "107.155.61.in-addr.arpa" in {

type master;

file "study.js.cn.rev "; // 反向解析,域为107.155.61,

};

在这里面,options定义master file存放的路径,对应于某一个域, named就会到这里找数据文件,如有一个www.study.js.cn的require请求,named就会到/var/named下找study.js.cn这个文件,查出www.study.js.cn的ip。Zone定义一个域,如study.js.cn这个域,type定义域名服务器的类型,master 说明这是一个主域名服务器,第一个zone定义本地服务器为它自己的回送域的主服务器,将地址127.0.0.1映射为localhost,几乎在所有类型的域名服务器里都可以看见这个域。

第二个zone用来定义一个高速缓存初始化文件,在named.ca 里至少包含着根服务器的名字和地址(这些根服务器也会变化). 一般named.ca不需要修改,named.local里只需要修改SOA纪录里域和联系人。file定义study.js.cn这个域的master file。

在/var/named目录下创建如下几个数据库与/etc/named.conf文件中相对应文件named.ca,named.local,study.js.cn 和 study.js.cn.rev。

② study.js.cn 文件

@ IN SOA dns.study.js.cn.

root.dns.study.js.cn. (2000120101 ; Serial Number10800; Refresh after 3 hours3600 ; Retry after 1 hour 3600000 ; Expire after 6 weeks86400 ) ; Minimum TTL of 1 day

IN NS dns

@

IN MX 10 mail

Localhost IN A 127.0.0.1

www IN A 61.155.107.131

dns IN A 61.155.107.131

mail IN A 61.155.107.132

ftp IN

CNAME

dns

这里面的@定义当前域,也就是study.js.cn., IN定义这是一个inter-net类型的纪录,SOA(管理开始)标志一个授权域的开始,dns.study.js.cn.为开创该域的服务器,可以用主域名服务器,root.dns.study.js.cn.定义联系人,root后的.就是email里的@,括号里的几个数字定义和本域有关的几个参数,单位是秒。

前四个参数用于辅域名服务器更新master file,其中;后面的是说明,serial number用于辅域名服务器判断主域名服务器的 master file是否更新,第五个参数定义这个域在其他域名服务器的cache 里的有效期,过了这个时间其他的域名服务器就会到这里来重新查询相关的信息。

DNS表明这个域的域名服务器是dns.study.js.cn。NS纪录可以有多个; @

IN MX 10 mail表示:所有发给当前域的邮件全部转发到服务器mail上。Localhost、www、dns和mail这四条A纪录的含义是将localhost解析到127.0.0.1 ;www.study.js.cn和dns.study.js.cn解析到61.155.107.131;将mail.study.js.cn解析到61.155.107.132,定义ftp的别名为dns。

③ study.js.cn.rev 文件

该文件存放从IP地址到域名的映射信息,文件内容:

@ IN SOA dns.study.js.cn.

root.dns.study.js.cn. (

2000120101

; Serial

10800

; Refresh

1800

; Retry

3600000

; Expire

86400 ) ; Minimum

IN NS dns.study.js.cn.

131

IN

PTR dns.study.js.cn.

132

IN

PTR

mail.study.js.cn.

语法说明:

131

IN

PTR

dns.study.js.cn.

表示:当前域(即61.155.107)中地址为 131的服务器的域名为dns.study.js.cn.

132意义同上,表示的服务器的域名为mail.study.js.cn.

注意,此处服务器的域名要用绝对域名。

④ named.ca 文件

;

This file holds the information on root name servers needed to

;

initialize cache of Internet domain name servers

;

(e.g. reference this file in the "cache

.

"

;

configuration file of BIND domain name servers).

;

;

This file is made available by InterNIC registration services

;

under anonymous FTP as

;

file

/domain/named.root

;

on server

FTP.RS.INTERNIC.NET

;

-OR- under Gopher at

RS.INTERNIC.NET

;

under menu

InterNIC Registration Serv

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有