千家信息网

RHEL5和Centos5.5上如何构建主从DNS

发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,小编给大家分享一下RHEL5和Centos5.5上如何构建主从DNS,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!实验环境
千家信息网最后更新 2025年12月02日RHEL5和Centos5.5上如何构建主从DNS

小编给大家分享一下RHEL5和Centos5.5上如何构建主从DNS,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

实验环境说明

操作系统 主机名 网卡数量 IP 用途
--------------------------------------------------------------------------------------------------
RHEL5 ns1 1块 192.10.10.5/24 主DNS
--------------------------------------------------------------------------------------------------
Centos5.5 ns2 1块 192.10.10.55/24 辅助DNS
--------------------------------------------------------------------------------------------------
Xp Xp_client 1块 192.10.10.10/24 内网客户端
--------------------------------------------------------------------------------------------------
以上,先用ping命令测试确保网络连通性


一、在RHEL5上检查构建DNS所需的安装包

[root@ns1 ~]# rpm -qa |grep bind*
bind-utils-9.3.3-7.el5 #提供对DNS服务器的测试用的工具,如nslookup,dig等
bind-chroot-9.3.3-7.el5 #为bind提供一个伪装根目录以增强安全性
bind-9.3.3-7.el5 #构建DNS的主要程序包

[root@ns1 ~]# rpm -qa |grep caching-name*
caching-nameserver-9.3.3-7.el5 #为实现缓存DNS服务器提供必要的配置文件


BIND的主配置文件为named.conf,RHEL5和Centos5.5的/etc和/var/named/chroot/etc下默认没有此文件,需要手动建立,也可以从/usr/share/doc/bind-9.3.3/sample/etc/下复制BIND的主配置样本文件到/var/named/chroot/etc下。
named.conf配置文件中主要包括全局配置和区域配置部分,全局配置部分包括在"options { };"的大括号中;而区域配置参数在"zone { };"中。

二、为提高域名解析效率,需要将主从DNS的地址写入到/etc/hosts,同时在/etc/resolv.conf文件中指定主从DNS地址。

[root@ns1 named]# cat /etc/hosts #将主从DNS地址写入到hosts文件中
# Do not remove the following line, or various programs
# that require network functionality will fail.
192.10.10.5 ns1.tgh.com ns1
192.10.10.55 ns2.tgh.com ns2

[root@ns1 named]# cat /etc/resolv.conf #将主从DNS地址写入到resolv.conf文件中
search tgh.com
nameserver 192.10.10.5
nameserver 192.10.10.55

[root@ns1 ~]# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=ns1.tgh.com #设置主机名
GATEWAY=192.10.10.1

三、手动创建BIND主配置文件

[root@ns1 ~]#vi /var/named/chroot/etc/named.conf #使用vi创建并编辑BIND主配置文件named.conf
#全局配置参数
options {
listen-on port 53 { any; }; #设定监听端口号、IP地址;若注释此行,则在所有的可用IP地址上监听服务,any为监听所有
directory "/var/named/"; #此行不能注释,指定区域数据库文件存放位置
allow-query { any; }; #允许DNS查询的客户端地址,any表示所有都可查询
recursion yes; #设置允许递归查询
};
#区域配置参数
zone "." IN { #设置根区域
type hint; #区域类型,hint表示根域、master表示主域、slave表示辅助域
file "named.ca"; #对应的根域地址数据库文件名
};

zone "tgh.com" IN { #设置正向DNS区域名称
type master; #区域类型为主域
file "tgh.com.zone"; #正向区域的地址数据库文件名
allow-transfer { 192.10.10.55; }; #设置允许下载区域数据库信息的从域名服务器地址
allow-update { none; }; #设置允许动态更新的客户端地址为禁止
};
zone "10.10.192.in-addr.arpa" IN { #设置反向DNS区域名称
type master; #区域类型为主域
file "192.10.10.arpa"; #反向区域的地址数据库文件名
allow-transfer { 192.10.10.55;}; #设置允许下载区域数据库信息的从域名服务器地址
allow-update { none; };
};
:wq! #保存退出!

[root@ns1 etc]#chmod 755 named.conf #给予相关权限,不然在启动named时会报错
[root@ns1 etc]# ll named.conf #查看区域配置文件的属性
-rwxr-xr-x 1 root root 780 Nov 24 07:37 named.conf

[root@ns1 ~]# named-checkconf /var/named/chroot/etc/named.conf #检查主配置文件是否存在语法错误,注意指定路径哦

四、手动创建BIND的区域数据库配置文件

[root@ns1 ~]# vi /var/named/chroot/var/named/tgh.com.zone #创建正向区域数据库文件,注意文件名及路径

