《Linux下DNS故障排除攻略》由会员分享,可在线阅读,更多相关《Linux下DNS故障排除攻略(19页珍藏版)》请在金锄头文库上搜索。
1、网站首页 | 业界社区 | 技术社区 | 极客社区 | 游戏社区 | 科技博客 | IT 大百科 | 同事录注册 登录 | 搜索 | 帮助 TechWeb-技术社区 硬件选配 经验谈:Linux 下 DNS 故障排除攻略12 下一页返回列表 上一主题 | 下一主题 眼镜兄 TW 版主帖子696 精华1 积分914 最后登录2008-1-28 1# 打印 字体大小: tT 发表于 2007-6-5 14:07 | 只看该作者 转贴 经验谈:Linux 下 DNS故障排除攻略【IT168 专稿】DNS 是网络服务的基础,要长期不断地保持其正常运作,每一个 DNS 服务器都应该定期检测。域名系统的配
2、置和管理是一项比较复杂和繁琐的系统管理任务,它对整个网络的运行影响极大。为了保证 DNS 服务器的正常运行,不仅要使用可靠的服务器软件版本,而且要对 DNS 服务器进行合理配置,同时还要跟踪服务器软件和操作系统的各种漏洞。一、保持 DNS 服务器配置正确/ ?2 w5 C: O C g- U) g% C3 ?) o9 o9 F; BLinux 上的域名服务由 named 守护进程控制,该进程从主文件/etc/named.conf 中获取信息,包括一组将主机名称映射为 IP 地址的文件。Linux 下 DNS 主要配置文件如表-1 所示,named 配置文件族如表-2 所示,named.conf
3、 文件的配置 8 b j% t+ N6 x* 1 A$ g+ X+ c) Z F如表-3 所示。+ k3 e7 t1 W. C4 % R表-1 DNS 主要配置文件! R, e8 K5 T7 S; 1 P& I表-2 named 配置文件族* a2 b, q6 H9 H( F6 a3 F. X% Q! w$ M( r X# z; k/ g表-3 named.conf 文件的配置 9 w3 o% , ?2 $ C6 r! L8 z2 ?- ?. b9 Y# _2 S/ J) A7 % 6 9 Q; V n. a3 p. c0 X$ 3 w; b0 B0 . V$ m1 w7 a可以看到 DNS
4、配置文件是一个复杂的系统。伴随 DNS 建立出现的许多问题都会引起相同的结果。但大多数问题是由于配置文件中的语法错误而导致的。收藏 分享 评分 回复 引用 订阅 TOP 眼镜兄 TW 版主帖子696 精华1 积分914 最后登录2008-1-28 2# 发表于 2007-6-5 14:07 | 只看该作者 二、了解 DNS 服务器 Bind 9 目录结构了解 bind 9 目录结构如图 1 。2 B! U$ q5 h9 3 N; R: S 图 1 说明:如果 BIND 9 运行的 chroot(牢监)模式下,所有配置在目录/var/named/chroot/内,如果 BIND 9 运行的非ch
5、root(正常)模式下,所有配置在目录/var/named 内。回复 引用 TOP 眼镜兄 TW 版主帖子696 精华1 积分3# 发表于 2007-6-5 14:08 | 只看该作者 三、掌握 Linux 下 DNS 客户端配置方法BIND 软件是一个客户端/服务器系统,客户端程序称为转换程序(resolver),它负责产生域名信息查询,将这类信息发送到服务器。服务器的 named 守护进程负责回答转换程序的查询。作为客户端,首先要在用户的计算机上配置客户端程序(转换程序),即向 DNS 服务器获得域名解析/反解析服 务。域名服务器客户端包括几个文件。域名服务器客户端包括三个文件。1./et
6、c/hosts! N( k& 7 N+ w3 N914 最后登录2008-1-28 /etc/hosts 是主机的一个列表文件 包含(本地网络中)已知主机的一个列表。如果系统的 IP 不是动态生成,就可以使用它。对于简单的主机名解析(点分表示法),在请求 DNS 或 NIS 网络域名服务器之前,/etc/host.conf 通常会告诉解析程序先查看此文件。2./etc/host.conf文件/etc/host.conf 是用来控制本地转化程序设置的文件,该文件告诉转换程序实用哪些服务已经依照什么顺序进行查询。该文件的子段可以实用空格和制表符合分隔。/etc/host.conf文件配置选项见表
7、4.9 R2 C/ z2 |! Q: V一个典型的/etc/host.conf 文件:- I% Z5 Z5 S qorder bind hosts multi on; B D. h/ 5 2 L& Y2 dnospoof on$ 3 q, , |9 H7 4 |trim . A: F+ F8 y/ Z# T; jalert on6 X/ z) U3 6 f& d9 x7 g0 G7 r 上面文件中该解析程序首先使用 DNS 然后使用/etc/hosts文件查找主机名。如果由于某种原因不能使用域名服务器了,我们还可以使用主机文件中列 出的那些主机名。该机器上允许使用多个 IP 地址,主机通过重
8、新解析主机名字(从 IP 地址逆向查找返回的主机名字)来检查 IP 欺骗。- ?) T _$ t i5 / e) W! % , S J: F& 3 K9 M Z, x1 z2 s R% * s3./etc/resolv.conf* p0 * O 8 T& R) /etc/resolv.conf 是转化程序配置文件,当配置转换程序使用 BIND 域名服务查询主机时,我们必须告诉转换程序使用哪一个域名服务器。用来 完成这项任务的工具就是/etc/resolv.conf 文件。/etc/resolv.conf 文件配置选项见表 5 。# f; s+ l$ S U6 M( D9 M; k9 N一个典型
9、的/etc/resolv.conf 文件:5 A$ - O/ w1 l x, F# B0 G# t) 7 A3 x; i0 3 s, domain nameserver 192.168.1.1serach 回复 引用 TOP 眼镜兄 TW 版主帖子696 精华4# 发表于 2007-6-5 14:08 | 只看该作者 四、熟悉 DNS 资源纪录格式 6 F; V, i, E I7 |% $ s6 vDNS 域名数据库由资源记录(RR,resource records)组成和区文件指令组成。每个资源纪录都是一个类别的组成。每个 DNS 域名数据库由 SOA RR 开始,同时包括 NS RR。对于
10、正向解析文件包括 A RR、MX RR、CNAME RR 等。反向解析文件包括 PTR RR 。RR 文件基本格式:name ttl IN type rdata. o0 b; I/ j7 E6 Z0 z2 |各个字段由空格和制表符隔开。各个字段含义如下:name 字段:& H 5 , B _) A; k. r. :根域(Root Domain),以圆点“.”表示。根域只有一1 积分914 最后登录2008-1-28 个,它没有上级域。在互联网上,根域一般不需要表示出来。 :默认域,文件使用$ORIGIN domain 来说明默认域。; E+ T7 X+ x O7 U; ) : m标准域名:以“
11、.”结束的域名,或是一个相对域名。; T- Y$ C/ M, v b8 & M空 :纪录最后一个带有名字的域对象。ttl: ttl 全称 Time To Live。以秒为单位记录该资源记录中谢谢存放在高速缓存这的时间长度。通常此处设定值为空,表示采用 SOA 中最小 ttl 值。IN: 将该纪录标识为一个 Internet DNS 资源纪录。1 d5 Z& c2 _) 7 Ntype 字段:A 记录:A (Address) 记录是用来指定主机名(或域名)对应的 IP 地址记录。用户可以将该域名下的网站服务器指向到自己的 web server 上。同时也可以设置您域名的二级域名。MX(Mail
12、eXchanger)记录:邮件交换记录,用户可以将该域名下的邮件服务器指向到自己的邮件服务器上,然后即可自行操控所有的邮箱设置。您只需在线填写您服务器的 IP 地址,即可将您域名下的邮件全部转到您自己设定相应的邮件服务器上。% V( C! * K! b b% q. r CNAME(Canonical NAME)记录:别名记录。这种记录允许您将多个名字映射到同一台计算机。通常用于同时提供 Web 和邮件服务的计算机。例如,有一台计算机名为 “”(A 记录)。 它同时提供 Web 和邮件服务,为了便于用户访问服务。可以为该计算机设置两个别名(CNAME):WWW 和 MAIL。 这两个别名的全称就
13、是 和“”。实际上他们都指向“”。% L5 $ c6 f: _# s3 w2 b+ sSOA(Start Of Authority)记录 : SOA 纪录一个授权区的开始,SOA 纪录后的所有信息是) j, ( j8 I6 0 r. 9 P# H控制这个域的。每个配置文件都必须包含一个 SOA 纪录,以标示服务器所管理的起始地方。& _% B: M6 n+ m4 V/ y& b7 N配置文件的第一个纪录必须是 SOA 纪录。/ u$ M0 X6 l. i6 I* D! JPTR(domian name PoinTeR)记录:用于地址到主机名的映射。HINFO(Host INFOrmation)
14、记录:该记录由一组描述主机的信息稳步文件组成。通常包括硬件名称和操作系统名称。rdata 字段:A :存放 IP 地址。3 / F2 v4 Z# o% I4 % B9 K! ) JCNAME: 设定主机别名。- b. l8 Y- u% % i& p/ GHINFO: 通常分为两行,分别对应。Hardware :“计算机硬件名称”。Os-type:操作系统名。MX :通常分为两行,分别对应。Preference-value:优先级别数字(数字越小优先级别越高)。Mail eXchanger:邮件服务器名称。NS :域名服务器名称。PTR :主机真实名称。Hostname :存放本纪录的主机名称。
15、 K+ E E, K4 ? S- M$ h9 BContact:管理域的管理员邮件地址,因为 符号在文件中表示默认域,所以邮件地址以.代替,如 改为: 。Serial : 本区信息文件的版本号,文件每次修改后要将其数值增加 1。 q! h4 ! , d, $ DRefresh:辅助域名服务器多长时间更新一次数据库记录,以秒为单位。Retry:辅助域名服务器更新数据库失败后,多长时间再试,以秒为单位。! g5 a7 C* i7 - t! Q: bExpire:如果辅助域名服务器无法从主服务器上更新数据,原有数据何时失效,以秒为单位。+ p$ 6 i/ g6 x6 e% n5 t+ 6 qMinimun:如果资源记录中没有设定 ttl,以此处设定的时间为准。回复 引用 TOP 眼镜兄 TW 版主帖子696 精华1 积分914 最后登录2008-1-28 5# 发表于 2007-6-5 14:10 | 只看该作者 五、学会使用测试 DNS 服务器方法1. 使用 host 命令1 g/ S F9 _) % d( H$ i7 C#host linux.ca