首先解释一下域名服务(DNS-Domain Name Server)的作用。其实,链接到网络的电脑,只需要知道IP地址就可以实现访问。但是谁会去记住129.128.5.191这个IP地址是代表OpenBSD的服务器呢?当然是www.openbsd.org容易记忆得多了。域名服务所实现的作用,就是把www.openbsd.org这样的名字转换成电脑可以识别的129.128.5.191这样的IP地址。
所以域名解释服务应当包含两种转换过程:从名字到IP地址(正向解释);从IP地址到名字(反向解释)。理解了这些基本感念,配置域名解释服务得时候就会比较容易了。
第一节、设置named.boot文件
OpenBSD 2.8系统在安装完成后就已经有域名解释服务程序named 4.9.7-REL,只是需要人工设定启动。named的配置文件在/var/named目录里面,文件名是named.boot。一个简单的,可以使用的(当然是和手册的例子联系起来啦!)的named.boot的文件内容如下:
directory /namedb
cache . root.cache
primary 0.0.127.IN-ADDR.ARPA localhost.rev
primary 32.168.192.IN-ADDR.ARPA 01tech.rev
primary 01tech.nat 01tech
可以用vi工具来编辑这个文件(vi的使用方法请参考『附录4』)。解释一下这个文件各行的含义:
第一行用于指定域名解释文件所在目录,其实真正的域名解释文件是放在/var/named/namedb目录里面,因为我们将采用chroot的方式(执行程序的时候切换到程序需要的用户,并以改用户的根目录作为根目录的方式)执行named,所以这里是/namedb。
第二行指定了缓存文件,对于曾经访问过的域名,将会记录在缓存文件里面,以后查询的时候就会快很多。缓存文件的文件名是root.cache。
第三行指定了对于本机的域名反解文件。0.0.127.IN-ADDR.ARPA的写法其实就是说要反过来求127.0.0.x(x的范围是1~255)的对应名称。相关的解释文件是localhost.rev
第四行和第三行同理,就是要求192.168.32.x的对应名称。相关的解释文件是01tech.rev
第五行是正解,指定凡是域名为01tech.nat的名称都交给01tech文件进行解释。
第二节、配置域名解释文件
然后,我们看看/var/namedb目录里面的文件的内容,在系统没有配置域名解释服务的时候,默认只有两个文件:localhost.rev和root.cache,其中的localhost.rev并非我们需要的内容,要自行改写,改写后的内容如下:
@ IN SOA moo.01tech.nat. root.moo.01tech.nat. (
14 ;Serial
3600 ;Refresh
900 ;Retry
3600000 ;Expire
3600) ;Minimum
IN NS moo.01tech.nat.
1 IN PTR localhost.
解释一下这个文件的构成吧!其实这个文件由三个RR(Resource record)构成,或者我们用表格的方式来分析,会比较容易理解吧:
[ name ] [ ttl ] [ class ] type data
@ 省略 IN SOA ……
省略 省略 IN NS ……
1 省略 IN PTR ……
Name必须为主机名或者域名,当使用@时代表缩写,就是和named.boot文件中指定的一样,在这里就代表127.0.0.x了。
ttl是指此条数据的有效保存期限,通常都忽略掉,采用默认的ttl值。
class指定网络类型,IN代表Internet,基本上都不会使用别的类型。
type常见的有SOA、NS、A、PTR、MX、CNAME等。
SOA(Start Of Authority)后面跟负责这个域的主机,管理员邮箱,序列号,副解释域更新间隔,副解释域更新失败重试间隔,主解释域失败时副解释域提供数据的有效期限,其他域名解释服务器保留本域名解释服务器的时间。需要注意的是,在主机和管理员邮箱后一定不能缺少“.”否则系统会自动加上完整的域名,例如只写moo的话,系统会添加为moo.01tech.nat。所以也可以简单的把SOA语句写作SOA moo root.moo (……)。
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 手册 实务 配置 服务器 文件 解释 IN 域名 服务 需要 |
注册
个人空间
