本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
5 s# K5 X! a0 q+ k% O, p3 L 命令: /Info & C& O2 D: S/ z* N* t3 K
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。 }0 G" U' W# c5 d$ H# J, n
用法:
0 W/ b4 K( [% g4 M7 l$ g# P/ v dnscmd ServerName /Info [Property] / T# W! k- k! Z$ p. X& s
参数:: X$ Y4 j, [# f& B3 U
ServerName 0 P& q% q% Y( T4 q) }
服务器名称在上一篇中已经介绍过,此处省略。
4 r9 S9 P3 b: B- j9 [. H [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
) i! `2 z! g; V; f- S) E, n* G 下面是该命令使用的一个比较完整的例子:& _4 r9 }* j# a' i+ B/ Y; B4 X
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
4 ?- r9 ^/ L9 |) _dnscmd 172.16.12.1 /info 只使用命令而不使用参数
& l. r: t5 m5 v0 D输出的信息:
+ N+ A- u! L7 ?DNS Server 172.16.12.1 Information:
" ? x/ Q5 M pC:\>dnscmd 172.16.12.1 /info
* [8 C7 T! i3 ~4 }0 x% j6 Q! HQuery result: 查询结果6 a* x6 Y! z0 q$ r* f
Server info: 服务器信息; c7 K0 g, C8 L; X4 {. J
ptr = 00074718 端口
4 c: m$ y0 `' D( V5 n2 K/ y+ i server name = myserver.microsoft.com 服务器名称
" D; i6 H1 Z1 S6 B. M version = C2000005 版本
" @9 q- p7 k3 \* r o6 F DS container = c DS“容器”
0 G& r- r! ?/ R) G4 s" e Configuration: 配置信息 这些信息的含义请参考有关资料4 B: k3 l6 b/ v" _( e9 j
dwLogLevel = 00000000# H; a1 i2 G( k2 u3 U- }$ Y8 s
dwDebugLevel = 00000000
/ D( ]% D0 }7 e m dwRpcProtocol = FFFFFFFF- I2 A4 i% ]# w5 a2 g
dwNameCheckFlag = 00000002
, ^* w R A! f! G# ], c cAddressAnswerLimit = 0$ [; c- k% }; \' r U$ |* i
dwRecursionRetry = 3
; U$ M6 l" V4 v' u5 X& b0 ~ dwRecursionTimeout = 15
. W2 H. d( x0 A. U8 ^8 j5 Y& F% e dwDsPollingInterval = 300
; t1 ]9 D. \! K1 g8 h9 V, H9 ? Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料& l; L* E9 F7 a
fBootMethod = 3 + Y# t0 E: W9 s( |' h9 }
fAdminConfigured = 1
3 z9 o( z0 c$ ~( OfAllowUpdate = 1 8 m* X0 g; ~+ O" [9 Z. [$ }
fDsAvailable = 1
8 P! G( w5 Z! |& W2 l. MfAutoReverseZones = 1
% H; k+ \$ n7 D- v* {' e# rfAutoCacheUpdate = 0 , V% A$ }! W- t9 g0 [5 h; `$ O7 P1 F
fSlave = 0
~) [) l" p; ^1 _+ WfNoRecursion = 0 8 U5 ? P3 ], _% k
fRoundRobin = 1 5 P3 _. |4 R8 P" r- Y# H! F6 |9 O
fLocalNetPriority = 1 6 f9 d+ `9 s6 ^6 d) Z& M& c M7 J
fStrictFileParsing = 0
* x2 a0 T5 O g2 r* TfLooseWildcarding = 0
. @, U, J% o4 ~5 TfBindSecondaries = 1 , G: {- U9 b' W& x7 @- \
fWriteAuthorityNs = 0
; ~4 |9 G& V) T" {Aging Configuration: / k7 v2 ~# H: r
ScavengingInterval = 0 + x6 j5 q. s" m/ q5 Y
DefaultAgingState = 0 2 c2 H$ z& f6 U' o e( G4 O5 ~( B
DefaultRefreshInterval = 168
1 f( W" A# ]: ]6 ^1 J, SDefaultNoRefreshInterval = 168
4 l, T& B6 \( \0 j1 M ServerAddresses: ' S* }& ?: i3 y+ K: w
Addr Count = 1
8 F/ K) b) J$ f! M% O; n5 D Addr[0] => 172.16.12.18 T( q' _( v8 z) T9 a' q
ListenAddresses:% S4 c1 R4 a9 z5 j2 y0 ^4 o
NULL IP Array.. L' `" X; {, N- I
Forwarders:
: d" [7 P+ A# m+ H3 [! N, Q6 I. n+ U Addr Count = 1
. G0 p$ K- k ` Addr[0] => 172.16.4.3
+ ^5 m- i: _' ] q! _8 r0 z. p( I forward timeout = 5: ], d- n% U- N
slave = 03 j7 n" ]+ a9 o/ F
Command completed successfully.命令顺利执行完毕
5 ]6 I- `& q/ }( }; O 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
, H% X* M t5 m 命令:/Config7 T" A* D8 U+ o0 T& Y* u
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。9 ?4 l' Q: s q* `/ W: V
7 l8 |9 _7 s# z. m4 m 用法:; a, Q1 J8 `0 F7 l
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value: j( m+ [, g: h8 h2 `: P
参数1 Z6 Y# E0 K, V5 Y
ServerName :服务器名称,意义同上
( ?/ A" [1 C& G' m8 R" U6 q ZoneName:% u0 y E Y! @2 z- l( o$ d- E
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
) b* x3 G. @/ `- b6 K( V1 Q Property:
! }, r$ }+ n% [ 这个参数是属性。这里所说的属性有:. i/ o8 q7 H( J" z) p: `
与服务器有关的属性:例如:; L0 }# f# I$ q5 \: c* l
/EnableRegistryBoot
2 m+ f7 i9 k% s) g. l1 i7 w- S/RpcProtocol+ K9 L% C$ a! r8 C& _. }
/LogLevel$ y) _! R3 G. H6 ?4 e! E5 {( \
/EventlogLevel 等等 (限于篇幅未能全部列出)
8 b8 n7 K% I: ^% z与Zone 有关的属性,例如:. d0 ?: x) c; s
/SecureSecondaries
1 B6 l; |* f# A3 P /AllowUpdate
9 ?6 @4 j; v6 B! `3 f& \" b7 g Q /Aging" @7 {9 m/ j& i" u3 }
/RefreshInterval Value
+ E. V3 w3 z2 o7 N" r3 r /NoRefreshInterval Value) u" r" w5 V! N, o" U
属性值:
G; M1 ?. j: V- j$ P- V 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
- H, {6 L& N. Q1 ^- C, R9 _0 v从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。" V0 S0 c: R2 r$ M: P! x# F1 R
命令: /Statistics) f" e# }7 H! ?4 [8 Y
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
. _+ C& O; Y6 M8 h. ^& O7 {( ~ 用法:# m, }) S q1 U3 p5 c
dnscmd ServerName /Statistics [Filter|/Clear]
5 V$ a: N* `; b2 c. ]! l 参数:
$ C j6 R3 R* U, B1 YServerName 5 ^# t5 n. F" s3 o7 P, U6 y! q( w
服务器名称,含义同上。
, p: }' {. b0 ~3 V& U可选参数介绍:
& U. g& q+ D" t; T3 k7 v$ X& [共有两个参数,每次只能使用其中的一个。
" I1 l; e) b# _ 1.过滤(Filter)- V" X5 R( `) Z) ^: @+ g
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
! K2 d4 c3 O" Z/ x可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
; [ E: q4 T: J5 {# m G' o 00000001 -- Time
+ b4 z: \! h" R3 Y 00000002 -- Query3 o4 j2 ~7 A3 L3 n5 j9 r
00000004 -- Query2
- k4 H5 C0 D" a; m 00000008 -- Recurse4 I7 J" d( n; s; t" A
00000010 -- Master; x) y+ o) I5 x* V! r6 a; l
00000020 -- Secondary
. ?- L3 h6 O% T3 u$ C 00000040 -- Wins
* q2 q# K+ t' `8 p# V2 T ? 00000100 -- Update
% \' }! V+ m! W 00000200 -- SkwanSec) m) ~" }3 R4 c0 K9 n: E
00000400 -- Ds
( r& C9 D/ Q% R6 u1 i+ [: h$ K 00010000 -- Memory% F# ^) l' v' M( d6 S) Z
00100000 -- PacketMem
( C: a# R- \( |! @ 00040000 -- Dbase M3 H# y+ f( L
00080000 -- Records1 M, R6 `" f. y8 n# Y# F- r5 o! m
00200000 -- NbstatMem
4 \ J$ U& E# m: E) ~8 H1 T. ^ 2.清除 /Clear
! g1 A g+ C$ S \3 G 这个参数用来清除统计信息。4 ~3 M$ v1 @( E: d! `' I M
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。& b0 n& I$ M8 Y6 N
! G8 A- Y& C7 t$ `
: R* }& d: |- p5 o, V
! i& [+ S6 A/ N. O! r |