本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。# H) T5 `0 C/ w8 b% I
命令: /Info 2 @6 k" ]% L) T" r: S
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。* c, H5 C8 d" A! k
用法:, d: V& z' H+ _- Z0 x! m
dnscmd ServerName /Info [Property]
' h6 `# u8 x0 F. v7 `, \4 s9 b2 E 参数:* c2 O1 o1 `! o. F- @* N' u4 q
ServerName
" R5 ~1 g" Y+ g4 A) d! `! R 服务器名称在上一篇中已经介绍过,此处省略。 2 |8 y: R. a$ y N. O
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。- e/ D8 |8 {/ X: `( d S) r8 a
下面是该命令使用的一个比较完整的例子:
; _5 ^8 x6 H: v- e$ b0 H 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:3 }1 t! }2 _ M8 L
dnscmd 172.16.12.1 /info 只使用命令而不使用参数2 w A! t/ P$ F* X
输出的信息:
: p+ X3 Y6 z C( DDNS Server 172.16.12.1 Information:/ l! F4 b! z* T( O
C:\>dnscmd 172.16.12.1 /info5 e# B6 `. T8 l$ l! u* y( H
Query result: 查询结果
4 k. a0 D0 J4 h: a! z- y9 YServer info: 服务器信息; A) l6 v# h8 q* g/ Y1 W! f# r
ptr = 00074718 端口: z1 s* ~6 e6 T+ [9 ~! E1 u
server name = myserver.microsoft.com 服务器名称
/ x9 ?, y' t9 V, D7 ]" c3 y version = C2000005 版本
: d" t- r" M6 C3 G DS container = c DS“容器”) x. T$ x# e, p9 Q" A
Configuration: 配置信息 这些信息的含义请参考有关资料
# y' j! j0 d, y/ J dwLogLevel = 000000003 x: r5 r# ~+ t+ H2 r
dwDebugLevel = 000000002 A/ O( N5 i) P# ~ G
dwRpcProtocol = FFFFFFFF; `' _7 }. z: t" X* l4 I, W8 a
dwNameCheckFlag = 000000024 n0 |' t* S# H0 @8 w
cAddressAnswerLimit = 0
% L @% d. w' [ dwRecursionRetry = 3
) T; ]0 g: a, x# _4 D- |! _7 g dwRecursionTimeout = 156 S* G3 U+ H1 R3 h9 F# Q' w
dwDsPollingInterval = 3005 ~5 e3 G6 {" z
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料" g8 l4 g. |6 c+ f
fBootMethod = 3
! d9 x s) h% m! m; E- pfAdminConfigured = 1 3 u8 ]8 _" F+ B
fAllowUpdate = 1 4 p+ u9 }. _6 K; v& q
fDsAvailable = 1
; T9 _# E0 }$ Q2 r# tfAutoReverseZones = 1 3 ?- Y* a. O+ P- u7 Y
fAutoCacheUpdate = 0 * a- O4 q* e( ~- R
fSlave = 0
, g/ ~# Z1 e. pfNoRecursion = 0 + d# i7 U8 v- F0 q& \* p
fRoundRobin = 1
' H! k( Q* Z+ {5 A/ q5 LfLocalNetPriority = 1
( U$ g% z9 Z9 i% RfStrictFileParsing = 0 % H$ g- f! q0 i9 X5 i$ J
fLooseWildcarding = 0
8 D- s8 H& Q" r: ?; r/ q1 OfBindSecondaries = 1 : |2 ~- N/ S" ?; X; x/ h v
fWriteAuthorityNs = 0
% D) H5 c. f8 o, D; i' uAging Configuration:
4 D- ?. M- J- B3 X6 j% E& wScavengingInterval = 0
; M( U# B2 r) a$ lDefaultAgingState = 0 . z9 ], y' M4 z( |" ^" L: E8 S
DefaultRefreshInterval = 168 5 w( A' c/ I8 O/ ?* W& M) I0 ^2 A
DefaultNoRefreshInterval = 168
2 w5 a2 e) [% w- ^1 m ServerAddresses: 0 c, _2 t) M' ] L% i: B5 ?
Addr Count = 1
3 {, X$ U0 ~" X! r Addr[0] => 172.16.12.1: `2 u; C1 l9 v; C8 z
ListenAddresses:
3 K5 D. a; E$ g2 o7 }9 ], N- ]( N NULL IP Array.9 z9 I6 C8 X; ? N D/ T. N
Forwarders:
' y2 X4 w6 K) N0 K* n% Z Addr Count = 1+ s* E/ e' ^5 O: x; I3 x
Addr[0] => 172.16.4.33 X& o+ @7 q6 R" g
forward timeout = 5
6 Q; i; B3 N+ {. `- E. w$ h( Q6 q slave = 0
* _( n1 N/ ]+ v1 g: [Command completed successfully.命令顺利执行完毕
$ K0 X, ]) l5 t$ Z) X 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
# h1 q! g4 J1 v( F7 L% m8 v' S 命令:/Config
+ M5 ~- i$ f$ p$ x# A 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
8 [. F- `8 v7 ?5 S2 w. U$ x1 N4 p8 c3 L- Y9 M
用法:8 y# w4 w' s- R) t5 }
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
0 ~' h! L8 r$ m+ _2 E 参数6 j; G, |9 B$ y6 u6 P5 e6 f
ServerName :服务器名称,意义同上 $ Z; q3 D$ ]4 j2 f7 m
ZoneName:
3 z9 \+ N' w1 y: W 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
: }0 r. `# ?8 S' q% e9 c Property: ' K0 k$ g0 @# L* A' ^% V: f
这个参数是属性。这里所说的属性有:
4 k* C& T2 d7 z 与服务器有关的属性:例如:- @/ j+ m0 {4 p# u9 c# V1 i
/EnableRegistryBoot
! |+ l; m' h5 e. Q6 b/RpcProtocol
4 T y. Z" b2 l/LogLevel
& N1 `9 B5 H8 l) B- i/EventlogLevel 等等 (限于篇幅未能全部列出)
+ B+ \) u* J. X k8 U8 O与Zone 有关的属性,例如:2 Q/ o! ?& G3 @. S1 l" j
/SecureSecondaries" z; W) ~$ N4 s- M( l1 p+ S- d& _
/AllowUpdate& t6 m% G, L: f$ ^, i3 y% W/ b# l
/Aging
2 \3 F9 K) i- m. m /RefreshInterval Value6 w3 M: R! J. r9 i3 Z
/NoRefreshInterval Value. W/ j8 W* X& y8 u& c4 O
属性值:
$ o' K" w* Q9 }' a1 {& ]' [5 Q" E 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。5 N& j4 C6 X0 X D0 k
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。8 B F1 |9 V) t. o
命令: /Statistics
6 E |7 I5 A( b 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。2 z. A1 ]( x. b. }7 W- t1 M$ g
用法:' S- K( ?! ]2 w; j
dnscmd ServerName /Statistics [Filter|/Clear]
4 } ]0 \. R7 B: A. k 参数:- \6 F4 { `8 F
ServerName
) M) t2 Q, v& s: a% i服务器名称,含义同上。* D( {0 \& j6 u1 r' M+ k. E
可选参数介绍:2 F( r% h6 {) {
共有两个参数,每次只能使用其中的一个。
1 W* o1 |# @' x* w3 z' @) ^4 q 1.过滤(Filter)
% d! Q: K) B. [- i 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
! h: w$ U# G- A C$ X可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
1 N8 p$ u# J: e# x6 j 00000001 -- Time: R# i* j5 l7 `0 m: R( u$ e
00000002 -- Query6 T- e! N) F) R6 d0 b
00000004 -- Query2; b( o$ o; T1 [. M
00000008 -- Recurse# k7 E1 u5 h4 B6 z4 a
00000010 -- Master, J8 Y+ g9 n# L M; s- }
00000020 -- Secondary
3 T# u& X- t8 B5 a/ g9 v4 U: [ 00000040 -- Wins
- O; _/ y* ^! W' e0 J9 r/ M 00000100 -- Update6 @0 h8 y! ?5 k) G* }! j7 f
00000200 -- SkwanSec$ j. r& l! Y# }: |
00000400 -- Ds! Z {6 e2 Q" e) R( E
00010000 -- Memory& J. u o" o; Q
00100000 -- PacketMem
' e x8 r) m( t& E! T) I 00040000 -- Dbase
* A( E, {) E) A! u1 o [ 00080000 -- Records3 a, H9 t9 \4 m: y8 s5 b& j5 q! X
00200000 -- NbstatMem
9 S# h) @; F2 h 2.清除 /Clear
6 b( u# T8 Y) \: W 这个参数用来清除统计信息。
* Q4 ?, ^% p' L2 f 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
$ `# M! k5 c+ W' O; g0 O! R8 I- U( ?! Q5 {
# Z0 }/ D. j J$ @; ]) K/ ~" c* w7 v. o
|