本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
0 l, J C4 [% e `4 r 命令: /Info 8 b! T) W$ \; Y! K$ m0 o0 P
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
8 }; ?9 T4 V; O7 ~4 j 用法:. l0 N* w/ ?% b$ h, n6 M
dnscmd ServerName /Info [Property]
# p9 V8 O6 f2 Z4 L8 }) l; ^! Z 参数:
7 g1 h' M% A+ ~6 Z ServerName 4 y$ ?- I8 Z9 `( ^
服务器名称在上一篇中已经介绍过,此处省略。
2 B; d0 d3 k! m" b) y+ n [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
$ x2 ]7 M: B. C8 W! J 下面是该命令使用的一个比较完整的例子:
: S& T7 n/ l( S: T7 p9 g. f 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
/ M% L) T, K9 T( @7 @dnscmd 172.16.12.1 /info 只使用命令而不使用参数
# ?0 c+ x# s u8 y, S! D' r输出的信息:) D0 u# e* m9 Z5 G" A7 _$ S
DNS Server 172.16.12.1 Information:( n( F- Z7 i4 v: D! J8 ~
C:\>dnscmd 172.16.12.1 /info( w7 M2 \, I7 a* I! `5 y, j" `
Query result: 查询结果" `* [& o4 P1 x+ G
Server info: 服务器信息
' l! [5 v% K) o ptr = 00074718 端口0 M1 N) }! T" K: y+ b
server name = myserver.microsoft.com 服务器名称$ o/ ~0 G$ w" B+ S) F( C7 w# e
version = C2000005 版本3 |- Y* z* N% J
DS container = c DS“容器”, z) H+ l/ x) j2 L
Configuration: 配置信息 这些信息的含义请参考有关资料+ u, y+ L; q( J, A! x2 f. D* A
dwLogLevel = 00000000- H6 N( u* \( N" g) h* S0 }
dwDebugLevel = 00000000
$ l" s9 r# \; l" e" ?/ C/ d dwRpcProtocol = FFFFFFFF, E ^! r# w: T) r
dwNameCheckFlag = 00000002
( t t- @2 E/ e/ k4 V. l5 c# ^ cAddressAnswerLimit = 0
1 o. k0 `# ~7 p* R3 v7 t dwRecursionRetry = 3
! |$ n' I% {9 F" ?1 U dwRecursionTimeout = 152 |. v G& S- e# _& N, a0 w: ~
dwDsPollingInterval = 300
& Z! U, ^9 o5 H0 t! Y Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
2 B; L3 s5 H. m' hfBootMethod = 3
8 ]% h, K% y( V* I O! j$ efAdminConfigured = 1
7 F7 c k( d6 ffAllowUpdate = 1
% G4 |1 c( S/ sfDsAvailable = 1 # m% V6 a3 B- R4 w" J
fAutoReverseZones = 1
: N% O/ c" q4 QfAutoCacheUpdate = 0
5 V$ S/ b+ i6 q$ r3 AfSlave = 0 $ d; T$ v! [3 y) @$ p, @
fNoRecursion = 0 # ] a, @+ D* a
fRoundRobin = 1 ) o, w$ F. I7 F* [
fLocalNetPriority = 1
& }* t0 j% Y+ @# o9 w3 BfStrictFileParsing = 0
9 f, B. x9 n% vfLooseWildcarding = 0 $ u' `$ y9 s. D2 O0 H4 I o2 k. _
fBindSecondaries = 1
; ]4 S) u0 h# u+ J+ b' `5 Q8 GfWriteAuthorityNs = 0
I; f9 H$ w0 {: K4 QAging Configuration:
1 D# m& [8 H8 s8 ~3 aScavengingInterval = 0
1 M7 ~) v9 F. U" G9 bDefaultAgingState = 0
! Z) w. c- W. k6 u% k v; z' nDefaultRefreshInterval = 168
% K) C- N, [7 ?' H$ ^1 @DefaultNoRefreshInterval = 168
$ R$ N2 U: q8 G1 C4 _" p9 ?6 T ServerAddresses: 2 L' L& ~) m4 v' s. J1 l
Addr Count = 1' p7 E8 w" f5 J8 Z5 u8 C# m/ D% B
Addr[0] => 172.16.12.1
7 A, x- G) o4 w1 Z ListenAddresses:. ?5 F! L5 s2 t+ H
NULL IP Array.0 b) ?( W$ w m. E: A& D; o% A$ y0 P- Q: i
Forwarders:% m+ H% z/ X+ e( ]/ A& M2 ?
Addr Count = 1
9 C' A) k' A8 I9 x7 J Addr[0] => 172.16.4.3' I7 Z% M2 M$ J0 I- g f( t: t
forward timeout = 5* w2 Z, |9 P& q& V
slave = 0
8 S# A0 `2 @3 m. [( bCommand completed successfully.命令顺利执行完毕
$ q3 e; _9 D' k n# E7 Q* t4 ?9 H 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
3 Z# g3 m; \# i 命令:/Config
; N. ^' c3 X. h- \6 s) h6 R1 q 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
5 U7 {/ Q5 U: Q& ]3 A( z6 y ^4 z& ]0 I7 w
用法:
) p" U4 f9 ~! U7 {( c dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
! w4 y! |, j' ] 参数0 s7 `# D5 \! v! g0 N7 b
ServerName :服务器名称,意义同上
: [( R2 ]+ _; i* U6 B$ R5 I& q; w& a ZoneName:2 W$ ?; S: N$ R' f2 q, T) r6 F {
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
3 `9 @4 t4 L( b% h4 M5 O4 q Property:
/ z# T( [" R( W4 @$ M 这个参数是属性。这里所说的属性有:& y! o3 n' h# p6 ^: I7 \
与服务器有关的属性:例如:/ ]0 y7 U4 @- \2 d1 q3 Q' C
/EnableRegistryBoot
6 u7 k& W! n3 o* W, S/RpcProtocol0 e9 S! U: Y& P2 s
/LogLevel1 F# Q" U1 v0 {+ ]+ W
/EventlogLevel 等等 (限于篇幅未能全部列出)
9 l7 p3 g' g0 D; e+ z9 ^2 R与Zone 有关的属性,例如:
! M- e0 q8 j6 Q- h, \4 E- T I /SecureSecondaries0 V% f7 _% O# S8 o( \6 N
/AllowUpdate
7 c" k7 y4 H9 `1 @+ Q" D& O3 o. M0 s, U /Aging; R2 e2 W5 n+ w$ T; s0 d
/RefreshInterval Value
0 Z V6 |. J' ^' p0 x* F( I /NoRefreshInterval Value
; u: Y$ J0 x4 C F. D1 b& f 属性值:
, ]! {! L# Q' c" q! Z# o0 L 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
2 J, T' U. i/ [1 X8 z; k, m8 a2 i从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。 o% N7 Y# o! X
命令: /Statistics
: v- F$ Y& g+ ]* d: Y 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
3 v% G/ c8 j' ]. b5 L) n/ Y$ `/ d 用法:
0 O9 M& W* H$ o6 `& c( l dnscmd ServerName /Statistics [Filter|/Clear]
% v" w4 h5 L9 C6 R+ ? 参数:
5 I9 I0 a& x. v6 A# D0 `ServerName ; d% w+ P* o: i/ G
服务器名称,含义同上。2 C* ?7 l$ r# }8 W
可选参数介绍:
) m! C% E( D% @ c8 P; S共有两个参数,每次只能使用其中的一个。. v+ t% f. f0 H( K: R9 e; B
1.过滤(Filter)" D/ P7 g0 ]1 `, [( s$ t
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
5 F: K; C: h9 {' S5 ?) H6 q+ u+ R: x可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: : D; {: @( \7 T, y" X, s! `0 u2 `
00000001 -- Time
& a6 z& f$ e# j% V) a 00000002 -- Query& x7 w5 t2 Y \* u0 H. X" F! y
00000004 -- Query2( m) m, g0 ]1 O4 f$ T7 h+ P
00000008 -- Recurse8 I2 R8 X% W* \! W
00000010 -- Master
/ t3 q! P: [& {& H+ t6 E% W; ] 00000020 -- Secondary5 j+ ^3 _5 B' }) d
00000040 -- Wins
+ k' A) V, ?. Z 00000100 -- Update8 a7 s3 @/ |! c# K* ~1 K5 o
00000200 -- SkwanSec
: w" d' d9 b, g. P 00000400 -- Ds6 K" j$ p" ]0 v8 [; K3 G) L) d
00010000 -- Memory
k' w! y4 G2 _3 a( o r# X3 K 00100000 -- PacketMem9 o4 x# {$ U. {* L
00040000 -- Dbase
0 I% w) E0 M, X 00080000 -- Records; M! o, Q: b. }: U2 R& {
00200000 -- NbstatMem
4 T' O0 S- n" f/ @7 ~7 v0 @ 2.清除 /Clear 8 n7 a3 K) x& t! ?! e, o9 u* e9 U
这个参数用来清除统计信息。9 W3 M# Z& F1 R5 s% Q% _8 H9 v
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
$ Q8 O7 F8 F& t# ?+ P7 r
) O, U+ @9 }1 h) K ) M) j; V8 K, B
4 X( z' m. E/ y) i! b |