本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
5 w; \; t) t$ m$ F" Q3 p0 j$ T 命令: /Info & ^/ b1 c* L C
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。2 N2 r9 R& Y' _' E$ x. B
用法:$ p# S+ c* S! _+ n
dnscmd ServerName /Info [Property] % u! g( ? M/ k
参数:& B, p: n! u3 \5 L
ServerName 2 h, F8 j: p% [: |$ ~) Y
服务器名称在上一篇中已经介绍过,此处省略。
2 ?, l& N4 x" ?( J4 h [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
; F# p, f# m" R6 R 下面是该命令使用的一个比较完整的例子:3 A" {" D& K$ o; f: @7 `) Y: V8 O6 n
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
1 ]* y. n) n% I9 l5 K8 udnscmd 172.16.12.1 /info 只使用命令而不使用参数" l3 H) x2 I# L( v
输出的信息:
/ v! N7 g& q% c% }' C( t+ {5 ZDNS Server 172.16.12.1 Information:
: D1 S: V, e" L; r% ?C:\>dnscmd 172.16.12.1 /info1 F* Z1 A/ w. L
Query result: 查询结果: y7 f0 V r/ ^
Server info: 服务器信息
- J' T, V+ Z+ h4 U8 n# Y ptr = 00074718 端口# q2 N4 C$ y) Z3 m. B8 A; h
server name = myserver.microsoft.com 服务器名称
8 {! K a# F3 s: X version = C2000005 版本
) Z" b* z1 `1 u m DS container = c DS“容器”
- g2 V D6 ^: o7 M5 B( F' g Configuration: 配置信息 这些信息的含义请参考有关资料 L. H7 {% K, C/ r& x8 E4 d
dwLogLevel = 00000000* L4 i2 {' E; `/ r7 s- E% ?
dwDebugLevel = 000000007 i8 ?# {' x% d8 M& ?
dwRpcProtocol = FFFFFFFF
6 s6 f! C; m% d- n7 u$ _& s8 u dwNameCheckFlag = 00000002/ Z- J+ f- Z; x, X- e
cAddressAnswerLimit = 0
d' @* L9 Y3 q* x* z# e dwRecursionRetry = 3
f. x+ g* V& d dwRecursionTimeout = 15/ z' N* p; S# d
dwDsPollingInterval = 300! `' M3 K) q! E, T
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料- f1 W2 B) p, r0 S# C
fBootMethod = 3
5 a9 i& ^3 i) l4 hfAdminConfigured = 1
* `* P% _: r7 e" u5 z2 ~! rfAllowUpdate = 1
0 Z2 r0 V8 M. r2 @' F+ m' HfDsAvailable = 1
9 k! U/ q2 L' C- AfAutoReverseZones = 1 $ b* b8 H% z3 A) f0 F
fAutoCacheUpdate = 0
9 E4 [ f; t" {$ gfSlave = 0 7 f& F5 S4 d; K) q) s
fNoRecursion = 0
4 g6 O8 z; w* sfRoundRobin = 1 * Q6 p6 z& q7 T& X/ g$ m
fLocalNetPriority = 1
; K U V6 ]$ q& jfStrictFileParsing = 0 & J( n8 G. X: J" W0 T; c% X$ D# o
fLooseWildcarding = 0 ' x/ i% i) _9 l0 M# U, ~5 \+ Y
fBindSecondaries = 1
, a6 m6 K0 L6 {, dfWriteAuthorityNs = 0 5 |2 k C2 S% |8 Q, h. \
Aging Configuration: 0 x& W( `4 m) A$ P; o6 b+ L$ w
ScavengingInterval = 0
( W* q6 Z- h1 y4 a% q8 vDefaultAgingState = 0 2 _( n' G/ A t1 P) d2 g
DefaultRefreshInterval = 168
( d" {) R( W; K2 y' uDefaultNoRefreshInterval = 168 ( J# l. Q( H& ^ V0 ^$ V
ServerAddresses: 6 a9 V2 e3 S7 Z' a: c3 Q
Addr Count = 1# A& H: M) v# n+ P
Addr[0] => 172.16.12.1
, q+ W0 _- X! f ListenAddresses:0 ^: q6 v, M" d* V
NULL IP Array.: }: a: }5 t3 g) Z
Forwarders:, o4 v/ e% J8 `- _
Addr Count = 1
* Y# O( L. v! c5 J Addr[0] => 172.16.4.3
6 G( N; e( Z, ?0 s forward timeout = 5; C& O5 _) N' R0 J0 K4 a: }# j# l
slave = 0 B8 t0 l% i- d d: |
Command completed successfully.命令顺利执行完毕 1 M" E, \1 U* r% ]; S, X
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
0 O9 g H( N$ d3 C' u' M! d 命令:/Config2 T& n3 l9 C. E! f+ p8 x. n
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。2 n$ l( Z) @0 S
- t$ l+ ^! Z, x. G1 {$ j 用法:( I6 ?$ ^" y1 w
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
" v( r4 M- E# b% W7 n; L* ~ 参数
9 N ~/ h4 I8 ?6 [# d" x ServerName :服务器名称,意义同上 . H+ O/ ?7 I$ M6 j' B( d( h6 g' H
ZoneName:
; D8 P( l* k: @: d1 W/ E; k 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 8 ~9 p: s$ G: S2 s. z/ g
Property:
; O) Q2 @/ f3 s3 ] D" K 这个参数是属性。这里所说的属性有:
: `7 U% \ D( d: _ 与服务器有关的属性:例如:
5 f, F0 \, `2 j3 O* I' p v/EnableRegistryBoot
* o$ N4 ^+ C; r+ n/RpcProtocol
( `+ R7 o6 E a! `1 t2 ?/LogLevel
3 x8 [8 ]! l/ e4 D& l3 v, }3 A; y$ N/EventlogLevel 等等 (限于篇幅未能全部列出)( p" w. H' i5 x; W9 L
与Zone 有关的属性,例如:
( ]% w6 h, k) B; H6 j7 s0 N /SecureSecondaries
5 y: g/ @% I1 p% C/ N6 k5 {' D. R /AllowUpdate7 r0 s [( @$ `: }
/Aging
# z0 B: `; H8 |2 J6 L' q /RefreshInterval Value# z+ r# K% o/ D' j& G
/NoRefreshInterval Value/ J8 w. `4 z- M& B: f! v3 w
属性值:
- s4 P1 l0 ~& L3 m+ b 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
( c2 d" G2 P5 C从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
/ Y4 b3 B/ D( O) i 命令: /Statistics+ J) V- H4 H+ o
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。; D# [7 K& X& t' Z( u L% r
用法:
2 b3 y# }+ Z0 c dnscmd ServerName /Statistics [Filter|/Clear]+ a; Q2 W' V' y, ^3 p* G
参数:
7 _6 `- q/ F, y7 wServerName
: O# ^5 r% m) \6 t4 Q" ^& T服务器名称,含义同上。
: K9 [( A& i9 U, }% S+ b m可选参数介绍:. S) V; T; J* i6 ^2 ~6 H
共有两个参数,每次只能使用其中的一个。
1 E# o A8 T9 j 1.过滤(Filter)
4 ~. m& r d: P: }! R/ x 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。# d) F" w9 k6 S8 Z0 W6 c4 M" P
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
1 I3 G4 R5 C& s/ T 00000001 -- Time. W: O& Z2 Z/ q2 J! H9 ?+ C
00000002 -- Query1 g& N3 S: @( p
00000004 -- Query2
. z3 m# H7 o# i' x 00000008 -- Recurse
% W7 y7 ?; j5 z 00000010 -- Master
: f0 ^ X* g! r1 Q# N( v2 G) ?$ P, b 00000020 -- Secondary/ k* u* z% f8 [% ?
00000040 -- Wins
+ C* Q) E# z( G a" y 00000100 -- Update' S+ O. N4 P% }7 b# I3 I/ [
00000200 -- SkwanSec
: X/ T4 h/ B4 u5 c8 m 00000400 -- Ds
' j, X4 O' H- U V! @ 00010000 -- Memory
1 ]$ b( u* w+ P( Q9 X: X# V 00100000 -- PacketMem- p6 F$ Z3 p! C+ H9 |: k8 P0 H5 D
00040000 -- Dbase
, i* Z0 _6 M, Y4 r7 P 00080000 -- Records. m* W' t# }6 L2 k
00200000 -- NbstatMem/ G" a0 V f6 E1 f; P4 `' Q
2.清除 /Clear
3 v8 {3 r( P! A% }, K3 B7 z 这个参数用来清除统计信息。
5 W n. V: ~! j( H1 q s3 H 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。% C( A, X G0 T! N! I! y% t
8 {8 S1 L) S( `+ L6 b0 _( H& _
1 o% g f9 {3 g! M% i: B" W/ c
9 h: |7 v# U/ W1 e: Q |