本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。1 q2 }. j6 d0 D" D
命令: /Info 8 m5 X2 U7 ?, g
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。) ], W. D! Y! o( X
用法:
; w( V* h7 b* I F# m dnscmd ServerName /Info [Property]
' ?- `, Q& L W0 H; F 参数:
8 N. [0 M& i5 u" V! C- w ServerName 4 r r; z" p1 X( E9 a) ~
服务器名称在上一篇中已经介绍过,此处省略。
6 Q! K: A& k% z& i+ [( j [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
& u; j3 N3 e$ r3 o 下面是该命令使用的一个比较完整的例子:
K. G* _ t# d7 D 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
/ o L' [5 ]* @; B/ q* |dnscmd 172.16.12.1 /info 只使用命令而不使用参数
3 S+ `" X: \7 j输出的信息:0 Z0 u1 E% z7 [" r9 I) o) j' K
DNS Server 172.16.12.1 Information:1 ^; q2 a: |( z7 D9 s
C:\>dnscmd 172.16.12.1 /info; O0 }' G8 n/ P: L7 R1 n
Query result: 查询结果% S* ^) b0 N2 b) u0 u& y* s# A
Server info: 服务器信息
/ `2 N: C+ w+ e# M; O) y) l# v5 p ptr = 00074718 端口) y" U1 [# k6 u- |0 q* n2 j* b
server name = myserver.microsoft.com 服务器名称
" A( h+ H- b% x3 Q, G version = C2000005 版本
) Y8 n4 |$ {, Q* D5 _/ P: E2 F DS container = c DS“容器”8 k2 a, L; K1 m* E/ `! S
Configuration: 配置信息 这些信息的含义请参考有关资料
! @0 I( v0 G: P5 B, J$ @! X dwLogLevel = 00000000
4 y* _" c! [# J" N+ a+ X, ]# f7 F! B* | dwDebugLevel = 00000000 S2 J! ] D. D/ g% a0 G% T/ Q& g4 _) Z: j
dwRpcProtocol = FFFFFFFF
, \2 q/ q6 n7 u dwNameCheckFlag = 00000002$ P( y3 ^4 h8 ~3 P/ _& w' p
cAddressAnswerLimit = 04 L1 X0 q. b2 d/ ^+ P- r, M
dwRecursionRetry = 3- a7 h& J' }+ o, Z
dwRecursionTimeout = 156 T6 m, n6 x' e
dwDsPollingInterval = 300
, I7 d# P+ \* v2 F% z! B6 x- ~ Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
; c: v; o0 c9 ]9 A8 L- L# I7 |fBootMethod = 3 ?2 o2 Y' ~8 r/ N6 @
fAdminConfigured = 1 5 `* f- y A% q% Y; ^# a+ z
fAllowUpdate = 1
/ \$ J K! ?; q! y G. QfDsAvailable = 1
/ |6 ~/ G0 V ~5 N# a+ w, ~( mfAutoReverseZones = 1
% V! t4 E& N! `# P: C% ofAutoCacheUpdate = 0 $ ~8 d# w9 C5 y% `% G5 j; s4 h; E
fSlave = 0
# Q/ }5 k4 t' V/ I8 h, GfNoRecursion = 0
$ M: o0 B# U) i% UfRoundRobin = 1
# y3 v; B9 S8 `2 |( W! tfLocalNetPriority = 1
! M K! ?7 n, u% l: ~fStrictFileParsing = 0 7 {5 G* [+ H9 C0 J s
fLooseWildcarding = 0 : I2 Z6 ~0 I0 }
fBindSecondaries = 1 $ P# H% h( b1 L6 \( u
fWriteAuthorityNs = 0 % y+ x* [: {7 J* a7 R1 {! y" o4 d
Aging Configuration:
. Z' c* ?5 c. E* I. z0 z3 s3 YScavengingInterval = 0
) E4 ~9 @8 v% [! k% pDefaultAgingState = 0
" j4 I6 T1 P* A9 r8 {DefaultRefreshInterval = 168 2 ], p' O6 W% C3 y; T+ W+ s: s
DefaultNoRefreshInterval = 168 * B8 z C7 M9 l
ServerAddresses:
/ X6 S& Z3 G8 N `& e4 l% G1 f2 s Addr Count = 1- K! x1 {6 ~ ]3 i
Addr[0] => 172.16.12.1% j' h; C/ z9 {9 r- x
ListenAddresses:
4 S! P; \9 Q* \" o# Y6 E4 c. n NULL IP Array.
8 b6 r+ z3 l: p; u0 w Forwarders:
: K- w* r0 D5 A3 o& V Addr Count = 1$ C8 b4 R$ `0 e1 h0 M7 j W
Addr[0] => 172.16.4.3
4 b; X5 x% M0 ] forward timeout = 50 e3 E/ L- e0 }+ x' d0 I5 T. c
slave = 0
8 [: C2 e5 ? p2 Q! LCommand completed successfully.命令顺利执行完毕 ; R1 i& m6 c, ^+ p& q5 T% h
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 6 Y* e# f( R# s$ Y
命令:/Config
, ~7 t! \; A4 U8 t, P, O 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
6 ?7 ?/ t$ c. i1 y( z0 D: _ x2 V. f) a- \6 c4 S, h
用法:
6 e, q, z5 u2 n dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
, G- I- s. {+ y! @ 参数) f# m7 i1 A5 V% \
ServerName :服务器名称,意义同上 7 s9 k5 [7 E O; q9 \
ZoneName:# s2 d, |. z" j- ^- L
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
$ {5 h5 f6 Y9 u' S Property: 0 N, ^( y/ m7 p! P- T8 z; R
这个参数是属性。这里所说的属性有:. X) J* d! G& }- y& { X6 e* X% ?
与服务器有关的属性:例如:1 I0 a, i1 @: F# z' @0 y
/EnableRegistryBoot. j; _7 R4 X* M# {$ c, r- B6 p
/RpcProtocol
/ O% q- z, W5 S; |+ Q/LogLevel
. c% b# v* s+ T. Y; ^) x% ~3 R/EventlogLevel 等等 (限于篇幅未能全部列出)
: J; r1 Z( t! A与Zone 有关的属性,例如:
+ L% Z( t$ d, ^$ n0 b1 p; `- I /SecureSecondaries
2 t: P1 d. Q" d2 U( C+ {! [; ?2 a /AllowUpdate& F8 w/ w! _, w6 \+ ^2 M
/Aging
$ g% T9 h7 E/ L1 e: u /RefreshInterval Value# v" o9 @$ N, T/ j ?8 O8 |) }
/NoRefreshInterval Value Z! J* I+ W* ^7 A6 G& h1 e. L
属性值:. Y4 P+ f8 G! X
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。6 v& Y; O" a. o9 Z. P0 S3 y2 }' H
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
1 s: \$ i4 w+ U& | 命令: /Statistics' f _, M8 D$ V3 c0 _/ e1 h
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
: C$ ] F$ V; e9 L5 ]9 o+ n0 ? 用法:5 f5 L8 f/ m1 x, g9 B
dnscmd ServerName /Statistics [Filter|/Clear]* }$ S. K& y2 B/ K
参数:0 ]& d# P% W5 j8 u4 Y8 r$ V
ServerName ! N- f+ a! @3 C& ?4 x u$ w
服务器名称,含义同上。/ q4 \+ _. o8 C; _
可选参数介绍:
7 q: J1 e% i, y% S共有两个参数,每次只能使用其中的一个。
3 r( O6 e8 y' ? 1.过滤(Filter)
+ b0 x) i% R) C+ s 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
5 x9 e& [6 [3 I/ `/ s/ V可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
$ E0 L) K& N5 F. S) K$ Z4 `6 F# E 00000001 -- Time+ W: N( H. G0 ]! e4 ?- A; C
00000002 -- Query: P& b% X/ e5 H* s
00000004 -- Query2
& ~4 c* A! _! J6 d- N 00000008 -- Recurse
! z! G& Y( O* M! R 00000010 -- Master
+ ]4 `& I. [, K0 r# G' f" Y/ d: X 00000020 -- Secondary
% L1 `1 ]5 o0 z" K# s 00000040 -- Wins
1 @6 ?) F) Z; O @3 N 00000100 -- Update$ h' Z$ Y2 b" M
00000200 -- SkwanSec; H8 I$ P) _5 t6 x8 i+ J
00000400 -- Ds
$ S. \, A A3 R% G 00010000 -- Memory
7 x# y( b! X2 u, f k8 _ 00100000 -- PacketMem, J0 a q2 ^9 U; X' j
00040000 -- Dbase1 T( J L3 S; c# \9 e
00080000 -- Records% X: t8 a. c' Z/ B( `/ ?
00200000 -- NbstatMem, [3 {8 Y9 r* Q' q/ j# T
2.清除 /Clear
( P {3 ? H- A- b# v9 c* \ 这个参数用来清除统计信息。
6 r* g3 b9 [$ [" S 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
3 ]3 b2 R7 L8 @6 _% e6 s$ T( w7 J) o
1 L0 w; N2 M; T' R
" h* x" W' |$ _7 G
2 J: H: o) g* z* D |