DNS配置
首先修改配置文件使主机获得永久ip地址
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.11
HWADDR=00:0C:29:7F:EE:4F
ONBOOT=yes
TYPE=Ethernet
重启配置文件使之生效
# /etc/init.d/network restart
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Setting network parameters: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]
使用bind搭建DNS服务器
在RHEL4中提供的有关bind服务的软件包有:
1、bind-libs-9.2.4-2:提供了实现域名解析功能必备的库文件。系统已默认安装。
2、bind-utils-9.2.4-2:提供了对DNS服务器的测试工具程序。系统已默认安装。
3、bind-9.2.4-2:bind服务器软件包,在第4章光盘中,默认没有被安装,需要管理员使用rpm命令进行手动安装。
首先挂载第4张光盘
# mount /dev/cdrom /media/cdrom
# cd /media/cdrom/RedHat/RPMS/
然后安装bind软件包
# rpm -ivh bind-9.2.4-2.i386.rpm
warning: bind-9.2.4-2.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ########################################### [100%]
1:bind ########################################### [100%]
bind服务器的启动与停止
bind服务器的启动脚本名称是named,并且该服务程序在bind服务器安装后默认不自动启动,需要使用chkconfig命令手动设置在运行级别3和5的启动状态。
启动此服务使用:
# service named start
停止使用:
# service named stop
重启此服务使用:
# service named restart
查看服务的运行级别:
# chkconfig --list named
named 0:off 1:off 2:off 3:off 4:off 5:off 6:off
# chkconfig --level 2345 named on
在这里需要了解一下DNS服务器的3种类型
1、缓存域名服务器:主要功能是提供域名解析的缓存。
2、主域名服务器:保存了指定域的区域文件。
3、从域名服务器:是对主域名服务器的备份,可以有效的对主域名服务器的负载进行分担。
构建缓存域名服务器
在RHEL4系统中为配置缓存服务器提供了名为 caching-nameserver的软件包,该软件包在第1张光盘中,默认没有被安装,需要使用rpm命令手动进行安装。
# cd /media/cdrom/RedHat/RPMS/
# rpm -ivh caching-nameserver-7.3-3.noarch.rpm
warning: caching-nameserver-7.3-3.noarch.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ########################################### [100%]
1:caching-nameserver warning: /etc/named.conf saved as /etc/named.conf.rpmorig
########################################### [100%]
caching-nameserver包安装时将对bind服务器的配置文件named.conf的内容进行更改,原有文件的内容被保存在文件"/etc/named.rpmorig"中。
构建主域名服务器
设置zhen.com域的正向和反向区域。
正向区域的区域名称为zhen.com,类型为主域名服务器,区域文件名称为zhen.com.zone,设置如下:
zone "zhen.com" {
type master;
file "zhen.com.zone";
};
type用于设置区域类型
当type设置为master时表示区域的类型为主服务器;
为hint表示该区域的类型为根区域;
为slave表示该区域的类型为从域名服务器;
file用于设置区域文件
其中根区域的文件名是named.ca,保存在bind的工作目录中,即"/var/named"目录中;
上面设置的区域文件名称为:zhen.com.zone,同样保存在"/var/named"目录中;
zhen.com的所有主机都在子网192.168.1.0中,所以反向解析区域的名称时1.168.192.in.addr.arpa,类型为主域名服务器,区域文件名时192.168.1.rev。
zone "1.168.192.in-addr.arpa" {
type master; //设置区域类型为master;
file "192.168.1.rev"; //设置区域文件名称为192.168.1.rev;
};
接下来就可以建立正向区域文件和反向区域文件了
按照named.conf配置文件中设置的文件名建立为zhen.com.zone的正向区域文件,该文件需要保存在目录"/var/named",需使用vi建立该文件。
# vi /var/named/zhen.com.zone
$TTL 86400 //设置TTL值为86400
@ 86400 IN SOA ns1.zhen.com. admin.zhen.com. ( //注意这里在admin.zhen.com.和"("中间有空格;
42 ; serial //序列号
1H ; refresh //1小时
10M ; retry //10分钟
1W ; expity //一周
1D ) ; minimum //一天
@ IN NS ns1.zhen.com. //其中"@"在区域文件中代表默认的域,NS记录称为
@ IN NS ns2.zhen.com. 域名服务器记录,在区域文件中用于设置当前域的DNS服务器名称。
ns1 IN A 192.168.1.11 //此为地址记录,又称A记录,是区域文件中最基本的
ns2 IN A 192.168.1.11 资源记录形式,用于设置主机名到ip地址的对应记录。
host1 IN A 192.168.1.11
host2 IN A 192.168.1.11
mail IN CNAME host1 //此记录为别名记录,用于在区域文件中对主机名称设置
www IN CNAME host2 别名,通过设置别名记录,具有多种功能的同一个服务器可以具有多个域名。
@ IN MX 10 mail.zhen.com. //此记录为邮件交换记录,又称MX记录,用于设置当前域中提供邮件服务的邮件服务器名称,其中的"10",代表着优先级,通常数字越小,表示优先级越高,执行时会被优先执行。
建立反向区域文件
]# vi /var/named/192.168.1.rev
$TTL 86400
@ 86400 IN SOA ns1.zhen.com. hostmaster.zhen.com. (
42
1H
10M
1W
1D )
@ IN NS ns1.zhen.com.
@ IN NS ns2.zhen.com.
11 IN PTR ns1.zhen.com. //此记录为反向地址解析记录,又称PTP记录,用于
11 IN PTR ns2.zhen.com. 设置ip地址到主机域名的对应记录。反向地址记录
11 IN PTR host1.zhen.com. 是反向区域文件中最主要的记录类型。
11 IN PTR host2.zhen.com.
在完成对named.conf主配置文件和正、反区域文件中的配置文件中的配置内容进行检测系统中的"/etc/named.conf"文件的内容。
测试named.conf主配置文件。
# named-checkconf
named-checkconf命令用于对bind服务器的主配置内容进行检测,如果named.conf文件中不存在语法错误,命令将不显示任何信息,如果文件中有语法错误,屏幕将显示发现的错误内容。
测试配置文件
named-checkzone 命令用于检查区域文件中的区域名称,我们可以使用它来检测区域文件配置是否正确,如果发现了语法错误的话,将显示错误的内容,如果没问题的话会显示Ok。
# named-checkzone zhen.com /var/named/zhen.com.zone
zone zhen.com/IN: loaded serial 42
OK
# named-checkzone 1.168.192.in.addr.arpa /var/named/192.168.1.rev
zone 1.168.192.in.addr.arpa/IN: loaded serial 42
OK
重启服务使配置生效
# service named restart
配置从域名服务器
从域名服务器的软件包的安装过程与主域名服务器中完全相同。需要安装如下两个软件包:
# rpm -ivh bind-9.2.4-2.i386.rpm
# rpm -ivh caching-nameserver-7.3-3.noarch.rpm
设置named.conf文件
在从域名服务器的named.conf主配置文件中添加zhen.com域和其反向解析区域的设置
zone "zhen.com" {
type slave;
file "slaves/zhen.com.zone";
masters { 192.168.1.11 ; };
};
zone "1.168.192.in-addr.arpa" {
type slave;
file "slaves/192.168.1.rev";
masters { 192.168.1.11 ; };
};
检测配置文件和启动named服务
# named-checkconf
# service named start
从域名服务器启动后可以在"/var/named/slaves"目录中看到区域文件,这是named服务器程序在启动时向主域名服务器请求接收并保存的。
# ls /var/named/slaves/
192.168.1.rev zhen.com.zone
测试缓存域名服务器
# nslookup
> server 192.168.1.11
Default server: 192.168.1.11
Address: 192.168.1.11#53
> localhost
Server: 192.168.1.11
Address: 192.168.1.11#53
Name: localhost
Address: 127.0.0.1
> 127.0.0.1
Server: 192.168.1.11
Address: 192.168.1.11#53
1.0.0.127.in-addr.arpa name = localhost.
测试主域名服务器
# nslookup
> server 192.168.1.11
Default server: 192.168.1.11
Address: 192.168.1.11#53
> host1.zhen.com
Server: 192.168.1.11
Address: 192.168.1.11#53
Name: host1.zhen.com
Address: 192.168.1.11
> 192.168.1.11
Server: 192.168.1.11
Address: 192.168.1.11#53
11.1.168.192.in-addr.arpa name = ns1.zhen.com.
11.1.168.192.in-addr.arpa name = ns2.zhen.com.
11.1.168.192.in-addr.arpa name = host1.zhen.com.
11.1.168.192.in-addr.arpa name = host2.zhen.com.
>