本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。! @+ S/ o( Z* e& u. x1 m$ R' j
命令: /Info
3 l$ `* B0 Y; ^! z" l 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。& I o- b5 w P; }$ b6 c. t- D' h) S
用法:6 C7 [6 S2 ?% ?
dnscmd ServerName /Info [Property] 3 h; C7 |/ m$ A/ h
参数:
6 V/ Z/ k7 {7 b% y; B7 @/ d ServerName / U% W; k2 x8 f: X |" U
服务器名称在上一篇中已经介绍过,此处省略。
, h6 x) \3 U6 p6 J" A [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
0 M: }8 ~. u3 K6 I1 f* c6 x( H 下面是该命令使用的一个比较完整的例子:' i9 w5 g# B3 F' n1 k: \* i* o! ~- J
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:1 O, \# {6 ?9 G6 N- @7 G. b
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
) q6 a4 v. J9 L! ]输出的信息:+ x3 M! O v) B- N9 u5 n- @
DNS Server 172.16.12.1 Information:% i- _0 q5 o5 t6 v2 u2 s6 M$ v
C:\>dnscmd 172.16.12.1 /info4 E7 N3 e$ U6 e/ a, v2 k% A
Query result: 查询结果( _" p: R% c, b, t v0 J+ v/ O
Server info: 服务器信息
8 [+ v9 X; O$ _( a/ H5 c ptr = 00074718 端口
; z* ~0 h* z9 c+ q% t- D! j server name = myserver.microsoft.com 服务器名称
9 m! \9 f5 _ w9 ?' y& Z version = C2000005 版本
: @8 P, X% ^* P( P# [* H DS container = c DS“容器”
; ^, R" d2 C( z' y. b- p2 J Configuration: 配置信息 这些信息的含义请参考有关资料
, Q5 i1 y$ b9 R& X* P dwLogLevel = 00000000$ P1 n/ f) S& l0 r& G1 K' D
dwDebugLevel = 000000006 {; p; k; z: P' Q7 }( H
dwRpcProtocol = FFFFFFFF" X% J; C* S! `7 _6 O( g, B, T1 [
dwNameCheckFlag = 00000002
6 l" j$ V0 c S& t" E cAddressAnswerLimit = 0$ m, h" k7 p. n1 i' R
dwRecursionRetry = 3
% k6 ~ {. x) Z" q dwRecursionTimeout = 15
8 W2 {! ~. m( G dwDsPollingInterval = 300 ?, I+ D% b$ Y' `' X$ |; [6 `$ |
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
. P# ^5 s) O' i4 nfBootMethod = 3
9 p6 Q$ E4 y @' z2 E) J; s) N9 HfAdminConfigured = 1 7 U0 B6 |1 ?4 F5 u$ w
fAllowUpdate = 1
8 c2 v( ]2 v' x* Q/ H. b# VfDsAvailable = 1 - U" }- ^6 M+ v" W- B& d
fAutoReverseZones = 1
) O! U* u/ D6 X5 DfAutoCacheUpdate = 0 - J7 G8 s# v5 z6 X+ O
fSlave = 0 + A# Q! b/ F! p1 E/ n ]9 E
fNoRecursion = 0 ( w5 w' L: W3 k$ l: I K4 ^
fRoundRobin = 1
* Q9 m/ m6 \2 M1 q% L$ s8 BfLocalNetPriority = 1 ) K; }! X0 S$ G, v- P# @3 B& X
fStrictFileParsing = 0 ( s2 ^+ p6 ^8 s1 Y
fLooseWildcarding = 0
" h# i9 ?4 X6 M# KfBindSecondaries = 1
$ g; r( r$ b$ W5 M+ AfWriteAuthorityNs = 0 9 }* S( ^1 B, n5 {7 e
Aging Configuration: % [2 t7 N; K8 p, s; {% z& {/ ~
ScavengingInterval = 0
, u2 T9 m' [ w4 H5 e! n! FDefaultAgingState = 0
2 C. Y8 m& b, c6 ]7 M. lDefaultRefreshInterval = 168 ( e9 `; H( E5 A& O( c0 V' |, V z
DefaultNoRefreshInterval = 168 6 c; D4 q" |7 I# s+ Y7 y4 Y
ServerAddresses: & `( v# e& Q, n1 O. ^ Z5 p
Addr Count = 1
3 ?& ~% Y% N+ i6 v Addr[0] => 172.16.12.1
& H% L" ]" H. ]) s- z4 d ListenAddresses:4 [7 z s+ }+ b4 w% L- C
NULL IP Array.
. T. i- K8 g* _. i1 p; q Forwarders:
; Y5 j; f( _, n$ J' V& H; M4 p q Addr Count = 1
9 e H* R1 U3 d2 p3 K Addr[0] => 172.16.4.36 M4 @/ O. i1 B: g7 v2 Z$ C
forward timeout = 5
, i2 C \; _& ?: T9 ]6 | slave = 0% A- w' c' b; |7 Y
Command completed successfully.命令顺利执行完毕
( v) h9 D5 R1 s0 B6 d7 p( S' C3 X; Y 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
$ e5 I5 M, m6 q4 L7 ^2 z1 ?8 I n 命令:/Config
3 c/ R; e: O6 l4 c, {% U 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
. X9 g7 f5 K0 ~% G j9 N, `/ [( F( C+ H
+ V$ m* d- v" J$ h3 Q9 ?/ e: | 用法:
5 |/ U- G; d: `; k4 O9 K dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
3 c6 ?( u) g7 x 参数
9 {. }- j3 m+ E8 h; \" |3 [4 C. W ServerName :服务器名称,意义同上 : h! E9 f) h7 r' C
ZoneName:% H3 ?5 L) S& r! ^
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 - S- h' m ?* W) h8 L& _* ?
Property: 4 K( G( i' [, k3 o
这个参数是属性。这里所说的属性有:* E- {/ N _: N
与服务器有关的属性:例如:
, m# o* p# w J& t6 ?+ Y2 N" Q+ U/EnableRegistryBoot) @1 A+ k6 @6 A3 N# [$ }
/RpcProtocol1 F2 q5 @& R9 G- [1 x( x
/LogLevel
! y( p7 \. [( ^) S/EventlogLevel 等等 (限于篇幅未能全部列出)6 q5 p" q$ f/ K
与Zone 有关的属性,例如:
" w6 X) K- b. |' W /SecureSecondaries
# a3 B) o, n, a: w5 |* V: z /AllowUpdate: B$ Q; X- F* @" y+ r* R- H! q' s) E
/Aging
8 a9 c) I: Y7 J; e" ? /RefreshInterval Value
- {; o0 `) G L# t /NoRefreshInterval Value1 O" ]7 a$ y6 Y" _: q; d
属性值:
0 { W/ d' A- _; q 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。) A o& n; j9 q5 `
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
2 o9 C+ @# H: z- e 命令: /Statistics% `0 y0 R! L. @* n, e
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。$ f8 O. i( i6 u5 \' i9 x- ]
用法:- e, ]) h# Q$ `& q
dnscmd ServerName /Statistics [Filter|/Clear]
! P$ L$ @+ v5 _' h, L 参数:
5 M1 [4 M/ x: @3 u7 N- OServerName . Q' K+ Q; P* C7 c$ D. O
服务器名称,含义同上。
% M5 o1 u/ |: C- p# q& e可选参数介绍:# ^, V& ] W, D$ S$ P( j' w
共有两个参数,每次只能使用其中的一个。
6 ]1 ]2 r/ k' q( I3 \" R 1.过滤(Filter)
- @3 V( ?" i- q 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。) K# w9 e) D/ C) j3 _7 r, m4 ?2 L
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: }( c f' Y% X; j' \& Q7 K6 _
00000001 -- Time* x* N: ?8 g! q( A( {/ A
00000002 -- Query
9 L1 k5 R, s# C2 _% U( U' G 00000004 -- Query2$ A0 J" }- e6 _* A4 H6 q
00000008 -- Recurse9 W9 ^6 b. M& ~ e
00000010 -- Master& m' x! c) b: e8 p- ]
00000020 -- Secondary
$ x& i) M! |& z" i! E5 Z- ? 00000040 -- Wins
8 D! J5 A+ a t) p" x 00000100 -- Update
3 c% B2 C1 p3 v. q 00000200 -- SkwanSec
: [9 f9 Y, M+ _- ]1 x9 o! r4 F 00000400 -- Ds! }; u O7 z* G4 F% h ?' s
00010000 -- Memory; b {+ k- g6 W3 b+ _7 B! M4 `
00100000 -- PacketMem
9 C: c! @, a" @ 00040000 -- Dbase2 N) J$ }9 t5 ~. I8 B, X7 D- s: H
00080000 -- Records
. |9 F0 q. B. D2 B$ w, s8 h 00200000 -- NbstatMem
* d9 @% E" T; d2 _% ]! n 2.清除 /Clear 2 n) ^; G( ?; q5 r
这个参数用来清除统计信息。
/ e' W& f7 T% J; l: G 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
$ b, I5 f- {. O, I6 I# k+ n- h4 }8 i L+ V7 G7 ], i
2 z7 v4 a- ?* q$ T- j- B( }1 U4 l- K
|