本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
8 @4 o' Q+ K+ T1 g3 k2 T5 k 命令: /Info * Z8 v+ T1 W/ S, W! A- Z
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。; k, e+ S7 O5 c9 F# b
用法:, C# [$ m8 [* a9 c# y
dnscmd ServerName /Info [Property] {* \* \: t( A8 m
参数:9 o! s6 H6 T% u
ServerName
% n* L L9 H9 S 服务器名称在上一篇中已经介绍过,此处省略。 + h0 s1 t% [. t9 ]. L1 `/ ?
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
, X/ Z( G. R# B' i" i 下面是该命令使用的一个比较完整的例子:
+ p+ E; H. [( i, `# a, q, V# J7 I 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:) F$ W$ _$ c1 s2 K R
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
5 m. ?% g6 [2 Q! \输出的信息:+ z8 _, G8 G* a1 w% c. g- @
DNS Server 172.16.12.1 Information:% l7 W6 v4 ?2 A- O
C:\>dnscmd 172.16.12.1 /info
' [& N6 B% ^% u+ F- |' VQuery result: 查询结果
3 \( X# L3 N" E9 y, Z, lServer info: 服务器信息9 f1 ~/ }2 E, @0 p& s
ptr = 00074718 端口7 A* O2 O" k6 L+ {5 n" z# C" M4 g1 p
server name = myserver.microsoft.com 服务器名称
, L7 Q; B, |& L( }) ~3 C version = C2000005 版本& @& }7 w! G7 j* [ }9 x
DS container = c DS“容器”
! A0 s1 v' Q! s3 T5 B* Y% j Configuration: 配置信息 这些信息的含义请参考有关资料
8 ~3 a3 i# {9 s9 \, A dwLogLevel = 00000000
9 v5 m) a/ a8 \8 u9 ]: m dwDebugLevel = 00000000
2 Z- n. z7 b. O dwRpcProtocol = FFFFFFFF8 X. U0 Q7 |! o
dwNameCheckFlag = 00000002- ~ I4 G j0 L0 g6 U8 X% v2 s9 Z
cAddressAnswerLimit = 0# _6 a) P& {/ Q1 }9 G# N+ [3 i" i! k+ [
dwRecursionRetry = 3, Q6 Q) Q `& S/ d% U
dwRecursionTimeout = 15! k& ?% v4 _; } @
dwDsPollingInterval = 300
, c4 D6 x) L0 U1 b! w Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料, a" ]4 ~" k9 E) F
fBootMethod = 3 * u5 V8 r+ C, V( p& A; Y! G6 ?0 I
fAdminConfigured = 1 ( x0 K% J' a: S5 ?3 |5 e
fAllowUpdate = 1 & G" E% M4 `$ }
fDsAvailable = 1 , m: H3 o/ d. _7 P4 |# V
fAutoReverseZones = 1
1 y5 _$ J6 G) a; ofAutoCacheUpdate = 0 / y/ Q$ G& d1 i6 x
fSlave = 0
; }/ a( H, S- F$ N8 @3 a4 }fNoRecursion = 0 5 U7 a4 H( y7 S4 A+ t4 I x* i
fRoundRobin = 1
, j% c" w9 D0 L; d9 S; kfLocalNetPriority = 1 ) B6 x" }5 i, E8 L
fStrictFileParsing = 0 " z& Y7 [9 J: [$ F3 S% V
fLooseWildcarding = 0
! }9 [4 j0 b5 \, W! ^fBindSecondaries = 1
/ P" c- r" A- N0 U: u9 ]% IfWriteAuthorityNs = 0 % i3 ^1 B1 G% j, r7 Y
Aging Configuration: 7 X* _( p6 R0 Q8 B& E/ f; q
ScavengingInterval = 0 0 S0 d8 ~/ N1 J* t3 A3 Z" c0 D
DefaultAgingState = 0
, m+ d2 a: v9 Y& Z) I) E4 yDefaultRefreshInterval = 168
; u* ], Z( ~* B2 iDefaultNoRefreshInterval = 168
0 h q' [$ U, S- v3 O3 Y ServerAddresses:
! {/ m: Y9 V6 z. | Addr Count = 11 [9 P8 Y9 h) d: V7 w
Addr[0] => 172.16.12.1$ H* U) Y4 e5 _1 i. a; R
ListenAddresses:- r+ z. b' d; S% }9 H
NULL IP Array.
# M! e3 V/ [2 D7 y* \1 n% D7 P Forwarders:5 C+ R! l; o ~! m/ O& D8 E" n6 ?& a
Addr Count = 1
1 S. K% ^! g; P) ?& j) m V Addr[0] => 172.16.4.3
& C3 J) V( ?4 A0 b: N forward timeout = 5
. y2 X% m$ m. C% Q1 R' r* y slave = 0" z$ O K6 b3 r4 Z1 x
Command completed successfully.命令顺利执行完毕 5 O; g; R7 w' _8 R+ h5 X! \
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
" g' [8 y1 y7 ^6 ], V 命令:/Config8 R( i' ^7 [! ~+ v1 L: G* Q
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
! y. _9 }$ p" z7 Q/ N1 T: k: \/ e" R8 T v- T4 W1 w' Z J* ~/ T
用法:
& g5 J' E/ X7 c5 D5 A+ R dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
m4 B, B: ]# o- f0 U0 u 参数
) R) H! O, X# W* I, c ServerName :服务器名称,意义同上
3 V: n! J2 p/ [5 f7 ]: ] ZoneName:7 G5 u! h/ K" o
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 0 y0 O( ], Y' s1 X
Property: - I, N& G: G( B1 F
这个参数是属性。这里所说的属性有: V# Z6 n) A! z! [" \! I
与服务器有关的属性:例如:
- t w% s- j. D# a9 r6 y$ G: _/EnableRegistryBoot
3 O2 Y5 a. ^) U/RpcProtocol( h8 r! O9 }/ I
/LogLevel5 Y6 b _$ M$ f/ }+ D6 K+ P
/EventlogLevel 等等 (限于篇幅未能全部列出)) Y6 k- w( d- ~+ A# J" e. W) T1 m
与Zone 有关的属性,例如:6 u, g6 o" l) l, `3 n& u
/SecureSecondaries% T/ Q2 h% U+ H) R
/AllowUpdate
- P w _' Z1 c2 a /Aging8 }2 x/ r9 |+ X' I: E7 H9 t
/RefreshInterval Value
2 B& m6 S# x# i# E2 I /NoRefreshInterval Value
3 u! I/ f b1 b/ z; O 属性值:8 V6 r4 S# \+ z' _+ w, G* n4 v7 R
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
3 R) u S. e# [9 t4 ^* N" }从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。. t, \# f9 V( G+ M
命令: /Statistics& y; x5 \( o& x4 ~& s% I9 c
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。+ ]: X* ?! F5 Q' L9 h) ?, A0 m& X3 s
用法:2 r4 ]5 p( H# l6 }4 W
dnscmd ServerName /Statistics [Filter|/Clear]; c% d" y: m) R7 m) ^" H3 w
参数:
# h, N) Q( I w. A& A4 o6 n: NServerName
- r. N' I) M7 N; Y服务器名称,含义同上。* U2 T& x3 l' b2 V
可选参数介绍:
4 j, v& q; y: |% A# t+ M6 n9 p5 l9 [+ M共有两个参数,每次只能使用其中的一个。0 Z8 x. B4 w4 d/ `) |1 }
1.过滤(Filter)# j& O+ `" k/ j7 R0 k7 ]
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。# k* ~* Y7 H' z
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
2 i# r$ m8 t& b- c1 e 00000001 -- Time
! t7 l* W& ~/ a' u 00000002 -- Query* | }9 ?+ v8 N r( u2 g) |# b) X
00000004 -- Query2
7 Z% e5 E& S, x! N: F* r" Z 00000008 -- Recurse# d! i; R; Y! u* I
00000010 -- Master/ `2 T8 T" T% L% v; D% J5 \- X
00000020 -- Secondary& q3 ^2 W% \8 y7 `# k# w" X% r
00000040 -- Wins+ d2 R3 w* N$ {, c
00000100 -- Update
/ [0 j! ?7 f5 {+ N! ^- P3 v 00000200 -- SkwanSec { j1 @0 Y" r5 Z' R w
00000400 -- Ds
- _% q T1 n, o: I$ u 00010000 -- Memory2 i- }. K! M' t
00100000 -- PacketMem1 H' U1 d' t' P" e; B
00040000 -- Dbase6 _. i% G+ t, j6 W( K9 T- e; O, {
00080000 -- Records
+ p5 c: r. @, J0 c 00200000 -- NbstatMem( i0 i/ s0 @% J; H- K
2.清除 /Clear
- X9 _0 i, G. J, u0 \+ y9 }( u 这个参数用来清除统计信息。
% ~; N- r7 o. F 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。, O9 {5 o$ ~; d+ G
( H0 _3 t+ }+ R* @7 j# T9 Y
: e4 p. m' I6 s) Q! r/ o* f' o2 q- h/ s1 O9 ~
|