本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。5 L& @, _' W& f0 F
命令: /Info 6 M# o' c6 [) V6 J5 l g
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
/ G* \# R1 f3 x r3 b( G0 m 用法:
G$ r9 S+ P3 D w% ] dnscmd ServerName /Info [Property] 1 P6 x4 l* I4 }4 y9 @
参数:, K& W$ C2 X g
ServerName & M5 v8 `5 X* d) O G/ I+ K" h
服务器名称在上一篇中已经介绍过,此处省略。 8 h" |0 d0 \: Q, u; K
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
2 n8 P9 u8 C+ h 下面是该命令使用的一个比较完整的例子:" Y5 I! P2 n3 Z4 ?
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
. m. q5 C7 A9 a! D: Y7 c( ^6 ^dnscmd 172.16.12.1 /info 只使用命令而不使用参数2 W! I$ r) b+ r% L1 Q% i: e
输出的信息:; m* k3 b0 {+ s
DNS Server 172.16.12.1 Information:
; }2 u9 ~7 |/ u" v2 u( I1 |C:\>dnscmd 172.16.12.1 /info
: w, n- {/ m- n# s" [) zQuery result: 查询结果
/ Q' ^8 v5 n+ C2 @0 {' w# B9 ]) JServer info: 服务器信息
, f5 u9 O" Q" `3 x+ k& t# ] ptr = 00074718 端口
' t5 c. @& |2 C6 M* }4 K2 m server name = myserver.microsoft.com 服务器名称 i( [. \8 v' }! P- L, c
version = C2000005 版本8 G ]7 j; b* Z! |) [
DS container = c DS“容器”; x! V+ ?) @! M* I" }
Configuration: 配置信息 这些信息的含义请参考有关资料
/ O3 n) a; s# F+ I dwLogLevel = 00000000- b# b8 T" a# N
dwDebugLevel = 00000000
: I4 g5 g. A" S; t7 x. q dwRpcProtocol = FFFFFFFF
' t g( y$ h5 Y% h1 N dwNameCheckFlag = 00000002
8 M% `' w2 d8 u cAddressAnswerLimit = 0* _" y3 T) P5 d( p
dwRecursionRetry = 3
8 G+ x& j( E' g* s; o dwRecursionTimeout = 15
0 Y; G9 G& Q7 y' O9 U/ ]$ B3 Z dwDsPollingInterval = 300
. m% k) w% Z3 o Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
! c' ~+ E# y2 ?1 D+ PfBootMethod = 3 * w" D$ K8 E5 R, R9 g0 V
fAdminConfigured = 1 1 b5 E4 A6 ~# G
fAllowUpdate = 1
/ z* d1 t* Z: l9 I" }0 qfDsAvailable = 1
- ~9 p3 X5 P- O" c2 ^fAutoReverseZones = 1
f* V$ K, x, U7 WfAutoCacheUpdate = 0 7 C! V! |- U1 g5 ?! g
fSlave = 0
' F5 F% R6 K4 j. _- CfNoRecursion = 0
0 s* v( l3 j* ?9 R# }% P2 WfRoundRobin = 1
1 I2 {1 Z; x+ ?- u! hfLocalNetPriority = 1 3 r2 m5 ^" i, i2 `3 U9 K/ Y2 H }
fStrictFileParsing = 0
$ g% _' ]4 C d( {2 S- o% O2 J- ZfLooseWildcarding = 0 % x7 V% F( k* _( Y! E7 i; C" Q7 n
fBindSecondaries = 1 . j" G- H* D/ U4 m
fWriteAuthorityNs = 0 8 q7 G, s0 B! R5 w
Aging Configuration: " }# Q( d1 x* ?* S8 Q X
ScavengingInterval = 0
. Q8 u! Y' E4 A: F' L& HDefaultAgingState = 0 , Y. {! F! b' @1 V5 k
DefaultRefreshInterval = 168 ) ~5 b. z; i: J; ~! Q
DefaultNoRefreshInterval = 168
* K: H+ @% v, Q' I5 U s% P ServerAddresses:
( B/ p T: k. A3 p; g8 w5 n# d Addr Count = 16 ~, x. p0 [+ f
Addr[0] => 172.16.12.1
3 x1 U2 q/ U- E8 q ListenAddresses:$ J# |" E4 E) X
NULL IP Array.
* ~& V$ Y$ h g# f# u: _5 D1 }" [. t Forwarders:
z7 z( |; @6 K Addr Count = 1) @+ ? h6 W+ T3 |% H1 E2 Y
Addr[0] => 172.16.4.3
& d, A" G4 I: K forward timeout = 5
; R" Z$ x8 V; l9 j; @) k/ K* e5 b slave = 0& m9 n" s( ~/ |( ?
Command completed successfully.命令顺利执行完毕 2 C3 S' \. {7 B" [; y; D( z
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
. ?% i6 K+ s( A* X* ~- I% }# P- I 命令:/Config7 x; d2 i- C, y3 \. C# g
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
% |5 t% p7 f- ?' }" ]8 \7 {5 a. m; Y, G
用法:
! Q4 n6 `. |: s2 p$ [ t% A; V dnscmd ServerName /Config [ZoneName |..AllZones] Property Value( G5 [4 N! j, r
参数3 s E- `& a: S/ p* I b2 v: v6 D' f
ServerName :服务器名称,意义同上
) v- l0 T' |5 |0 y( ~ ZoneName:7 d8 Z d2 E% i; p
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 6 {2 I$ Q7 @" o! @; U) ?/ q. s
Property: 0 |" J" A/ X& t: j2 e8 x
这个参数是属性。这里所说的属性有:
1 e9 U( c3 R$ L s) a; d& | 与服务器有关的属性:例如:
( Z# W8 Q* U: v: \! G7 [/EnableRegistryBoot
% ?$ ]2 x4 y9 K9 ]/RpcProtocol
; e/ I. T7 V* i3 x4 y9 w0 J9 _ S/LogLevel7 U) o2 p: z! P
/EventlogLevel 等等 (限于篇幅未能全部列出)
* a/ t5 d# p$ J; ~ r与Zone 有关的属性,例如:
/ O9 K% u( e' Z2 w9 c# A ~5 n /SecureSecondaries3 I% i' z! u6 r1 F* a6 I
/AllowUpdate3 g+ ]9 \. s3 ?5 z. L; t; i [# x. K
/Aging
, E9 G- L) T3 v /RefreshInterval Value
& q7 I0 W" g4 g /NoRefreshInterval Value+ e d0 N/ i+ v& q- }) ~ H/ ^
属性值:5 }+ ~- I$ L) ?. P8 m
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
3 v5 t: n! h( ]* H( j6 }7 t& N5 t从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。5 N) I7 T3 j* }; e( }
命令: /Statistics
- O( u' H, m9 J6 G9 e& u3 N" C 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
$ V3 `) i4 P, P' ]2 X 用法:
1 i8 M' ]8 `$ u& |7 x2 i c dnscmd ServerName /Statistics [Filter|/Clear]5 G7 u* `/ Y" Y
参数:
. T, a' M( @# BServerName : o" v0 _& Z$ `" z9 t3 e
服务器名称,含义同上。; i% D- |2 j2 d9 U; J5 Z! i' \4 v
可选参数介绍:
6 } T9 h0 A: E/ ~+ H共有两个参数,每次只能使用其中的一个。
4 [- g* b) J: ^# O3 y1 _7 o9 p' l 1.过滤(Filter)- x, u+ L# K( L8 R
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
) u' B( Q' R: Q! P# f可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: & ~ X* z# f( f1 G
00000001 -- Time$ m6 E9 I& H9 A# g! A5 n
00000002 -- Query1 h0 Z! @& \* Z" T" c
00000004 -- Query2
t! q! z6 `- d$ g# f+ v 00000008 -- Recurse
' n' b% u1 [! N+ k! C 00000010 -- Master
+ }8 Y6 Z0 b _% j& W3 X, n1 e# B: M 00000020 -- Secondary
# _. O0 p! ]# i 00000040 -- Wins$ z" V. B6 p1 {
00000100 -- Update
0 r7 m+ F. }: ~* r: u 00000200 -- SkwanSec
8 A1 ?7 W5 H0 b, r) a" C. i 00000400 -- Ds
. e: N V+ z4 v& c& o1 Q 00010000 -- Memory
9 `9 S* W [/ r. r0 b8 F3 `, b, I 00100000 -- PacketMem1 l* m3 a/ q6 ?4 _
00040000 -- Dbase, z* |9 U' L/ B4 q3 x9 H
00080000 -- Records ?1 z7 z, O7 O
00200000 -- NbstatMem/ i# s- Z% P) U5 {) k
2.清除 /Clear . @3 s! W# k# V$ J- o& _
这个参数用来清除统计信息。) q6 j1 X4 U- U: F8 p! v5 u- _
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
1 M6 G+ x }& }; [% \/ d) ]7 }! y; L
$ L) F0 ]; M- d
) F% x K$ b6 y( a |