本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
& r, R9 i7 o8 x% X3 ?% r; T: ^3 F 命令: /Info
! m% `: S" I* a% q+ g4 @/ t 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
3 a( h/ ~0 X, w+ V' [: o1 ^' @ 用法:! M# f4 { R M4 V! t; A) b/ t' ?
dnscmd ServerName /Info [Property]
# e! F& {5 S' l1 L 参数:
) T9 t9 w& q8 Q, A! c( F% s2 p ServerName
. C( i: M& @% g+ e9 X 服务器名称在上一篇中已经介绍过,此处省略。 + B. H; @# q1 x8 n0 m3 ^
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
+ @% x8 t* i l; R) w( e: r. { 下面是该命令使用的一个比较完整的例子:2 E: Q7 T- W; B" C/ [, `
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:4 z0 \% i8 s+ A# E
dnscmd 172.16.12.1 /info 只使用命令而不使用参数% M: [ u- t& m8 \8 u( @
输出的信息:! f2 p& a# L2 |8 l6 O
DNS Server 172.16.12.1 Information:
/ p/ c% d$ W. V& f! T* e' }! X! t. WC:\>dnscmd 172.16.12.1 /info8 M- R7 f' M2 n- h
Query result: 查询结果8 J+ i; \2 F. \% e& i
Server info: 服务器信息
! a& N# z% Y* a8 f5 k ptr = 00074718 端口1 p; v3 r/ Z" Q9 i# |- ?- L. i P
server name = myserver.microsoft.com 服务器名称
! t. y6 [1 e& c4 [0 P) X- n version = C2000005 版本) A/ L) X; j) [9 x5 ]1 g
DS container = c DS“容器”
9 {& m% }, s4 {3 ^' z- o: R Configuration: 配置信息 这些信息的含义请参考有关资料+ Q% h4 V6 ~) _- b( T" L# Y
dwLogLevel = 00000000/ j1 G6 f: g- z6 Z% L
dwDebugLevel = 00000000' e7 k9 C3 j1 U
dwRpcProtocol = FFFFFFFF) ]" L z. n4 M' R$ Y" J' H
dwNameCheckFlag = 00000002
# g$ n, m, G0 h! F/ ` Y! w% A cAddressAnswerLimit = 0) @; A5 o; f3 y) o3 i! \; q
dwRecursionRetry = 3/ D: E6 b( ?+ _2 N5 u: d% ~
dwRecursionTimeout = 15
2 y7 [2 z5 R! B* n# _1 s dwDsPollingInterval = 300
: n3 h6 |2 z9 m: @( w2 e Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
% K% d9 d1 u* }% B. DfBootMethod = 3
3 G1 M( z9 V1 r( u& P; [7 |fAdminConfigured = 1 5 V. h: T! i- n
fAllowUpdate = 1
! C6 J' P; t3 \" Q' g# afDsAvailable = 1
1 @8 Z2 t6 o2 | ^* hfAutoReverseZones = 1
# I p$ c3 K7 @fAutoCacheUpdate = 0
! n1 U+ ?2 c& O! N; XfSlave = 0 7 F$ Q8 {1 B" }$ ~
fNoRecursion = 0
8 W7 ?, E2 {* Z$ J6 yfRoundRobin = 1
6 J, Z' k4 ]& E6 C6 RfLocalNetPriority = 1 % C3 C& q# A* p/ J& m0 x& P: ^5 E
fStrictFileParsing = 0 ) y' w( M) k' u% h h, w
fLooseWildcarding = 0
. y: ~3 T) t2 k/ Y, {+ [* tfBindSecondaries = 1 0 m1 f6 s: P8 r# n% W u+ |
fWriteAuthorityNs = 0 + |5 \) U4 X4 j$ T; Y+ z. A' d/ t
Aging Configuration:
$ ^/ V* K4 ?$ P& x' dScavengingInterval = 0
f9 ~- s, ?1 }$ R7 I7 ^( xDefaultAgingState = 0 # f. [% E7 ]% q
DefaultRefreshInterval = 168 ' ?8 K5 Y" `- P0 m
DefaultNoRefreshInterval = 168
; j! ]: _# j3 w, u ServerAddresses:
1 x/ \3 ? a1 [7 ^ i! F; Z Addr Count = 1
, j5 _1 [$ F4 W% P& ~1 y Addr[0] => 172.16.12.16 n q! H. Z- s5 t7 s9 K7 x: V# `% Z
ListenAddresses:
' ]6 V* u) E3 q) d) F5 u4 b6 j NULL IP Array." e) I- q5 a5 k) y
Forwarders:( k& C" N5 {+ S% c* x9 ]2 o
Addr Count = 1
% H0 Z/ t$ Q" H% C' P Addr[0] => 172.16.4.33 I& Y5 E) m# a! ~' k3 Y
forward timeout = 51 X: w' \8 R- m- E+ d3 M! Q" H; g
slave = 0/ p3 r% M) ~* B4 ?: G
Command completed successfully.命令顺利执行完毕 ! Q3 \% S- O* V' n3 N( B
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 : j7 E; \$ a1 ]6 j3 \) y5 W
命令:/Config6 q3 h6 Y: {5 R9 f6 L# H% g
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。" a* \ ?7 E2 N- U: f0 w
0 y# N7 [7 z+ G( B$ h
用法:
7 H6 c. }. t. {$ p8 D! F dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
2 X! P# x# I5 n$ f$ W4 O 参数% ^" G4 w8 i. M& y: `
ServerName :服务器名称,意义同上
; _( O8 D3 C! `5 X ZoneName:. f. B/ Y' ]' b8 R8 C% |; ^
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
% @6 n$ \( Y* X" R) _ Property:
. b+ C+ z+ {' E( s& P6 M' h 这个参数是属性。这里所说的属性有:
# ~) G. v2 o; B/ ?' x+ U: n 与服务器有关的属性:例如:+ k- l w [% r; l. c
/EnableRegistryBoot
& _ k3 y6 @% Q/RpcProtocol) z4 o* V( | ?* s. B
/LogLevel
3 |. Y7 y2 B! p/ q/EventlogLevel 等等 (限于篇幅未能全部列出)
; u/ Z) m; w5 I' }1 B与Zone 有关的属性,例如:
" j! }/ C) N4 B- [2 u2 Y+ ^3 R /SecureSecondaries4 ^5 C c1 n4 f/ N, n% V% \) s
/AllowUpdate
7 `% C. u$ y# r7 e# \ /Aging8 m. a$ | C+ n' |% \2 I3 a5 ?
/RefreshInterval Value
/ \1 n3 K) {! y' I6 S+ E /NoRefreshInterval Value6 D7 P+ e, U3 d+ T
属性值:
0 J) q4 u( v( n. I: o$ x6 B 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
% e$ v- J( M7 ]& s Q7 {从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
/ `, \2 o( p# O+ B: Q( d 命令: /Statistics
( ~0 W4 t$ f# u# Y 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。7 ?1 z2 ]# i5 v& V
用法:
1 h9 c/ T3 y3 o* b$ h6 ?: B" u- V dnscmd ServerName /Statistics [Filter|/Clear]
$ {( ?2 D- I" D p1 x 参数:# T1 z1 n+ g, w% m0 y
ServerName
7 L9 C: L+ m$ m+ Y5 ~$ ~服务器名称,含义同上。
, U+ i0 Q5 X9 D" u可选参数介绍:
+ r' B1 |5 u8 K3 k5 T6 J% \共有两个参数,每次只能使用其中的一个。
8 ~' T7 f& k4 d+ @- k% @+ D- q 1.过滤(Filter)- ^+ @/ s# O" e5 U5 l
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
% g- C+ ~/ C6 a4 `( z可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
1 W! j& i* x/ G- A( l0 O 00000001 -- Time
, E ] h% x2 w& J 00000002 -- Query
6 r# W3 r% Q- c! @ 00000004 -- Query2
8 O2 T6 P! Q9 Y& C* o 00000008 -- Recurse% D: ^2 Q' F- a# o1 s/ T5 O; Z
00000010 -- Master5 k* ` n" U6 l1 Y2 g( D
00000020 -- Secondary8 e& f9 F# p9 c; h1 Q+ Q; A/ D& h2 K6 s
00000040 -- Wins
; a% Y5 N5 K6 k' ?- A4 Y& v; Z( ~% o 00000100 -- Update
0 a. j. o/ n" ^/ k5 v 00000200 -- SkwanSec4 b5 s$ z) O7 s" L# J( z
00000400 -- Ds
@" U0 o0 B" o. ] 00010000 -- Memory5 a: o* k, {5 b( s, Y# {8 l
00100000 -- PacketMem
/ J- u9 |7 h; V 00040000 -- Dbase, J& X8 J& X# @2 U8 A8 g4 o @! ]
00080000 -- Records7 r. O) Z) s0 u$ l
00200000 -- NbstatMem
! R+ t) a3 C$ b n 2.清除 /Clear
) K" }8 l! ?. q3 K 这个参数用来清除统计信息。6 v4 L# X2 P8 N) I. C
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
0 ]% ^& x# p4 ^; y
6 J8 c+ q3 o" w& b9 W
0 T Y+ H# j& M4 X: t5 p7 h! o! d
|