$TTL 86400 #设置有效地址解析记录的默认缓存时间
@ IN SOA tgh.com. admin.tgh.com. ( #设置SOA标记、域名、域管理邮箱
2010112001 #更新序列号,用于标记地址数据库的变化,可以是10位以内的整数
4H #刷新时间,从域名服务器更新该地址数据库文件的间隔时间
15M #重试时间,从域名服务器更新地址数据库失败后,等待多长时(15 Minutes)间再次尝试
1W #失效时间,超过该时间(1 Week)仍无法更新地址数据库,则不再尝试
1D #设置无效地址解析记录的默认缓存时间(1 Day)
)
@ IN NS ns1.tgh.com. #NS为域名服务器记录,用于设置当前域的DNS服务器的域名地址,注意名称后都有"."
@ IN NS ns2.tgh.com.
IN MX 5 mail.tgh.com. #MX邮件交换记录,用于设置当前域的邮件服务器域名地址,数字表优先级,越大越低
ns1 IN A 192.10.10.5 #A地址记录,用于记录正向域名解析
ns2 IN A 192.10.10.55
www IN A 192.10.10.5
www IN A 192.10.10.4 #此处假设一个域名对应多个IP,可以实现基于DNS解析的负载均衡
mail IN A 192.10.10.5
ftp IN A 192.10.10.5
sz IN CNAME www #CNAME别名记录,表示sz.tgh.com是www.tgh.com的别名,可以通过nslookup sz.tgh.com查看到
* IN A 192.10.10.5 #当一个IP对应大量不同域名时,用作泛域名解析
:wq! #保存退出!
[root@ns1 ~]# vi /var/named/chroot/var/named/192.10.10.arpa #创建反向区域数据库文件,注意文件名及路径

$TTL 86400
@ IN SOA tgh.com. admin.tgh.com. (
2010112001
4H
15M
1W
1D
)
@ IN NS ns1.tgh.com. #注意名称后有"."
@ IN NS ns2.tgh.com.
5 IN PTR ns1.tgh.com.
55 IN PTR ns2.tgh.com.
5 IN PTR www.tgh.com. #PTR指针记录,第一列为主机地址
4 IN PTR www.tgh.com. #此处对应正向区域数据库中的假设一个域名对应多个IP
5 IN PTR mail.tgh.com.
5 IN PTR ftp.tgh.com.

:wq! #保存退出!

五、给予相关权限,启动named服务,并关闭防火墙

[root@ns1 named]# chmod 755 tgh.com.zone #给予相关权限
[root@ns1 named]# chmod 755 192.10.10.arpa #给予相关权限
[root@ns1 ~]# service named restart #重新启动named服务
Stopping named: [ OK ]
Starting named: [ OK ]

[root@ns1 etc]# service iptables stop #关闭防火墙,不然客户端不能正常解析
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]

[root@ns1 ~]# chkconfig --level 35 named on #将named服务设为开机自启动

[root@ns1 ~]# chkconfig --list named #查看是否在3 5开启
named 0:off 1:off 2:off 3:on 4:off 5:on 6:off

[root@ns1 data]# netstat -anp |grep :53 #查看named端口状态

六、验证主域名服务器
[root@ns1 ~]# nslookup #启用nslookup查询
> www.tgh.com
Server: 192.10.10.5
Address: 192.10.10.5#53

Name: www.tgh.com
Address: 192.10.10.5
> mail.tgh.com
Server: 192.10.10.5
Address: 192.10.10.5#53

Name: mail.tgh.com
Address: 192.10.10.5
> sz.tgh.com
Server: 192.10.10.5
Address: 192.10.10.5#53

sz.tgh.com canonical name = www.tgh.com.
Name: www.tgh.com
Address: 192.10.10.5

> 192.10.10.5 #反向解析
Server: 192.10.10.5
Address: 192.10.10.5#53

5.10.10.192.in-addr.arpa name = ftp.tgh.com.
5.10.10.192.in-addr.arpa name = ns1.tgh.com.
5.10.10.192.in-addr.arpa name = www.tgh.com.
5.10.10.192.in-addr.arpa name = mail.tgh.com.

在客户端XP_client上(注:客户端的DNS应该为192.10.10.5)

C:\Documents and Settings\tghfly>nslookup www.tgh.com #正向解析
Server: ftp.tgh.com
Address: 192.10.10.5

Name: www.tgh.com
Address: 192.10.10.5

C:\Documents and Settings\tghfly>nslookup sz.tgh.com #对设置的别名进行正向解析
Server: ftp.tgh.com
Address: 192.10.10.5

Name: www.tgh.com
Address: 192.10.10.5
Aliases: sz.tgh.com

C:\Documents and Settings\tghfly>nslookup 192.10.10.5 #反向解析
Server: mail.tgh.com
Address: 192.10.10.5

Name: www.tgh.com
Address: 192.10.10.5
----------------------------------------------------------------------------------------------------
七、在Centos5.5上使用bind构建辅助域名服务器

1、同样设置好主机名、/etc/hosts 、/etc/resolv.conf文件

