本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。2 F& O2 G8 g. V- g
命令: /Info
" {7 x* h* x0 t5 e7 e$ Z 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。) s6 T+ o5 A& s3 _
用法: b B; }1 _1 e% A" h; Z
dnscmd ServerName /Info [Property] : {. S* H2 ]! l
参数:1 O/ N- Q7 Y* S! u
ServerName
" \6 `6 @/ ~ h6 g3 _ 服务器名称在上一篇中已经介绍过,此处省略。
$ k; `- k8 C, }! A, n8 G [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
: B' Q. w0 L: c1 S9 Q8 c) x 下面是该命令使用的一个比较完整的例子:6 M7 u( E$ f1 C# N4 F: X9 P
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
4 R" H& ^: n% f" t7 ?# s+ O; Ednscmd 172.16.12.1 /info 只使用命令而不使用参数
. K6 e& B: }: ~, `: m( w( B输出的信息:
2 e# L7 v* n5 @5 IDNS Server 172.16.12.1 Information:. V3 p1 _$ h/ F- q( `
C:\>dnscmd 172.16.12.1 /info
3 Z. |; x% }5 e" f) H: y5 ZQuery result: 查询结果
: B' \/ t4 r$ y) ZServer info: 服务器信息5 p& V3 E2 f6 h) n/ K3 P7 t& Y
ptr = 00074718 端口
, t& }' S) ?; k; r) ^. c server name = myserver.microsoft.com 服务器名称: ~* u) F& B' p3 O9 I
version = C2000005 版本# m# ?' A) e% {) @. F
DS container = c DS“容器”
5 l2 i3 d' s4 S3 p6 w% s" \7 a4 D Configuration: 配置信息 这些信息的含义请参考有关资料
' { S f& K4 `7 l+ ~ dwLogLevel = 00000000
& _% A5 K% B! K% S4 j dwDebugLevel = 00000000
7 f1 Z l& C; T6 _2 L2 B2 K dwRpcProtocol = FFFFFFFF
$ C. {! V9 l! k& h; B3 T* z dwNameCheckFlag = 00000002
5 P$ d- T. H" v2 M o cAddressAnswerLimit = 0
# O. x. {# w; p, p dwRecursionRetry = 3/ S% H/ [3 `# a, S8 M4 w) w, A
dwRecursionTimeout = 15
8 p7 {( k& k2 S o1 p dwDsPollingInterval = 300
9 r* z0 |: r; B) p' r Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料% C0 b1 h6 R6 N( P
fBootMethod = 3
) ~! j' z' ~" d1 b& b0 ffAdminConfigured = 1
2 u$ A3 {, | v9 ^ U, ~9 n( FfAllowUpdate = 1 - W6 O% ^3 ?' Y \" f9 t# }: x
fDsAvailable = 1
; A7 R n' E/ H6 ffAutoReverseZones = 1
& R5 X4 j& ~3 D3 KfAutoCacheUpdate = 0 # y- F: D' i& {5 k
fSlave = 0 5 T7 u4 Z T3 ?+ t
fNoRecursion = 0
/ Q3 |0 `: I8 L9 Z( XfRoundRobin = 1
" {- E/ d* i) t$ L* S3 x9 dfLocalNetPriority = 1
% R6 A0 x$ t) a) xfStrictFileParsing = 0
! A9 v( S: k6 z, l7 n# @fLooseWildcarding = 0
$ r1 `! y9 J; r2 T; \fBindSecondaries = 1 - q0 K. |. H1 u) p: _4 T! X
fWriteAuthorityNs = 0 7 }2 W' d/ N0 Z& i9 {/ o2 R
Aging Configuration: 3 {7 G$ z; u, k5 T' ^0 i F
ScavengingInterval = 0 ! u$ g9 J/ G" N7 B! B
DefaultAgingState = 0
0 r- w9 ?7 c! UDefaultRefreshInterval = 168
9 `0 @ ?$ Y- }9 W$ JDefaultNoRefreshInterval = 168
: L8 c2 W' O" E* { ServerAddresses:
5 [/ S# L& O4 v Addr Count = 1( X* q4 P: x$ Z: p$ Z
Addr[0] => 172.16.12.1
5 u5 g" c3 u' E( x* b3 I8 ` ListenAddresses:! T7 |5 m9 t9 Q( C$ s: p" N* [
NULL IP Array.: n% Z3 ^' i6 `7 w
Forwarders: T }( F. i, F, l; r
Addr Count = 1
. \4 g: `- @6 u6 g4 X6 G3 g# Q Addr[0] => 172.16.4.3+ m2 k+ ~' i. Z/ }6 t0 ?5 Q+ x
forward timeout = 5
$ U! y2 H. g3 ]$ W+ P! A( t1 ^. ` slave = 0 Y; Y9 I5 O6 n7 z% Y2 c
Command completed successfully.命令顺利执行完毕 . e; F$ X$ ?2 k2 g
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
; ^; q1 @; M9 X9 s' S 命令:/Config" S, U! H- ?$ c% ]' {0 W- k
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。4 B* b& b0 ~! W! X/ \+ _( r
- Y( L! E; E! u, w) ^ 用法:
0 i- ~' W! z' ?& P: t dnscmd ServerName /Config [ZoneName |..AllZones] Property Value7 {% ]) i& S1 y2 s
参数
* h6 X6 l( r3 Z8 N8 G* ? ServerName :服务器名称,意义同上 5 K/ Q+ O% F0 j& S
ZoneName:
J% r& S G0 U6 ? 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ' F7 K5 P: H/ _8 S" m+ y# \
Property:
- I* u5 q; M4 A9 R& s" @ 这个参数是属性。这里所说的属性有:+ T- P" ?! l b6 V* |3 t# [+ j% U
与服务器有关的属性:例如:
* }, W) |& z6 V' G/ b- F" l/EnableRegistryBoot
; S6 \# S, c5 i- x/RpcProtocol
+ h. L6 I* E7 y. Q( X5 c/LogLevel- i0 t! N4 ?; Z2 b# `+ o
/EventlogLevel 等等 (限于篇幅未能全部列出), [. n: e) K; O
与Zone 有关的属性,例如:; \! H" m7 |) b [1 U B
/SecureSecondaries0 F" \& ~4 c1 W: O# @! U
/AllowUpdate
1 d2 c, t+ r5 K1 s% Z( W /Aging
4 D1 T1 I1 P1 R W$ V /RefreshInterval Value/ @" X3 f6 T0 q B2 l% V7 G
/NoRefreshInterval Value
& ?/ D+ @; _2 h- j7 S% ]0 x$ ^5 [ 属性值:
R# S. F7 F) y6 |0 g6 c' O. _ 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
. c3 y5 B7 G7 \* G从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。9 }1 D1 z' O E
命令: /Statistics
- L2 H* L! }; ]) v+ H( G 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
/ X7 G0 e. i- u/ J' _! p% Z 用法:
3 V) X3 a. b6 Z0 k# f# @ dnscmd ServerName /Statistics [Filter|/Clear]# e3 X! L i6 @0 ~9 ?
参数:2 ^- g) {0 ?; b9 G! c
ServerName 2 _7 d) K2 @* p% N
服务器名称,含义同上。2 ~" _. e) h5 p7 ]5 x0 b) Y! \0 _
可选参数介绍:; w: t& i! K! G" {- m) Q2 D
共有两个参数,每次只能使用其中的一个。0 b# F* x3 z2 t+ A0 o
1.过滤(Filter)1 w" X8 \% {9 I8 A5 f
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。& q9 Y& L% g& m) Y; z. U
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 7 ^3 u7 c# @) z+ p. s6 {* O
00000001 -- Time R4 S% `6 s& x; ]$ m/ O! j# Y# ?
00000002 -- Query1 Y/ T% {8 ~% b6 ~- c: }% K( _
00000004 -- Query2
7 f7 `+ ?1 r/ J y3 p, T% I 00000008 -- Recurse
5 ^7 t! H& L1 d# Q 00000010 -- Master- Y7 |2 Q7 W* y4 E4 H0 Q- V& |- ]
00000020 -- Secondary2 D4 c: l: v% h, A \" Z
00000040 -- Wins, j+ M7 j* i4 T
00000100 -- Update
) W. X. ]( v! }0 S7 W+ n2 g 00000200 -- SkwanSec
5 L$ L! f" z6 s* `( `. @/ _; z 00000400 -- Ds; G7 _& H5 ^* x: h3 f
00010000 -- Memory4 s/ D% l+ h0 |6 W# R" M- t4 q( ^
00100000 -- PacketMem
6 P9 f9 q+ F0 w5 @ 00040000 -- Dbase4 |" Q4 N# Q. D5 [2 N
00080000 -- Records
8 X+ l3 f$ l8 R, r 00200000 -- NbstatMem/ f* U$ ?' l- i) y% j2 e
2.清除 /Clear . `$ c0 R% R* v; j. @3 Y8 _( S
这个参数用来清除统计信息。
" I6 E8 K# Y8 [# G 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。2 V5 G L3 Y* q! S* e
! n3 m' | m+ O' U. \
1 d4 A. [/ p$ n- ], [$ [
8 b9 R, M# N8 r6 f |