1. 安装的系统是CentoOS5.3 ;

2. 所在网络:内部局域网192.168.0.0网段。

机器一作为服务器,IP:192.168.0.10, 主机名:Hostname: test.com ;

3. 网卡设置项:

#cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
 DEVICE=eth0
 BOOTPROTO=static
 HWADDR=00:0c:29:66:26:67
 ONBOOT=yes
 NETMASK=255.255.255.0
 IPADDR=192.168.0.10
 TYPE=Ethernet

由上可以看出是使用的静态IP:192.168.0.10。上述几项含义如下:

》DEVICE=name ,其中,name是物理设备名。

》IPADDR=addr,其中,addr是IP地址。

》NETMASK=mask,其中,mask是网络掩码值。

》BROADCAST=addr,其中,addr是广播地址。

》GATEWAY=addr,其中addr是网关地址。

》ONBOOT=answer,其中,answer是yes(引导时激活设备)或no(引导时不激活设备)

》USERCTL=answer,其中,answer是yes(非root用户能控制该设备)或no

》BOOTPROTO=proto,其中,proto取下列值之一:none,引导时不使用协议;static静态分配地址;bootp,使用BOOTP协议,或dhcp,使用DHCP协议。

4. 设计:将此机器设置为DNS服务器,另一台在局域网的IP地址自由获得(或固定,如192.168.0.20 )的机器,能够通过此DNS服务器进行解析域名并能够转向到其他网址。如方位新浪网、凤凰网等。

5. 安装Bind

1)方法一:使用yum 安装

# yum -y install bind* 
# yum -y install caching-nameserver

2)方法二:使用光盘rpm包安装

1.挂载光盘

[root@localhost mnt]# mount /dev/cdrom /mnt


2.查看安装软件

[root@localhost mnt]# rpm -qa|grep bind*
 bind-utils-9.3.4-10.P1.el5
 ypbind-1.19-11.el5
 bind-9.3.4-10.P1.el5
 bind-chroot-9.3.4-10.P1.el5
 binutils-2.17.50.0.6-9.el5
 bind-libs-9.3.4-10.P1.el5[root@localhost CentOS]# rpm -qa|grep  caching*
 package caching-nameserver-9.3.4-10.P1.el5.x86_64.rpm is not installed
 [root@localhost CentOS]# rpm -ivh caching-nameserver-9.3.4-10.P1.el5.x86_64.rpm
 warning: caching-nameserver-9.3.4-10.P1.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID e8562897
 Preparing...                ########################################### [100%]
    1:caching-nameserver     ########################################### [100%]

6. 主配置文件named.conf的配置。

首先要进入目录,由于安装了chroot包(主要功能就不多介绍),所以主配置文件named.conf在/var/named/chroot/etc/下进行配置。命令如下:

[root@killgoogle ~]# cd /var/named/chroot/etc/

由于安装了上面六个包后,这个目录下就默认会生成一个named.conf文件,但这个named.conf文件只是个解释文档,所以我们要通过以下命令来把named.conf文件的模板拷贝一份。命令如下:

[root@killgoogle etc]# cp -p named.caching-nameserver.conf named.conf

现在就可以用named.conf文件进行配置了。命令如下:

[root@killgoogle etc]# vi named.conf   //红色为改动部分
options {
listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
directory     "/var/named";
dump-file     "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
query-source    port 53;    
query-source-v6 port 53;
allow-query     { any; };
};
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
view localhost_resolver {
match-clients         { any; };
match-destinations { any; };
recursion yes;
include "/etc/named.rfc1912.zones";
};

在此目录下还有一个文件要配置,命令如下:

[root@killgoogle etc]# vi named.rfc1912.zones

添加以下内容:

