本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
0 l9 }2 E& V5 i6 U) b 命令: /Info 8 D3 ]2 s( F' V
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。" c b0 [* h; V& W# e5 G/ M
用法:) q. b. h% K" Z+ o9 `, |# k% j
dnscmd ServerName /Info [Property]
$ a% j S' x' C5 ~# V) c 参数:" i% l, }- @0 o! |1 Q0 i' u
ServerName . x0 O- L, W9 ~; }" F$ W& Z
服务器名称在上一篇中已经介绍过,此处省略。 + v: d% z$ E }: `
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。5 f5 A! l7 H8 P( W6 [
下面是该命令使用的一个比较完整的例子:1 X8 j; q, a+ n5 ]+ q( T
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
+ r. }- \$ d% D4 `, ?/ Y3 ]dnscmd 172.16.12.1 /info 只使用命令而不使用参数+ l" N% S" k; z+ S3 c' x4 V
输出的信息:
& T, F1 q9 m; ^) Z$ ~& tDNS Server 172.16.12.1 Information:
0 G6 Y$ F# B2 E0 H/ c( C8 @C:\>dnscmd 172.16.12.1 /info5 M# l5 H- Y% A6 M3 ?
Query result: 查询结果* G9 G4 q1 ]: R. m0 e( c
Server info: 服务器信息5 e& z b2 a, U9 F* D9 r
ptr = 00074718 端口
- o% p+ v; W& W, M W/ [4 ^* n server name = myserver.microsoft.com 服务器名称0 _$ J3 Z& [9 ^1 ]) t8 b, j+ \
version = C2000005 版本% o& a7 l$ S% s$ e* W
DS container = c DS“容器”
: b3 r! `8 G* x& h Configuration: 配置信息 这些信息的含义请参考有关资料, s/ h6 w7 Q) n0 }4 ~% M7 J6 U1 o
dwLogLevel = 000000007 ]1 u; R" g, i$ t) s/ b2 |2 K- C L
dwDebugLevel = 00000000
4 b$ c3 U" N0 V: I+ X, \( s3 W dwRpcProtocol = FFFFFFFF
. O& ?' q: s' G! y dwNameCheckFlag = 000000024 Z9 {, j7 z6 G) X
cAddressAnswerLimit = 0* J, V$ P# g' j' d
dwRecursionRetry = 3$ {$ M* v; [2 u# ^6 C+ y: \1 v
dwRecursionTimeout = 15
% w2 P+ y8 b- o7 _0 n! G/ B dwDsPollingInterval = 300
' ^* [, Z# J$ h7 r' U3 f+ d) { Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
! l# `* ?; f5 C; A9 |+ lfBootMethod = 3
) Y* {" Y% R8 o) `fAdminConfigured = 1 $ p! W% x) p1 X# \# `+ d; b- y8 }7 k
fAllowUpdate = 1
* i- m! t+ L j4 y# }' J6 B1 B) c$ qfDsAvailable = 1
$ b8 w% n& f i3 i# g$ V, }fAutoReverseZones = 1
0 ]# R$ @- E1 \) H4 `* b* S0 CfAutoCacheUpdate = 0
3 V6 B5 Q$ ?2 D1 w1 ~% {fSlave = 0 , f5 c* Q7 P- d$ P
fNoRecursion = 0 ; E3 c9 U; V2 X& G0 m; {
fRoundRobin = 1 0 z2 U# F6 T% |9 d" [) I
fLocalNetPriority = 1 : ~: ?5 x% C" W* y
fStrictFileParsing = 0 * b) \3 K* x8 v/ k4 @5 f6 R1 I# v
fLooseWildcarding = 0 ' j$ u5 p2 d9 e( ] W1 P
fBindSecondaries = 1 ! o* {# r* |2 f9 X7 B
fWriteAuthorityNs = 0 # \/ @# f; y/ s5 j" b
Aging Configuration:
6 Z( A" @# C+ s- a6 r4 s' s* nScavengingInterval = 0 : R$ A- E# x& ~3 _% e
DefaultAgingState = 0 . q& U3 K" q5 \
DefaultRefreshInterval = 168 5 j/ ]( `7 U( b) e
DefaultNoRefreshInterval = 168 1 W" A4 \+ ?$ `$ e/ M
ServerAddresses:
! E9 `0 z0 z0 _ Addr Count = 1; x' W. Q7 d& R. ?
Addr[0] => 172.16.12.15 ~/ E. I/ ~& p+ w3 V/ c# m
ListenAddresses:+ A% q9 _4 l8 m: v
NULL IP Array.4 n3 R) j& P' t y4 H- F
Forwarders:7 S1 Y: Y6 z0 W( z" Z3 e! M, d
Addr Count = 1+ p8 W1 ^# F9 l2 a/ r5 x+ Q6 Y1 X
Addr[0] => 172.16.4.3' }8 l, ]0 R% x* n9 f
forward timeout = 5
' |. S& C' S$ R o& x9 y/ p slave = 00 `9 k+ G7 r+ x
Command completed successfully.命令顺利执行完毕 , e. u3 M$ I c% U% H+ c2 G
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ' B/ k( A) P- s* U! D* f+ c
命令:/Config
, t8 e7 D6 X9 {$ ?) t6 v/ C1 ~ 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。5 l; o; x2 X" ]/ v2 U) o* ] K
. w+ }3 h% b% y K 用法:) |5 ^& [: c" _$ P3 P
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
, [5 x& x: G. F! _ N0 R 参数
* i6 x/ [ x; S7 |+ N ServerName :服务器名称,意义同上
3 s: K( ?% n3 R9 x: A ZoneName:
+ p3 h- B3 E0 ^) f 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
& I) |* ~3 J% y) p" ^8 o( }! }; K Property: 2 v: d) U" }0 i6 W1 p# W0 Y
这个参数是属性。这里所说的属性有:3 z c+ |( ]! F$ f. b7 K
与服务器有关的属性:例如:$ w; [0 b6 p1 N5 R; a
/EnableRegistryBoot
' W5 s$ x% J- M7 d$ y/RpcProtocol
' T% q6 k9 o8 n8 q' `( b5 N/LogLevel5 ?! b7 J: l4 ] Q* w1 A
/EventlogLevel 等等 (限于篇幅未能全部列出)4 n$ ^% l8 m2 p7 l. F
与Zone 有关的属性,例如:
1 U, I( _6 } y4 @3 B /SecureSecondaries
) \ d m. ]3 ~* m3 x /AllowUpdate N4 Q1 t4 a, S' }; x3 m+ i
/Aging
5 \7 O1 t" k2 W: l! w* `7 [ /RefreshInterval Value; L+ w R5 ]' p) `. G
/NoRefreshInterval Value
, T+ o' o; `/ X 属性值:
" _3 A6 |$ L0 |' p 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。( ]" l. A1 f5 X! |: }# e2 d. o% l
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
5 h2 V& I" P; o ?+ H) P- o 命令: /Statistics# E5 y) [9 ~! O8 z8 u0 @( B
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
* `+ Y( E; M2 [9 l" C& V 用法: l$ z d) K, X+ T2 k2 _
dnscmd ServerName /Statistics [Filter|/Clear]& L; y/ J0 l4 X; e0 x5 v, T' Y. p9 g) E
参数:; g: H: Q( e$ q( I& k/ B/ a! w8 ?
ServerName 4 p/ a; A: K4 D: P
服务器名称,含义同上。
& \ C% \$ c2 ]: K. f6 M7 I可选参数介绍:
3 }/ E8 w" Y, k3 g共有两个参数,每次只能使用其中的一个。
% K2 k7 E0 e7 M# { 1.过滤(Filter)
6 e5 a$ N+ q) O" h. Y1 X* V u 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
: m2 [& @2 V0 H) d可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
$ S2 k# y0 T* a! } 00000001 -- Time
# e$ M5 X4 U& [5 O3 T' a 00000002 -- Query/ c) K& \- j& U9 f0 @, w' J
00000004 -- Query2
8 ^' b1 X* a. q+ \5 V 00000008 -- Recurse
) R% t9 h+ W' K6 H+ `! ?6 M% E 00000010 -- Master
$ Y( d* e0 i% G0 U) n 00000020 -- Secondary
5 w$ h3 @" \& c- c# G5 a% P 00000040 -- Wins
. A# U2 @0 c) D, W 00000100 -- Update
- x( c/ W8 `( ]0 S8 z$ q 00000200 -- SkwanSec
" `% e" e4 X( \. \- B Q: T 00000400 -- Ds
2 \% U9 K' {+ ?3 L/ f 00010000 -- Memory
9 J2 @5 `- M& K6 r( ~ 00100000 -- PacketMem
- M+ P r7 L/ ?& z* A/ e/ J 00040000 -- Dbase
( c; A8 w7 }: ?9 e& B- k8 [+ f 00080000 -- Records
2 |+ \1 ^5 z5 F3 j0 { N$ u 00200000 -- NbstatMem! }7 E* D- Y5 ^: K% _
2.清除 /Clear # y" y0 Y( X, T, Q' [* Z3 E
这个参数用来清除统计信息。
- O2 w" ^8 D: K4 d% }5 S 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
6 o5 {# H! @4 A, E9 D! q3 v* {4 j0 _/ @+ m: E8 @( F m! V
) o7 s) J2 n& a. e$ P* U9 g1 ]
% t/ D) _! Y, T9 u1 p$ K; U |