在Linux环境下,也提供了广泛流行的BIND服务器,它是构建DNS服务器最常用的服务器软件。介绍BIND的安装的文章现在很多,现在我们就一起来谈一下维护的话题。我们如何才能够了解DNS服务器的运行情况下呢,它忙不忙、负载大不大?这一切,对于系统管理员而言,是比较重要的。
字串1
想了解DNS服务器的运行状况,可以通过查看DNS服务器在运行时所产生的日志文件来实现。
BIND 8提供了一些控制日志系统的手段,不过呢,缺省状态所生成的日志已经够用了,通过这些日志信息,足以了解DNS服务器现在的运行状况了。 字串9
在缺省情况下,BIND是通过syslog来生成日志的,存放在/var/log/message文件中。注:与之相关的还有以下四个文件: 字串9
/var/log/message.1 内容来自中国站长资讯网(www.chinahtml.com)
/var/log/message.2
字串3
/var/log/message.3 字串1
/var/log/message.4
字串3
其实是将日志分为了5个文件来存储,防止文件过大,当message文件够大后,就变成了message.1,原来的message.1就成了message.2……,message.4的内容就消失了。 字串5
由于这个文件中的日志信息是syslog生成的,所以不并是全都是关于BIND的日志信息。我们执行以下命令,将所有BIND的日志信息挑选出来:
字串8
more /var/log/message|grep named >/tmp/named.log
字串9
注:BIND服务器的进程名是named。 字串2
这样,/var/log/message中与BIND相关的日志信息都会写入/tmp/named.log文件中了。最主要的日志有两种:LOG_NOTICE,LOG_INFO级的日志。
一、 LOG_NOTICE级日志 字串5
1.每次启动BIND服务器named时,会生成一个如下所示的LOG_NOTICE级日志信息: 字串1
Nov 28 10:37:45 www named[10134]: starting. named 8.2.2-P3
其中:
字串6
Nov 28 10:37:45 表示服务器启动时间
字串6
www 显示DNS服务器所在机器名
字串6
named[10134]: 显示DNS服务器进程名与进程ID
字串2
starting. 表示正在启动DNS服务器 字串9
named 8.2.2-p3 显示BIND软件版本
2.当给DNS服务器发送一个HUP信号,使DNS服务器重启时,会生成一个如下所示的LOG_NOTICE级日志信息: 字串7
Nov 28 10:37:45 www named[10134]: reloading nameserver 字串1
其中: 字串6
Nov 28 10:37:45 表示服务器重启动时间 内容来自中国站长资讯网(www.chinahtml.com)
字串3
www 显示DNS服务器所在机器名
named[10134]: 显示DNS服务器进程名与进程ID 字串8
reloading. 表示正在重新启动DNS服务器 字串1
nameserver 显示正在重启的服务器名 字串8
二、LOG_INFO级日志
字串8
在DNS服务器运行时,每隔一小时会生成一组如下所示的LOG_INFO级日志信息,反馈DNS服务器的运行状态: 字串9
Dec 26 10:23:52 www named[1033]: Cleaned cache of 26 RRset 字串1
Dec 26 10:23:52 www named[1033]: USAGE 977797432 976760631 CPU=6.55u/6.24s CHILD CPU=0u/0s
字串9
Dec 26 10:23:52 www named[1033]: NSTATS 977797432 976760631 0=2 A=13192
CNAME=321 PTR=11204 MX=1173 TXT=4 AAAA=32 ANY=4956 字串3
Dec 26 10:23:52 www named[1033]: XSTATS 977797432 976760631 RR=7629 RNXD=1368 字串5
RFwdR=4836 RDupR=51 RFail=159 RFErr=0 RErr=12 RAXFR=0 RLame=175 ROpts=0
SSysQ=2082 SAns=26234 SFwdQ=4520 SDupQ=1263 SErr=0 RQ=30889 RIQ=4 RFwdQ=0
字串6
RDupQ=259 RTCP=2 SFwdR=4836 SFail=6 SFErr=0 SNaAns=21753 SNXD=10276
下面我们就逐句解读一下:
字串2
1. Dec 26 10:23:52 www named[1033]: Cleaned cache of 26 RRset 字串9
这是每一组日志信息的第一行,表示正在清空Cache。
字串5
其中: 字串7
Dec 26 10:23:52 表示日志生成时间
www 显示DNS服务器所在机器名
字串8
named[1033]: 显示DNS服务器进程名与进程ID
字串1
Cleaned cache of 26 RRset 表示正在清除cache
字串5
2. Dec 26 10:23:52 www named[1033]: USAGE 977797432 976760631 CPU=6.55u
字串2
/6.24s CHILD CPU=0u/0s 字串2
这一行是USAGE行,用于统计DNS服务器占用的CPU时间。
其中:
字串9
Dec 26 10:23:52 表示日志生成时间 字串3
www 显示DNS服务器所在机器名 字串6
named[1033]: 显示DNS服务器进程名与进程ID
USAGE 行标记 中国站长资讯网
字串2
977797432 976760631 977797432-976760631的值就是DNS服务器运行的总秒数
CPU=6.55u/6.24s 代表DNS服务器使用了用户态6.55秒,系统态6.24秒(u代表user,
字串2
s代表system),
字串2
CHILD CPU 代表DNS服务器子进程的CPU占用情况。
字串8
3. Dec 26 10:23:52 www named[1033]: NSTATS 977797432 976760631 0=2 A=13192 字串2
CNAME=321 PTR=11204 MX=1173 TXT=4 AAAA=32 ANY=4956 字串3
这一行是NSTATS行,用于统计接收到的查询总数 字串6
其中: 字串3
Dec 26 10:23:52 表示日志生成时间 字串5
www 显示DNS服务器所在机器名
字串7
named[1033]: 显示DNS服务器进程名与进程ID
字串8
NSTATS 行标记
字串6
977797432 976760631 977797432-976760631的值就是DNS服务器运行的总秒数
字串1
0=2 代表未知类型的DNS查询2个 内容来自中国站长资讯网(www.chinahtml.com) 字串2
A=13192 代表A类地址查询13192个(最标准) 字串3
CNAME=321 代表CNAME类地址查询321个(一般是有些版本的sendmail使用CNAME程序 字串5
规范化邮件地址而发出的,还有就是dig或nslookup发出的)
PTR=11204 代表指针查询11204个(许多软件通过这种方法来查找IP地址) 字串5
MX=1173 代表邮件交换器的查询1173个(是由邮件发送程序发起的)
字串6
TXT=4 代表应用程序进行的文本查询共有4个 字串7
AAAA=32 代表AAAA类查询32个 字串7
ANY=4956 有些Sendmail使用的地址查询方式,共4956个