Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1351269
  • 博文数量: 632
  • 博客积分: 2778
  • 博客等级: 大尉
  • 技术积分: 3387
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-31 09:09
个人简介

123

文章分类

全部博文(632)

文章存档

2014年(36)

2013年(33)

2012年(563)

分类:

2012-05-31 09:21:24

如果其他同学在这台电脑上已经做过DNS实验,请用如下命令清理:
# rm /var/named/chroot/var/named/named.root
# rm /var/named/chroot/etc/named.conf
# rm /var/named/chroot/var/named/test.edu.cn.db
# rm /var/named/chroot/var/named/192.168.0.db

-------------------------------------------------------------------------

 
下面介绍通过编辑文件的方式对DNS服务器进行配置的过程:

第1步:复制named.root文件

# cp /usr/share/doc/bind-9.3.6/sample/var/named/named.root /var/named/chroot/var/named/named.root



# cp /usr/share/doc/bind-9.3.6/sample/var/named/* /var/named/chroot/var/named/
 
第2步:修改named.conf文件

修改主DNS服务器的/var/named/chroot/etc/named.conf文件,内容如下:

options {
    directory "/var/named";    //定义服务器区配置文件存放的目录,由于使用了chroot功能,
                        //区配置文件存放的实际目录是/var/named/chroot/var/named
    dump-file "/var/named/data/cache_dump.db";
    statistics-file "/var/named/data/named_stats.txt";
};
 
view "internal" {
    match-clients { any; };
    match-destinations { any; };
    recursion yes;             //对内网用户开启DNS的递归查询
 
    zone "0.168.192.in-addr.arpa." IN {        //定义逆向解析区声明,in-addr.arpa是固定写法
        type master;     //注意:书写反向地址解析时,与通常书写的ip地址顺序相反,如:0.168.192
        file "192.168.0.db";                //逆向解析区文件名,名称可以任意取
    };
    zone "test.edu.cn." IN {        //定义正向解析区声明, 如果不写IN,那么默认就是IN类
        type master;
        file "test.edu.cn.db";        //正向解析区文件名,名称可以任意取
    };
 
    zone "." IN {            //定义根区声明
        type hint;             //选择type为hint("."专用)
        file "named.root";    //默认文件名named.root,有时也可能是named.ca
    };                    //在DNS数据库中,named.root文件列出了所有根DNS服务器的地址
 
    zone "localhost." IN {                //定义localhost的正向解析区声明
        type master;
        file "localhost.zone";
        allow-update { none; };
    };
 
    zone "0.0.127.in-addr.arpa." IN {        //定义localhost的逆向解析区声明
        type master;
        file "named.local";
        allow-update { none; };
    };
    //定义localhost的逆向解析区声明(IPv6)
    zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa." IN {
    type master;
    file "named.ip6.local";
    allow-update { none; };
    };
};
include "/etc/rndc.key";        //包含/etc/rndc.key文件
 
 
第3步:创建正向/逆向解析区文件

在主DNS服务器/var/named/chroot/var/named/目录创建正向解析区文件test.edu.cn.db,文件内容如下,正向解析文件主要由一系列A资源记录(RR,Resource Record)组成,使得DNS服务器能够将域名解析成IP地址。

$TTL 1H
@    SOA    dns.test.edu.cn.    root.test.edu.cn. (
                                2    ; Serial
                                3H    ; Refresh
                                1H    ; Retry
                                1W    ; Expire
                                1H )     ; Minimum
        IN    NS    dns.test.edu.cn.         ; NS(Name Server)后面的主机管理整个“test.edu.cn.”域
        IN    MX    10    dns.test.edu.cn.     ; MX(Mail eXchanger)指定邮件转发服务器,接收
                                ;从Internet上来的邮件,然后再转发给相应的主机
dns        IN    A    192.168.0.5
www        IN    A    192.168.0.10
        IN    A    192.168.0.20        ; www有两个IP地址
dns2        IN    CNAME    dns            ;指定主机别名

在主DNS服务器/var/named/chroot/var/named/目录创建逆向解析区文件192.168.0.db, 文件内容如下,逆向解析文件由一系列PTR资源记录(RR,Resource Record)组成,使得DNS服务器能够将IP地址反向解析成域名。

$TTL 1H
@    SOA    dns.test.edu.cn.    root.test.edu.cn. (
                                2    ; Serial
                                3H    ; Refresh
                                1H    ; Retry
                                1W    ; Expire
                                1H )     ; Minimum
    NS    dns.test.edu.cn.
5    PTR    dns.test.edu.cn.
10    PTR     
20    PTR     


第4步:设置文件的属主和权限


[root@localhost ~]# chown named.named /var/named/chroot/var/named/*
[root@localhost ~]# chmod 644 -R /var/named/chroot/var/named/*
[root@localhost ~]# restorecon -R /var/named/chroot/

第5步:检查配置文件的语法

执行named-checkconf命令可以检查/etc/named.conf文件是否有语法错误,如果执行named-checkconf命令后没有任何输出,说明/etc/named.conf文件没有语法错误。
[root@localhost ~]# named-checkconf
none:0: open: /etc/named.conf: file not found (RHEL6中 /etc/named.conf 已经存在,不需下面命令ln)
此时可以建立对/var/named/chroot/etc/named.conf文件的符号链接/etc/named.conf。
[root@localhost ~]# ln -s /var/named/chroot/etc/named.conf /etc/named.conf
[root@localhost ~]# ls -l /etc/named.conf 
lrwxrwxrwx 1 root root 32 05-18 12:46 /etc/named.conf -> /var/named/chroot/etc/named.conf
[root@localhost ~]# named-checkconf 
[root@localhost ~]# 
 
 
第6步:测试

修改/etc/resolv.conf文件,将nameserver行改写为nameserver 192.168.0.5。
执行#service named restart命令重启DNS服务器,或者执行#rndc reload命令,重新加载配置文件。
执行#nslookup 命令测试DNS的正向解析功能。
执行#nslookup 192.168.0.10命令测试DNS的反向解析功能。
 
阅读(453) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~