本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。# Z, t' c: N: C& ?0 x5 t5 N
命令: /Info 7 Y9 c. e) c& F8 m. {# p
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
+ F$ t+ _; L, k ~% N& ]. e8 }, z0 v 用法:) K, { K* d9 d5 ]
dnscmd ServerName /Info [Property]
7 M* D4 }7 \ Z) O% K" O 参数:5 n1 ^: Q$ M# y: K8 X: i! O
ServerName / T) `+ i: W& v( \$ A, D
服务器名称在上一篇中已经介绍过,此处省略。 4 p. h' G6 {: C
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。: H2 @0 n/ m* u/ n B$ Y
下面是该命令使用的一个比较完整的例子:0 @) \( G1 H: P' b" P$ J
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
V* R9 C& f% U3 y8 P9 p+ Gdnscmd 172.16.12.1 /info 只使用命令而不使用参数3 }& m4 K! c" q* a! ]
输出的信息:
D: m0 y2 Q# h) YDNS Server 172.16.12.1 Information:3 m% }: }& ]* `) `* F7 O0 C
C:\>dnscmd 172.16.12.1 /info
1 F$ A$ H: H8 b, zQuery result: 查询结果. j& x% _# I4 F2 w& B3 T
Server info: 服务器信息3 j! J( u0 U( B+ f7 f2 o
ptr = 00074718 端口6 Y: Y5 q' C8 O& f! g1 f5 `
server name = myserver.microsoft.com 服务器名称7 ~- t" y3 J* L. b5 a
version = C2000005 版本& X x8 U+ V& B R$ y
DS container = c DS“容器”
* z I* e( T' }* p Configuration: 配置信息 这些信息的含义请参考有关资料+ [8 b! G, Y3 F. e
dwLogLevel = 00000000
4 P( X1 Q. n4 d' @. h& Z& l* W dwDebugLevel = 00000000* ^7 _" e! T. f+ N7 j* F2 \
dwRpcProtocol = FFFFFFFF# _- {2 z D9 j4 |8 W9 \: g
dwNameCheckFlag = 00000002
: k1 a* y6 W+ { cAddressAnswerLimit = 02 x" L+ f" Q* F6 m
dwRecursionRetry = 34 {0 N5 Q6 Z! _9 W- t- T
dwRecursionTimeout = 15
7 h! b$ ~& r3 `6 H: h4 U# z; H8 s dwDsPollingInterval = 300
4 z Z6 _6 O* E. f4 q% U+ h! V& k Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
( B: u: \& Z: E0 k7 v6 |5 B+ g6 bfBootMethod = 3
% x/ f& s1 D# {0 LfAdminConfigured = 1 - G6 T+ H7 a4 c
fAllowUpdate = 1 ! Y& v- l3 f) r) c
fDsAvailable = 1 ) B* [' P0 X( s z% T; S7 Z. f
fAutoReverseZones = 1 + `3 T2 d- |. @$ j
fAutoCacheUpdate = 0 ; d% j5 {0 P5 `( m
fSlave = 0 $ r' W4 q" b; p: f8 a- H D
fNoRecursion = 0
# K6 S5 _0 E3 E0 q J; BfRoundRobin = 1 : T4 k) ]/ m0 R( Y7 q% V
fLocalNetPriority = 1 . Y9 c% |; K$ X, U
fStrictFileParsing = 0 3 }+ F! z0 k$ i1 R) U2 B5 r
fLooseWildcarding = 0
, e7 }6 E' e) |: @fBindSecondaries = 1
1 e& @& ~$ h: d, ~: xfWriteAuthorityNs = 0
% X m: B+ u) P' l! v ^Aging Configuration:
1 P) q8 p/ [5 b% kScavengingInterval = 0 3 I1 `. G7 q1 @! D. }6 x
DefaultAgingState = 0 + a: X& |0 `0 o
DefaultRefreshInterval = 168 / L0 n) x6 T! M U- d
DefaultNoRefreshInterval = 168 & `# `1 i; O5 ]2 m5 k3 R5 R* ^3 R ~/ c! B
ServerAddresses: : k8 b1 W z- o0 j
Addr Count = 1$ ~9 D, w& @+ D# J
Addr[0] => 172.16.12.1: L" E" R' n! q: f* s5 e
ListenAddresses:
3 z* l) e. U. }5 | NULL IP Array.
1 U: @% P. e4 R8 ]1 D Forwarders:
1 `; u; n% v8 z# W; w Addr Count = 1
/ z$ [1 ^6 d" g. Q+ {% y Addr[0] => 172.16.4.3
9 P7 v; ~- t( j, u: H$ u forward timeout = 57 g R5 u7 ^# d2 I
slave = 01 `! w N1 c; Q* ]* q% I$ y; |4 _
Command completed successfully.命令顺利执行完毕 * M, [. B" i! @. }# }. X4 y3 d
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
5 a* ?: V* K& v" ^( a) f 命令:/Config1 X. o; W" c4 e" n- W9 W
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
: d, n0 U, k' V* V- U" }6 ]% s. n$ R' ]. \6 e
用法:
5 v$ {+ `' D* }6 l$ P3 [: ` dnscmd ServerName /Config [ZoneName |..AllZones] Property Value- B8 y0 M9 x( Y; j& C
参数/ j- |) ]# h- n
ServerName :服务器名称,意义同上 1 b0 I; `! f+ t; X
ZoneName:
2 @0 o3 @& A8 ^/ U# _+ T: P 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ' W: }$ ~- i' o5 a9 G
Property: % ~9 s. n h+ C: S s% r
这个参数是属性。这里所说的属性有:
! c9 }- j# M2 d 与服务器有关的属性:例如:3 \% l; z/ Y, I6 D* Z
/EnableRegistryBoot
2 J( N+ t$ @% I9 u0 t/RpcProtocol2 u/ c Q2 }0 [9 `
/LogLevel
Q( M; X; G( a2 C. ?9 h8 C) D8 O/EventlogLevel 等等 (限于篇幅未能全部列出)
- |/ E) v% M; F1 t/ ]1 g与Zone 有关的属性,例如:, q* R' x. y' x3 o! C' c+ w; f
/SecureSecondaries& g q% G) G: s/ s2 E
/AllowUpdate- \- A/ W! T7 a9 W% j7 g
/Aging/ a% B) z# Y2 _* ~/ @5 L3 p/ x
/RefreshInterval Value. J+ y6 M& T# p" v
/NoRefreshInterval Value
, C: ?1 z8 Q# q( r! b- [- d P 属性值:
, s, |# Y; n' J" t! T) D7 y 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
" I! V' S0 a& D" l+ K从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。: T+ k' O+ M D) E) i
命令: /Statistics. W' ?: r( S `" L8 I8 T& U; `
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。$ T: G1 P& B/ {+ @
用法:
# n' @/ g& w% P5 L: v9 ^ dnscmd ServerName /Statistics [Filter|/Clear]6 B4 H; b, d* L9 x
参数:: i* k/ B% @6 I% t' n7 r- G
ServerName
7 m' i- {1 [) \7 B6 ^; R9 d服务器名称,含义同上。, C& O. h, o q$ k9 f3 ~4 V& g
可选参数介绍:
" `% ^0 o" I( s6 [共有两个参数,每次只能使用其中的一个。" p9 O2 u: V) F) p- q- D6 ]7 D
1.过滤(Filter)
( O7 p# \3 e) L 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。: [: T9 V( S$ D' k& ?9 N
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
; s1 z! c% N4 G9 F4 U 00000001 -- Time
: v" C3 I s: V) T 00000002 -- Query
+ E8 j+ X, R% J* \! i 00000004 -- Query24 {& T$ t" A. O- d2 v8 x2 k K
00000008 -- Recurse+ O8 t$ M/ e- `- {5 r( A
00000010 -- Master& ~7 z8 q9 U" g6 O
00000020 -- Secondary
- `: P- M9 ^/ C6 g: z/ x 00000040 -- Wins0 V/ D! J, W( y5 e
00000100 -- Update
& x2 Z1 B# n1 M' l! F/ @8 k1 C! ~ 00000200 -- SkwanSec8 P% d( h% t! D4 M. O
00000400 -- Ds$ B1 ]6 B6 r: M- c7 h& _
00010000 -- Memory
% ~6 Q1 j& R. k: D 00100000 -- PacketMem: }* E1 Q+ o- M# Q8 _8 `+ D. G
00040000 -- Dbase2 F5 }5 r" Y- |. g
00080000 -- Records6 D7 \* `5 g3 e+ a
00200000 -- NbstatMem7 K. a0 i5 @2 k
2.清除 /Clear 5 e8 ]' C) e) m4 P3 _
这个参数用来清除统计信息。
$ Z: }0 o. F) U2 [7 w+ e. m. j 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。; _5 _* _3 _' x
( M% }+ \) s1 W: d- P' }" D3 W
7 x! R+ e0 V# C/ y X) K7 E9 ]/ w7 o4 [ ?( w% ]/ b
|