本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
; A2 i' g$ @1 H+ o 命令: /Info
/ b' w: j! M4 x; @1 M; L5 o 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。2 Y6 B* E; @) V, G7 D1 R; [9 E5 d& q
用法:
/ O" u1 I+ k2 c& t. g. M* M3 V dnscmd ServerName /Info [Property]
5 n( b/ Q& V$ V a, C- C 参数:& e- ?- D6 ]) b
ServerName * @( x1 e' X5 I- G- a
服务器名称在上一篇中已经介绍过,此处省略。
, y( i) Y* U# K2 p1 s5 m; i [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
+ E' O* z- l' `7 Z3 @, G2 O 下面是该命令使用的一个比较完整的例子:
- ?8 Q+ k5 \1 a 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
/ A7 i, Z- p5 i1 o% B Hdnscmd 172.16.12.1 /info 只使用命令而不使用参数/ W/ |/ a) v$ @6 @. {+ ~
输出的信息:5 N. z( \& J# W
DNS Server 172.16.12.1 Information:
3 a9 d( E1 N4 Q8 k" e$ zC:\>dnscmd 172.16.12.1 /info! F S2 ]8 ^: J5 k
Query result: 查询结果
+ V% d( @+ [% P+ |2 Z- ~Server info: 服务器信息
9 s/ j& k6 B$ O" _% T6 @/ q- Y ptr = 00074718 端口
& `/ C4 `4 p$ h6 {' G server name = myserver.microsoft.com 服务器名称
8 f( l) H& d) w" M. T2 M4 K9 l. c version = C2000005 版本) n/ [1 A9 G' }6 {- _$ z+ {4 p
DS container = c DS“容器”
/ h. ]/ V( H+ P# o1 v( s7 {2 o Configuration: 配置信息 这些信息的含义请参考有关资料
% ]2 N. J ~5 F+ f: p H+ M3 C dwLogLevel = 000000004 p6 F$ P' ]3 [+ |" G7 Q& s
dwDebugLevel = 00000000
; S, a& n) v% v9 C' M dwRpcProtocol = FFFFFFFF
4 n6 b/ R$ C) j7 R* b dwNameCheckFlag = 00000002* M% O! e! e8 l1 b o
cAddressAnswerLimit = 08 A, Z5 Q0 w& q* E
dwRecursionRetry = 3
% t" G! D& o; I8 l6 H dwRecursionTimeout = 15
* \; j% d1 _7 v9 g7 k dwDsPollingInterval = 300( X/ H! u5 ~4 l& m* n
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料7 z* G% A- w1 H; f; u) }& P# L; D
fBootMethod = 3 ! r( C" `8 X# \& U; A) X& c* M
fAdminConfigured = 1 ' [* q( K2 o! N D
fAllowUpdate = 1 6 i0 | p2 n) o& p- v5 F r
fDsAvailable = 1
- [; p8 [' o9 F! B* a* t) `- i8 sfAutoReverseZones = 1 + F7 w2 H/ h/ k, g, Q z7 D3 e7 h) }
fAutoCacheUpdate = 0
o* G% V0 j7 [ a/ `& v GfSlave = 0 , R& }, I8 U L0 H5 t, ]8 H
fNoRecursion = 0 & \+ `; [$ }1 w+ x2 L4 e+ F
fRoundRobin = 1 . F) z; `5 j1 P! h1 [ C
fLocalNetPriority = 1
! i. Q6 ^1 s+ i; _' G5 afStrictFileParsing = 0
3 }# N/ E) w; V4 O# r0 PfLooseWildcarding = 0
[! O! E9 |1 a4 C6 p) @fBindSecondaries = 1 & f0 M( C& g/ q
fWriteAuthorityNs = 0
! }, j- W: G& wAging Configuration: - Q. y% U. |7 ?' a
ScavengingInterval = 0 " E3 F+ X9 B5 F/ V, ^# q
DefaultAgingState = 0 , a5 U4 D( i6 s1 q0 c
DefaultRefreshInterval = 168 " ?) n }( d5 _' q: E2 \% J$ r" B
DefaultNoRefreshInterval = 168 / T! C! B5 w4 K- C9 ^
ServerAddresses: $ J! X. F o3 t/ O& g. s p/ }$ j. @* P
Addr Count = 1, k4 t+ g" \) F! e) j
Addr[0] => 172.16.12.1
, D8 T$ O3 \8 {0 [ ListenAddresses:+ t3 m) \: z8 j5 r) t! F" q
NULL IP Array.
t6 ~! \" C6 t! V; _ Forwarders:
" ~8 B: H/ j4 B Addr Count = 1+ ]; D; @4 J! Q$ H7 b) v" T
Addr[0] => 172.16.4.3
2 s+ F! e9 k1 q' E! U$ Q1 ]' W forward timeout = 5
6 V0 t$ a& B3 |: f$ L3 ]( B slave = 01 Z/ E0 [) X, B, L0 X; e% k7 l
Command completed successfully.命令顺利执行完毕 ' ]! k. G/ ^7 U& u0 z7 a
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
0 E! g7 G4 M1 @/ A" p9 \ 命令:/Config
8 j; ^; {" [: C( U 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
! _ j* u2 d% X# j) G# z/ X+ Q _: O9 B4 }& n$ W) s; z
用法:1 Y4 B% y9 _! C% c* j
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
0 A: D8 W# ~% Z4 [ 参数
) M" g2 |# V5 A* \+ w9 p r/ J' N ServerName :服务器名称,意义同上
( R0 B" k$ L; s& O; d4 f& t ZoneName:
+ L5 X! ^/ B" k 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
9 ^# {; M' D5 i" ~% d Property:
; U) i4 r9 z' D9 } 这个参数是属性。这里所说的属性有:
) ` S- t3 B0 c4 A9 n3 n6 O: } 与服务器有关的属性:例如:: D6 X9 E0 z9 L# ]
/EnableRegistryBoot
) J3 f' T2 X/ i+ ?2 t; F2 |/RpcProtocol
% g4 B$ p2 T; h, Z0 L5 A* h! w/LogLevel
% ]! o3 ?2 l0 G+ u" S3 e. K3 ]/EventlogLevel 等等 (限于篇幅未能全部列出)
) T( p5 m, i4 Q9 B/ j与Zone 有关的属性,例如: U' ?+ R( j* Q5 P. S' q* U
/SecureSecondaries
7 L3 K' O/ j( N5 u" l- C5 p /AllowUpdate
7 L0 G9 X1 ^1 |* ?4 W- J6 k. j /Aging
0 R" g! e3 s% t; \$ _ /RefreshInterval Value
^$ U# s+ k4 o$ H. f1 K. I /NoRefreshInterval Value$ v0 W9 f5 t/ _/ G" X1 I. S* h. y0 m
属性值:
/ ~/ b& L1 d; O: g* B8 O 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
0 m1 l5 n! W I( h6 c从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。0 Y1 o# D. F$ h6 e& O
命令: /Statistics9 c3 e( ~* k1 |
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
0 B6 R4 P! h5 O% }* B 用法:
6 b$ i8 `" S* `$ j( v: e2 R dnscmd ServerName /Statistics [Filter|/Clear]
Y8 y$ Y% _8 z% X- L9 A 参数:- g5 Z* r; B) z% U5 }) a% y8 r
ServerName Q/ \& }: E8 i1 `, K- C9 F
服务器名称,含义同上。" y. b7 J, ` S1 i* c
可选参数介绍:
* `& z p3 H A+ Z# \共有两个参数,每次只能使用其中的一个。8 x4 T- B3 V# j+ h( C% s) ?
1.过滤(Filter)
1 S5 T( f$ Y' ^ n' J 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
. e; ?' |! z" B* v4 O可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
! W" S, I/ V6 ?' K1 x 00000001 -- Time
( [. M- ^; A* e6 v# l, L 00000002 -- Query& p6 D' J3 ^! u, P+ N' z
00000004 -- Query2$ n3 z1 s' P. V: S" ?
00000008 -- Recurse- [( [+ S' V7 X
00000010 -- Master
6 m% }" @% g) n k 00000020 -- Secondary! ~# q! t9 z4 z/ `/ n
00000040 -- Wins% f _! c+ I: d2 M& O
00000100 -- Update. y' z8 x* r, t7 v
00000200 -- SkwanSec
1 D2 U/ n' D" X) @ 00000400 -- Ds
* I4 t) c: @0 T! y& t 00010000 -- Memory3 ] j/ n# m3 H) O; {/ _/ Z* P
00100000 -- PacketMem
+ |8 U. r2 S1 V% I6 }1 m+ Y V 00040000 -- Dbase) Q+ M) S4 P5 w1 m; M% X
00080000 -- Records
! {# U- d% j8 C' R, y" r 00200000 -- NbstatMem4 l8 P1 a1 l" Z4 y. v K
2.清除 /Clear 7 {" e6 c. Z! d' ]5 i/ n& k
这个参数用来清除统计信息。5 ~9 P- \+ {9 q' f* f) s
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
+ M- o3 i) \- C6 t) Q! R# S! a8 M( k& A: ~( i h6 S) f N
2 A c- \" C$ R. c0 L
) A" X0 E2 Y) l! k
|