zone "." IN {                                         
type hint; 
file "named.ca";
};
zone "localdomain" IN {
type master;
file "localdomain.zone";
allow-update { none; };
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
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; };
};
zone "255.in-addr.arpa" IN {
type master;
file "named.broadcast";
allow-update { none; };
};
zone "0.in-addr.arpa" IN {
type master;
file "named.zero";
allow-update { none; };
};
zone "test.com" IN {                 //定义一个正向域 test.com
    type master;
    file "test.com.zone";            //定义正向解析文件名 test.com.zone
    allow-update { none; };
};
zone "0.168.192.in-addr.arpa" IN {   //定义反向域 
type master;
    file "192.168.0.zone";           //定义反向解析文件名192.168.0.zone
allow-update { none; };
};

7. 配置正、反解文件。

正反解文件都在相同目录下,由于安装了chroot包后,所以配置正反解文件要到/var/named/chroot/var/named/目录下,而且在此目录下也有正反解的模板文件。具体用到的命令如下:

[root@killgoogle var]# cd /var/named/chroot/var/named/
[root@killgoogle var]# cp -p localdomain.zone test.com.zone
[root@killgoogle var]# cp -p named.local 192.168.0.zone

记得加参数P,不然很有可能启动不了named服务。现在就可以编辑正解(test.com.zone)、反解(192.168.0.zone)这两个文件了。

[root@killgoogle var]# vi test.com.zone
$TTL    86400
@        IN SOA    localhost root (
                    42        ; serial (d. adams)
                    3H        ; refresh
                    15M        ; retry
                    1W        ; expiry
                    1D )        ; minimum
            IN NS        test.com
www    IN A        192.168.0.10

上面这是最基本的正解文件的配置。

[root@killgoogle var]# vi 192.168.0.zone
$TTL    86400
@       IN      SOA     localhost. root.localhost. (
                                      1997022700 ; Serial   //只是序号而已
                                      28800      ; Refresh   //slave的更新时间
                                      14400      ; Retry     //当slave更新失败,重新更新时间
                                      3600000    ; Expire    //重复多久后不再更新
                                      86400 )    ; Minimum   //可看作TTL,尤其沒有設定$TTL时
        IN      NS      test.com.
10       IN      PTR     www.test.com.

说明: 最后一句前面的那个10是指的主机IP:192.168.0.110的最后一个数。

注:  到此为止,DNS服务器的90%的工作基本结束,剩下的就是扫尾工作。

五、收尾工作。

1、首先是修改/etc/resolv.conf文件。只有修改了这个文件才可以用自己的机器进行域名解析,命令如下:

[root@killgoogle var]# vi /etc/resolv.conf

只要加上一句:nameserver 192.168.0.10就行了。

2、配置selinux。命令如下:

[root@killgoogle var]# setup

弹出一个对话框。我们要进行的是防火墙配置,步骤如下:

选择“Firewall Configuration”---按 “Tab”键切换到“Run Tool”—回车—“Security Level”选项要在“Enabled”前面按一下“Tab”键---“SelLinux”选项要选“Disabled”—按一下“Tab”键---选中“Customize”---弹出新对话框---在“Other Port”栏目里输入“53:tcp 53:udp”—“OK”—返回上一个对话框—“OK”—对话框自动关闭。配置完成。

3、开启服务。命令如下:

[root@killgoogle ~]# service named start

4、测试。

测试的命令是nslookup,

[root@localhost named]# nslookup
 > www.test.comServer:         192.168.0.10
 Address:        192.168.0.10#53Name:   www.test.comAddress: 192.168.0.10

5、设置named服务随机启动。

步骤如下:输入setup命令---选择“System Services”---按 “Tab”键切换到“Run Tool”—回车—新对话框中把光标下移到“named”前---用空格键使“named”选项前多出个“*”表示----按 “Tab”键切换到“OK”----按 “Tab”键切换到“Quit”

注:如果在正、反解文件中添加了记录后,别忘了用“service named restart”命令重启named服务,否则修改无法生效。

六、在另一台机器中设置如下:

IP地址,自由获得(或者设定为:IP:192.168.0.20;子网掩码:255.255.255.0;网关:192.168.1.1);

首选DNS:192.168.1.110

打开浏览器打开相关站点。此时一切正常

 


转载于:https://blog.51cto.com/chenlinumb/562417