[root@ns2 network-scripts]# cat /etc/resolv.conf
nameserver 192.10.10.5
nameserver 192.10.10.55

[root@ns2 network-scripts]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
192.10.10.5 ns1.tgh.com
192.10.10.55 ns2.tgh.com

[root@ns2 network-scripts]# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=ns2.tgh.com
GATEWAY=192.10.10.1

2、在辅助域名服务器上建立BIND主配置文件named.conf

[root@ns2 ~]# vi /var/named/chroot/etc/named.conf

options {
allow-query { any; };
directory "/var/named";
recursion yes;
};
zone "tgh.com" IN {
type slave; #使用辅助区域类型
masters { 192.10.10.5; }; #指定主域名服务器的IP地址
file "slaves/tgh.com.zone"; #从主域名服务器上下载的地址数据库文件保存到辅助域名服务器的slaves目录下
};
zone "10.10.192.in-addr.arpa" IN {
type slave;
masters { 192.10.10.5; };
file "slaves/192.10.10.arpa";
};

:wq! #保存退出

3、给予相关权限,启动named服务,并关闭防火墙
[root@ns2 ~]# chmod 755 /var/named/chroot/etc/named.conf

[root@ns2 ~]# service named restart
Stopping named: [ OK ]
Starting named: [ OK ]

[root@ns2 ~]# service iptables stop
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: nat filter [ OK ]
Unloading iptables modules: [ OK ]

[root@ns2 ~]# chkconfig --level 35 named on

[root@ns2 ~]# tail -f /var/log/messages #查看区域数据库文件下载记录
Nov 27 14:37:18 ns2 named[5463]: zone tgh.com/IN: Transfer started.
Nov 27 14:37:18 ns2 named[5463]: transfer of 'tgh.com/IN' from 192.10.10.5#53: connected using 192.10.10.55#53041
Nov 27 14:37:18 ns2 named[5463]: zone tgh.com/IN: transferred serial 2010112001
Nov 27 14:37:18 ns2 named[5463]: transfer of 'tgh.com/IN' from 192.10.10.5#53: end of transfer
Nov 27 14:37:18 ns2 named[5463]: zone tgh.com/IN: sending notifies (serial 2010112001)
Nov 27 14:37:19 ns2 named[5463]: zone 10.10.192.in-addr.arpa/IN: Transfer started.
Nov 27 14:37:19 ns2 named[5463]: transfer of '10.10.192.in-addr.arpa/IN' from 192.10.10.5#53: connected using 192.10.10.55#49613
Nov 27 14:37:19 ns2 named[5463]: zone 10.10.192.in-addr.arpa/IN: transferred serial 2010112001
Nov 27 14:37:19 ns2 named[5463]: transfer of '10.10.192.in-addr.arpa/IN' from 192.10.10.5#53: end of transfer
Nov 27 14:37:19 ns2 named[5463]: zone 10.10.192.in-addr.arpa/IN: sending notifies (serial 2010112001)

4、在客户端XP_client上测试(注:客户端的DNS应更改为192.10.10.55)

C:\Documents and Settings\Administrator>nslookup
Default Server: ns2.tgh.com
Address: 192.10.10.55

> www.tgh.com
Server: ns2.tgh.com
Address: 192.10.10.55

Name: www.tgh.com
Address: 192.10.10.5

> mail.tgh.com
Server: ns2.tgh.com
Address: 192.10.10.55

Name: mail.tgh.com
Address: 192.10.10.5

> sz.tgh.com
Server: ns2.tgh.com
Address: 192.10.10.55

Name: www.tgh.com
Address: 192.10.10.5
Aliases: sz.tgh.com
备注:当客户端不能通过辅助域名服务器解析时,可试试将slaves目录中的地址数据库文件删除,重新启动named获取。

以上是"RHEL5和Centos5.5上如何构建主从DNS"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

文件 地址 区域 域名 服务 数据 数据库 服务器 配置 客户 客户端 时间 辅助 主从 文件名 权限 更新 主机 名称 类型 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 最新的数据库是什么 江苏crm客户管理软件开发 首届网络安全宣传周时间 云数据库综合案例讲解 前端软件开发需要多少钱 美国网络安全的特征体现在 服务器接口类型及作用 网络安全论文目录 哪种数据库能与excel 数据库应用主要用于 mysql查询数据库表格字段 服务器的作用和用途百度知道 redis 图片服务器 网络安全保密展板感悟 江西浪潮服务器虚拟化解决方案 广东通用软件开发单价 西安一码通软件开发商是谁 易霖金桥网络技术有限责任公司 数据库范式应用题 浙江大数据软件开发哪家便宜 软件开发期间商业构想如何保密 江阴软件开发常见问题 怎么往我的世界服务器加模组 企业找网络安全的吗 数据库查询班级表中的班级数量 网络安全手抄报没名字 数据库作业第三章习题答案 服务器管理器添加服务 复翼软件开发年报 服务器内存条怎么插
0