本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
J8 N% X# q6 x9 ? 命令: /Info
+ z" H" I% L; T+ {; z 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
+ S& p2 r3 L" S1 k; s7 U 用法:! O! d$ `' V: P: Q$ s
dnscmd ServerName /Info [Property] ; a- O+ L( _0 V5 B9 i) s% M
参数:
6 i0 R2 m* ]$ M: M# K7 h$ S# F5 ? ServerName
4 G% B ]' _& ], K 服务器名称在上一篇中已经介绍过,此处省略。 ! G9 R* Y5 d7 ~$ h5 \
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。; I% [# j4 g' s
下面是该命令使用的一个比较完整的例子:6 Z" F1 t* ]/ c5 L7 l& z0 D
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:" b7 n7 r* x6 Y) M+ t6 g2 r
dnscmd 172.16.12.1 /info 只使用命令而不使用参数 i1 z# F n5 {" L$ M1 j9 G
输出的信息:
. `$ |/ @, e3 ^* b* p/ RDNS Server 172.16.12.1 Information:
* o3 h) |7 y; V$ _4 W- P: | g4 {/ iC:\>dnscmd 172.16.12.1 /info8 L0 B! H5 b5 h ~' m7 W% L# T
Query result: 查询结果
! {0 Q( p0 [3 ~' YServer info: 服务器信息
3 G0 i7 M% V# Y' d2 i, B$ { ptr = 00074718 端口
6 E- ?! l! Z5 t! P/ H4 P5 W server name = myserver.microsoft.com 服务器名称
5 X6 e1 F, [' z4 ^" M version = C2000005 版本0 ^5 p$ Z& e, p9 x5 T9 D1 B
DS container = c DS“容器”# E" o7 x0 v) C m% x" {4 p9 X
Configuration: 配置信息 这些信息的含义请参考有关资料
- ]6 A5 |' X, X9 H J dwLogLevel = 00000000
2 A5 W1 L4 H4 e1 K3 x- [ dwDebugLevel = 00000000
5 E$ T- U( A5 \0 w9 q- b+ z/ E dwRpcProtocol = FFFFFFFF# w/ |$ S5 V l" n9 w4 k0 y
dwNameCheckFlag = 00000002
5 h% q4 w0 t0 ~+ N/ @( Y. r7 I cAddressAnswerLimit = 0+ X. G: I9 t/ }2 Z: y/ b0 G
dwRecursionRetry = 3! u' P( ~: x# [, Z; c, j
dwRecursionTimeout = 15
) e% c: E: E$ L) P3 z dwDsPollingInterval = 3006 o F; t, F8 v/ {8 d. a& [9 D8 k. G
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
8 Z# Q6 k6 ], H' hfBootMethod = 3
4 u1 t. W, P+ v$ B4 w* h8 G$ BfAdminConfigured = 1 8 g, `! U$ H9 G0 K% `" V$ H
fAllowUpdate = 1
6 v) h0 E! r* }fDsAvailable = 1
) E" Y& n0 J9 q2 k UfAutoReverseZones = 1
( x1 {! Z; s+ d& m) D8 vfAutoCacheUpdate = 0
1 i) C* m& x% e0 Q7 U" }5 ufSlave = 0 ) J8 \5 @* m) ^9 }' S
fNoRecursion = 0 % U& D/ g0 H+ O7 p
fRoundRobin = 1
6 `4 Q/ U, W9 ?# b; P6 {6 gfLocalNetPriority = 1 1 `3 W. m) E# Q5 v( P: s
fStrictFileParsing = 0
7 [4 ^ |; n7 @1 D2 M- efLooseWildcarding = 0
( s! E: M, d( d8 cfBindSecondaries = 1
+ A2 H3 j" \, E NfWriteAuthorityNs = 0
9 D s5 P3 r8 Y( e1 H& S: aAging Configuration:
" V. L- w. o' u$ QScavengingInterval = 0 7 q9 n+ L5 w, B3 ?; i5 Y6 O
DefaultAgingState = 0
# d$ H' Z' A3 v' iDefaultRefreshInterval = 168
* O- a4 w7 p7 t) x' jDefaultNoRefreshInterval = 168
+ z# h; u& `5 ?' v1 T+ m ServerAddresses: ) o8 _1 b! i. V8 ?/ f/ a( h7 O
Addr Count = 1
4 Y, }8 ?1 _! b8 \2 q Addr[0] => 172.16.12.1# U5 Q: Y, A- q4 a: ]& G3 Z
ListenAddresses:
4 b5 ?' @# }5 P) O! [ W2 r r. g NULL IP Array., T- J" q9 t. t0 T3 @
Forwarders:
. V! A( [3 }/ w Addr Count = 1
! ^" X' B" k, s0 T) H Addr[0] => 172.16.4.3
; {0 x0 R* b! g forward timeout = 51 f3 o! K' H9 W/ U# p ^
slave = 00 {7 \3 W7 j ?# j
Command completed successfully.命令顺利执行完毕 : b3 |9 X N# B/ k$ Z, `
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
$ W) P, b |) c6 A( ^7 L- I/ p 命令:/Config
4 F/ G4 n' K) }; ^. _2 v 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
, D3 z7 ], o5 Z; d( ^0 W
, c3 B8 R S2 O 用法:# E& B, g4 q) G' Y: B* B( W
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
$ V- E; h1 r2 z! N6 | 参数3 B( G9 b. a6 H% u
ServerName :服务器名称,意义同上 ! w/ _7 d# ?! B7 g o
ZoneName:
' k) B; O5 K3 J3 T# L: J" \ 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
# r5 }, n8 s( M0 E0 U Property: 9 K, k# h. D2 Z" [0 Z d
这个参数是属性。这里所说的属性有:
- B; }. ?% ~, U 与服务器有关的属性:例如:: {/ X1 L* {/ U# e1 ]7 z- m
/EnableRegistryBoot
" S, f3 Q0 z& Y6 j/RpcProtocol
3 _* J: w/ P) ^! S- z3 @3 v4 l/LogLevel( T [6 r3 R, i" e* v
/EventlogLevel 等等 (限于篇幅未能全部列出)8 e( Y% X* i5 F. ~( c5 V
与Zone 有关的属性,例如:; ^" p. Y5 P p
/SecureSecondaries, Q$ m; g `7 N% }1 C- d8 P8 f
/AllowUpdate+ m# C' W }/ L9 ?
/Aging' q Y5 L9 V9 S& Z0 N/ t5 A- H5 z
/RefreshInterval Value
5 m; o# N; f0 v% y1 j( s /NoRefreshInterval Value
1 a- Y) U7 W8 |( x, E+ } 属性值:
; d6 `) U1 K L% c" L 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
$ O! s3 j" J6 ]& V' N' L从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
0 b6 k* k n* j! e9 u: p% N# } 命令: /Statistics
/ }' j0 c% @, H4 g 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
$ A; K/ i/ O2 m9 X/ M1 ?+ l9 H8 n 用法:9 z3 D" V J& ^" a+ ~
dnscmd ServerName /Statistics [Filter|/Clear]: c/ C# x, ~0 A. Z7 F- I6 _0 E* G
参数:, I4 x9 z# e) r) U
ServerName
% e; @! ]" i. M/ f) L+ z3 I服务器名称,含义同上。8 i; i, M a/ g2 ]1 ?% e
可选参数介绍:
1 z% g3 v+ s, j& U% i共有两个参数,每次只能使用其中的一个。3 g! k) A, F" q- b8 k' M/ I
1.过滤(Filter)' r: O$ y( h( A# Z
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
2 V- N& k; y5 V( e( t0 i可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
0 Q0 | e% i; {% u$ p7 W/ Q 00000001 -- Time6 W3 u7 e5 f5 }' C0 M% e# g" ]
00000002 -- Query+ C* C( @& }/ {' K& h
00000004 -- Query2
& z, A- D6 ~0 S8 k; x 00000008 -- Recurse5 b# [6 K. R i
00000010 -- Master
" `6 [( k9 |! h- Z% _4 c4 O 00000020 -- Secondary
! V2 q8 z( w8 U# L" T* O 00000040 -- Wins/ o% h7 x" E4 I1 V; L( R
00000100 -- Update$ a+ W9 F4 t3 Q
00000200 -- SkwanSec
/ q$ d, c$ Z. Y% {, X+ q8 _ 00000400 -- Ds
& M* y8 S. W$ W3 _ 00010000 -- Memory2 i h5 b: w# `' ~
00100000 -- PacketMem5 a: K& p" [1 v9 M- m
00040000 -- Dbase1 v7 e; r' \9 Y9 {9 D6 `
00080000 -- Records
: {! @+ U; W, S' W1 I 00200000 -- NbstatMem
8 L5 }3 f0 v$ P" j# P0 H5 Z- |* g 2.清除 /Clear # k0 A! E: f$ c8 E+ h7 D, d
这个参数用来清除统计信息。8 X+ V- g3 `3 ?5 [
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
k; y6 w: S, o% L6 q' H* G
! E+ C6 n' f8 H' Z3 ^/ o# v& y
+ K- {3 d! w6 H4 z$ N: m* @9 x' D& ~4 z& ^% e: u( T" @
|