本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
) f7 z4 @) C3 F# y* M# m" ]; u! y 命令: /Info 7 p5 ~: W% e6 [. [
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
' [3 n! Z& x- }- E8 L& @ 用法:, S2 V8 ~& P3 \0 q. N* N
dnscmd ServerName /Info [Property]
5 r/ q2 c# q) |6 v( w% @! v. L) q 参数:
3 v" i$ D, M+ {" j4 @/ X ServerName 6 \! ^- X" T$ J% {8 r
服务器名称在上一篇中已经介绍过,此处省略。
; U2 T$ U; h3 ]8 L9 A. D( N [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
$ e4 _8 B3 v$ U* r! | 下面是该命令使用的一个比较完整的例子:7 z% ^% u' x9 h
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
' b9 e! X4 B! T) l! F; Sdnscmd 172.16.12.1 /info 只使用命令而不使用参数
u1 l/ S( u% v. x( a2 [( ?/ ~输出的信息:
9 M! s% v- G7 n& P, u3 HDNS Server 172.16.12.1 Information:2 [ i' H6 d' V6 I
C:\>dnscmd 172.16.12.1 /info5 n3 w$ _) {+ O
Query result: 查询结果
4 J9 o5 `% K& I9 q& n2 z* X PServer info: 服务器信息( y% L; j% Z s: @1 c
ptr = 00074718 端口$ j- o. e9 J' A9 W% ~* s" s
server name = myserver.microsoft.com 服务器名称
, K7 K$ Q( h- W3 Z7 i) |4 C! `% u& ?5 p version = C2000005 版本5 X/ h; o' P% i' v/ `5 K
DS container = c DS“容器”( _0 i8 |! z3 Z3 U4 R+ @+ t
Configuration: 配置信息 这些信息的含义请参考有关资料) @1 X, H" I* F+ v2 A
dwLogLevel = 00000000
9 t8 I$ d- T4 g% v" q; |4 c X dwDebugLevel = 00000000. @/ o- f; E. h; }6 u3 i R
dwRpcProtocol = FFFFFFFF0 m. b4 W7 _, D) w
dwNameCheckFlag = 00000002
- j8 @; r5 Q2 ^ cAddressAnswerLimit = 0+ T! N0 T& n9 t Y
dwRecursionRetry = 3* ~# j% I8 r2 K: [( i
dwRecursionTimeout = 15+ `$ V# O" ~/ V9 [5 Q1 _
dwDsPollingInterval = 300
% Q: ^* I7 M, t o7 {: k4 ~6 d V Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料/ A/ N. f3 z( d* q5 I8 H4 R
fBootMethod = 3 , c) C0 P; ?5 G" C
fAdminConfigured = 1
/ L% ~5 N% n7 {# n! ifAllowUpdate = 1
; ^* \3 O% G5 g1 t4 lfDsAvailable = 1 9 Y! _5 X3 u$ A1 K7 |0 ~
fAutoReverseZones = 1
. H' s& A9 d# k. E) FfAutoCacheUpdate = 0 " X; ~7 ~, e a$ P
fSlave = 0
( g* C* D" @0 x7 i+ s; L, z6 Z0 LfNoRecursion = 0 * p f) o; j1 J6 @
fRoundRobin = 1
/ Z7 U! O2 F1 F; \5 ^) @( g. BfLocalNetPriority = 1 ( R( Q% a) l' c8 W: _$ N. _/ m& i( p
fStrictFileParsing = 0
& W6 f7 |* _1 {; h+ P* }9 e8 ]( XfLooseWildcarding = 0 2 l" x6 R5 ]+ {4 D
fBindSecondaries = 1
$ \3 s1 B) z3 \1 ^& IfWriteAuthorityNs = 0 ) Q q- b* y$ M8 {
Aging Configuration: 8 u& `. n( l9 N" _& @
ScavengingInterval = 0 + ?% x2 j% r# Q+ D0 _; v
DefaultAgingState = 0 6 t/ S3 ?+ O. |1 n6 x2 u0 L
DefaultRefreshInterval = 168
8 v- ]3 O5 N7 j" \8 l4 tDefaultNoRefreshInterval = 168
* ]8 b7 s5 i- ^2 g ServerAddresses: 4 Y$ ]6 v. N3 O" U+ u7 G! Y
Addr Count = 1
6 {7 R; D! k9 z& Q2 a% z Addr[0] => 172.16.12.1
C% B6 K6 T% K: L+ ^) }" \ F/ I" h; g ListenAddresses:" l( e! r$ R9 T+ V
NULL IP Array.& n" Z4 k7 h, |2 g1 E r5 O* x9 F
Forwarders:7 p2 n2 ]& Q3 E! k$ H
Addr Count = 1
8 {7 ?6 W8 d& E$ x+ _) X6 A Addr[0] => 172.16.4.31 ~5 r3 \$ k+ v# Y
forward timeout = 52 M& H9 }' f4 z4 `# }! _1 q
slave = 0
# w. T) \0 s! |( uCommand completed successfully.命令顺利执行完毕
+ x! b5 L6 `6 g( ^ P- y3 M- S 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
h: H0 l3 W( N% ^2 N! P7 U 命令:/Config$ v% a& U9 C/ T6 {. u
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。/ d: X" z' m6 [5 N5 c
3 v6 e3 i# D/ |) I
用法:* p6 \8 ~; V+ T2 k
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
3 T8 k9 I5 d' T 参数
; v$ {2 D0 z A7 h5 W ServerName :服务器名称,意义同上
4 x# W+ O/ s1 a ZoneName:9 W( w; g) O, _
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
/ N/ ^. l6 R! ~" v% R Property:
$ ^+ \; W" {- C+ \+ i5 p 这个参数是属性。这里所说的属性有:' o; ~3 `- R; M
与服务器有关的属性:例如:- K! i0 K; G& Q2 q2 r. x4 I
/EnableRegistryBoot1 R! [$ [7 V: O. b) X" P
/RpcProtocol1 x# J& Z# ^! B4 k |# Y4 L
/LogLevel
( {) f) o3 J. w% n& j/EventlogLevel 等等 (限于篇幅未能全部列出)
; p9 U: }+ p0 G9 n与Zone 有关的属性,例如:8 s7 W$ \+ C9 S1 e3 o& \
/SecureSecondaries7 L6 [+ C- t% J* k
/AllowUpdate+ R; _! \1 x7 z
/Aging
3 F! \1 t. W2 M6 O" a7 u- o/ w% [! s /RefreshInterval Value( e6 P. `& ]% |; y8 I3 k9 ~0 w `
/NoRefreshInterval Value$ a! R/ b( b9 b9 v4 ~1 \
属性值:* E" k& T$ I5 P+ ?- @3 V# X: u
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。/ h# N" b, c( K$ j! L9 ]
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
( P( e4 B) S$ S1 Y G7 G' K 命令: /Statistics+ A+ ?% s/ L: ^6 q
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
; R5 c s. D+ `, z7 D; y 用法:
6 P' `8 t Z2 D( q v" s$ e, ? dnscmd ServerName /Statistics [Filter|/Clear]
4 J+ H9 ^$ ^1 e% U' [ 参数:6 n* _ O! {5 h, `
ServerName & W% Y0 B0 b6 ]6 Z4 |# s. m6 B, a
服务器名称,含义同上。
: [$ s5 i6 o; h4 [可选参数介绍:* A4 {% a% J/ h9 h, e/ s
共有两个参数,每次只能使用其中的一个。
+ h' l$ \! a, s. c4 r: i# _ 1.过滤(Filter)1 G; K. Q; ]- ]. y6 ^
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
F' z [. R1 K可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
; ]6 T0 B4 e3 f/ U& @* E0 A- w 00000001 -- Time. B+ a; i/ C% B. ^& P% K. x6 f7 y a
00000002 -- Query# C' x; {; {8 g/ b
00000004 -- Query2
! h% f$ ^4 Y! ?% H( c& [! { 00000008 -- Recurse+ [7 P9 r2 J7 M3 J. o$ s+ F( P
00000010 -- Master' B3 L9 y5 [" ~7 }3 F, h; e
00000020 -- Secondary
7 t/ S! e8 K+ |, |. b q9 h 00000040 -- Wins% C0 }! A9 K; x. w+ k# `
00000100 -- Update
' p# Q& a7 X3 ~0 c k 00000200 -- SkwanSec
) u$ e1 D0 N. g o) s 00000400 -- Ds, v" [5 f7 m' D& v# J' n
00010000 -- Memory: A9 | O& u! t0 Y
00100000 -- PacketMem
. L# a+ v* {( I9 J- e0 H 00040000 -- Dbase- F4 I9 c# `9 Z0 ?
00080000 -- Records
' Q1 Q7 k( Y3 b' r 00200000 -- NbstatMem' B9 _* }+ y9 M3 O
2.清除 /Clear
; g" h) x7 p3 k7 O6 c* y 这个参数用来清除统计信息。) ~. c3 I* v: h( i
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。$ D; }* W3 ~8 q0 g1 h
% s2 u0 n1 D: h: l3 U# r1 a
o" A# s+ v7 o& H9 l$ u3 E! V+ [5 r5 j/ X
|