本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。; ]2 _1 z h5 Y' C
命令: /Info * M" X2 G- a! Y& h. f: O5 ]3 f, j
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。) h2 Y2 c; r0 w9 ~% m; p& T
用法:' g8 M7 _0 y7 i0 B; h# @: m. I
dnscmd ServerName /Info [Property]
F/ e. i/ h- ?) ^9 V7 l) ]: t& V 参数:
/ a! _8 b# t% y, q ServerName 6 o( N* U. e7 M6 E- a$ m
服务器名称在上一篇中已经介绍过,此处省略。 ! j0 {3 p9 e3 ^2 o$ n- ~/ a% L2 B& R
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
( ]! J- e& m! [) J! ? 下面是该命令使用的一个比较完整的例子:* \1 b* {) K; e$ Q4 [3 q6 G/ ^
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
0 n3 p. c4 P- R7 U# ?dnscmd 172.16.12.1 /info 只使用命令而不使用参数
+ Y- A( R$ U% h$ N' w3 ^输出的信息:
# C+ M% _- ?# \# X# \! N0 sDNS Server 172.16.12.1 Information:
# e8 J8 y0 p9 O( L7 n% b \6 RC:\>dnscmd 172.16.12.1 /info
) }5 x% f1 j! b: W) f7 G4 RQuery result: 查询结果
! _" T2 V r9 F- PServer info: 服务器信息
) R C6 X* R% u8 M* y- K ptr = 00074718 端口
& Y# B6 y. a: w: z N$ c- S, Z server name = myserver.microsoft.com 服务器名称2 \& |' o" N; X; E8 v9 n1 w
version = C2000005 版本
& M8 [$ _6 j' K, A9 N DS container = c DS“容器”0 ]* r! u$ w* I5 Q% c$ C( O
Configuration: 配置信息 这些信息的含义请参考有关资料
# r, _2 Q% U; `, A dwLogLevel = 00000000. C4 e2 x0 s3 S
dwDebugLevel = 000000006 R' C( s, m$ y6 S) k* o2 f4 P
dwRpcProtocol = FFFFFFFF8 m, v: ?5 T8 h) a
dwNameCheckFlag = 00000002- J' |! ]# w% _& P- w: y! p
cAddressAnswerLimit = 0
" i* c# A- q5 F b. W0 [6 ] dwRecursionRetry = 3
' Q2 S. ^' t- _7 ~5 z dwRecursionTimeout = 15
[& r) @4 Q/ |& A dwDsPollingInterval = 300
1 p }( r" `0 }5 f) E! h Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料. q7 _# O0 m f
fBootMethod = 3 * y8 K1 r; H% Q3 L
fAdminConfigured = 1 9 A. ]% x7 y7 \5 B$ r$ W6 C
fAllowUpdate = 1
8 K; v/ l, q N# A8 F: H7 FfDsAvailable = 1
3 _: u) x7 L C% f0 s, k2 HfAutoReverseZones = 1 1 w5 O; ?) o' v1 [ R" _
fAutoCacheUpdate = 0 : \- E9 F# W$ _0 g* X
fSlave = 0 0 q$ P/ a: ]/ g( l* G x# X
fNoRecursion = 0
" _0 X4 p6 I7 x0 C5 U' YfRoundRobin = 1 2 T' n# }5 ^' h* E/ t- d
fLocalNetPriority = 1 ) r% \- E( L+ B
fStrictFileParsing = 0 : |! n; ]$ u4 @8 s6 U0 x
fLooseWildcarding = 0
9 @; {, R/ v8 a% b. S; J. \fBindSecondaries = 1 - n3 A9 b. f& W* [
fWriteAuthorityNs = 0 0 d) H# s' w3 U, J( q
Aging Configuration:
2 W4 D2 g5 P) vScavengingInterval = 0
/ N4 z7 i y- y- [DefaultAgingState = 0 % Y1 U' r0 q& r, ? w6 f) w
DefaultRefreshInterval = 168
0 ]$ T8 [# g8 m# {DefaultNoRefreshInterval = 168
! N4 [6 V; @: C+ y9 U/ a: D ServerAddresses:
" O+ _0 m- Z$ A Addr Count = 1
9 b9 n$ }9 g8 K& \* H3 P4 { Addr[0] => 172.16.12.1' X) c {& _8 @/ ?- C( ]9 X
ListenAddresses:
2 i; j6 M4 f( B$ J( z NULL IP Array.* {& L$ C1 v Y9 U8 a/ `, w
Forwarders:" r( S7 R8 d" Q# j
Addr Count = 1
5 z6 S4 O1 U8 ]+ v$ R |, W Addr[0] => 172.16.4.3; e8 {9 O5 d9 K4 y% g9 E& h: a
forward timeout = 5, c9 Z5 ~) b* u( m; j
slave = 00 x" h( j- F. m6 T. |
Command completed successfully.命令顺利执行完毕 . |. k# ^9 x" s
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 7 l! ~ W2 \3 J* o, L/ T
命令:/Config
/ I9 h- O- z6 h 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。8 ~: x5 m% W( T$ R9 I4 @7 C
/ v m/ h. ?& p4 J4 i3 a 用法:7 p; B( U8 M6 m* M! {+ A# A$ q. f6 [
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
$ t+ E: Q5 u3 v. i' O1 a 参数
: s6 A1 q* k0 s& d7 n! U ServerName :服务器名称,意义同上
/ C& E7 X5 ^" o- X6 s9 B ZoneName:6 n4 h$ O* z G! N+ Z
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 " K/ T; L. n4 w! U, v* d
Property: # I% V/ b$ N+ b0 q' \) w
这个参数是属性。这里所说的属性有:
e* m/ S: |1 V( O% ]. O8 p# u 与服务器有关的属性:例如:
/ O( d5 Y7 J4 x2 O+ R# R8 Q/EnableRegistryBoot
+ Y7 f4 c' k5 h% j/RpcProtocol; g3 V* P/ r8 A+ p
/LogLevel
/ H% t6 J3 e2 @( l/ ?; G1 M$ H/EventlogLevel 等等 (限于篇幅未能全部列出)" g3 O$ h* d+ _& I
与Zone 有关的属性,例如:0 u% l2 a) A5 z2 z0 ^
/SecureSecondaries
`1 S0 F* n+ [" d* Z /AllowUpdate6 M2 F0 W2 d4 }7 q7 n
/Aging
* k' ~3 m8 O3 m6 x% L+ J3 ` /RefreshInterval Value6 }/ {3 q" U6 y% y4 o8 b/ ]
/NoRefreshInterval Value
I H) }8 P& A/ K% w 属性值:3 @6 L! `* k( `- I. ^( G
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。! o/ M! t: f. j% V" r
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
2 c. G4 q. {1 b1 H, b' } 命令: /Statistics
. s1 O2 j; I1 D1 ^4 Y( c# m 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。0 V S/ |# J& ~
用法:- Z5 o5 |8 p" ~" E6 k* M; n+ W# ]6 ]4 m
dnscmd ServerName /Statistics [Filter|/Clear]
0 a' ] _4 p$ i 参数:3 G5 p$ w* k/ Q) _: U; E
ServerName ! e) @# x& m. h$ R- P" U {
服务器名称,含义同上。
: |" x) P& \; v+ N2 |可选参数介绍:' R. \) s6 V+ p
共有两个参数,每次只能使用其中的一个。( H t0 K: F/ G, }1 H5 {
1.过滤(Filter)
, x2 g' T2 E1 p% C0 i- M4 D! t; y 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。1 q1 n, m- \+ G: B
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 7 ^2 m* g( Z/ z* q; D9 b
00000001 -- Time D6 x# L% ^, r9 u
00000002 -- Query
; X6 Y% {* j; a, n: z& \+ F8 g 00000004 -- Query2
; e( G4 ?' q- @ 00000008 -- Recurse
" M0 ^+ V( C# F4 I 00000010 -- Master
6 @' l( K2 X8 @$ v0 Z$ r6 p 00000020 -- Secondary
4 ^( V' p P; h. S1 S G/ e8 U- O 00000040 -- Wins+ q% ?2 n; U6 N# i! `+ _
00000100 -- Update
: ?# H* c1 I, j# X, L 00000200 -- SkwanSec
) {6 p# {; Y: z8 ^- E* t/ R 00000400 -- Ds
" C# q3 [/ T% m+ C/ a! r8 s 00010000 -- Memory
# a5 k$ s1 |+ o/ N1 R; g! s* } 00100000 -- PacketMem
4 t( g: B+ G1 |* I R 00040000 -- Dbase* K8 ^+ q+ O- u J, o( n
00080000 -- Records
S! t2 o+ [; b2 h. k 00200000 -- NbstatMem
4 {4 i' a) f# S* W6 R" K/ [* B 2.清除 /Clear
; u3 f, P4 e, m 这个参数用来清除统计信息。
3 ~% @4 K, W6 P7 X6 ^$ h0 \ 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
# G& ~* N' d) v9 l4 }4 D! x" H L4 W6 f8 n& Y* i& c% X
, B3 z: V$ [$ w9 w2 C9 F5 W X6 h9 s
6 T" V" o5 E8 E* A- j; L- a2 P# C7 W |