2、DNS服务器的工作状态检查
1.使用dnstop
在维护DNS服务器时,网管员希望知道哪些用户在使用DNS服务器,同时也希望能对DNS状态做一个统计。这里我们可以使用dnstop查询DNS服务器的工作状态。
软件下载和安装:
#wegt http://www.stearns.org/dnstop/dnstop-20040309-1.i386.rpm
#rpm –ivh dnstop-20040309-1.i386.rpm
运行dnstop软件,如果想查看通过eth0的DNS网络流量可以使用命令;
#dnstop -s eth0
0 new queries, 6 total queries Mon Jul 6 09:54:35 2004
Sources count %
---------------- --------- ------
192.168.0.117 4 66.7
192.168.0.143 1 16.7
192.168.0.42 1 16.7
在运行dnstop的过程中,可以敲入如下命令: s, d, t, 1, 2, 3, ctrl+r, ctrl+x,以交互方式来显示不同的信息。
1:(TLD)记录查询的优异域名。
2:(SLD)记录查询的二级域名。
3:(SLD)记录查询的三级域名。
s:(Source)记录发送DNS查询的客户端的IP地址表。
d:(Destinations)记录DNS查询的目的服务器的IP地址表。
t:(Query Type)记录查询的详细类型。
ctrl+r:重新记录。
ctrl+x:退出。
更详细信息可以查看man dnstop。
2.nslookup
nslookup即域名服务器查找(Name Server Lookup),用来查找DNS服务器上的DNS记录。这个命令可以指定查询的类型,可以查到DNS记录的生存时间,还可以指定使用哪个DNS服务器进行解析。运行nslookup需要安装bind-untils,nslookup有两种运行模式:交互式和非交互式运行模式。交互式运行模式允许用户通过域名服务器检索各种主机,并可以打印出主机名称列表。非交互式运行模式用来打印所请求的某个主机或域的特定的信息。下面是一个发生错误的实例:
#nslookup
*** Can''t find server name for address 192.168.2.1: Timed out
*** Default servers are not available
Default Server: UnKnown
Address: 192.168.2.1
发生错误的原因:一般的错误都是因为数据库文件或配置文件笔误所致,比如,少个“.”或者文件内容不正确等;另外一个主要的原因是执行 nslookup 的系统所使用的 server(如 192.168.2.1)不能查询其反解(1.2.168.192.in-addr.arpa)。如果出现错误,该命令将不能启动。
解决方法:增加服务器IP 所在的 reverse zone (如1.2.168.192.in-addr.arpa),确定其中有 server 本身的反解功能。
如果dns没有错误nslookup会输出相关信息:
# nslookup www.it168.com
Server: 202.106.195.68
Address: 202.106.195.68#53
Non-authoritative answer:
www.it168.com canonical name = cache.it168.com.
Name: cache.it168.com
Address: 202.106.124.50
Name: cache.it168.com
Address: 202.106.124.52
包括DNS服务器ip地址和端口。
经验谈:Linux 下DNS故障排除攻略(下)
0
相关文章