本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
' I3 z4 Q( ~! `* h 命令: /Info 1 C) R" ` A: Z; v
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。% A5 d% W0 k/ D+ t$ v6 {7 j/ Z7 ~
用法:1 {. }3 n3 Z! G4 c, t% x
dnscmd ServerName /Info [Property]
: p3 q; r* w7 o( ?$ [2 M 参数:
8 B, l! [+ J6 `7 t& j: a ServerName
. B, l! V: z: @0 ?% X 服务器名称在上一篇中已经介绍过,此处省略。
3 L! {- k9 k4 C' k; H! ~ [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。0 d: o7 m! l0 L$ \( a, _
下面是该命令使用的一个比较完整的例子:
2 l/ S- ~& m6 v3 q$ |3 k& ]4 y 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:! W b+ \& S; l9 o' ]4 R- Y9 [
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
4 o1 R; o5 q: [* O& P4 j输出的信息:
$ L( [$ f% D! \1 L$ Q V* @DNS Server 172.16.12.1 Information:
9 }2 P9 E4 w+ l1 Z/ iC:\>dnscmd 172.16.12.1 /info- Z# w7 C, [: S8 [. ]
Query result: 查询结果1 ~+ W; O9 e, \9 X: g
Server info: 服务器信息
" v: C& i* O' N3 y( f' M ptr = 00074718 端口
0 \( M8 I0 k, K% @8 ^2 f server name = myserver.microsoft.com 服务器名称3 V- |- n( ?5 L8 d; G* o, V
version = C2000005 版本
$ `! b& b0 i2 ]$ Z% ^ DS container = c DS“容器” Z% c& |" t; O( O' s
Configuration: 配置信息 这些信息的含义请参考有关资料- B n% r' M2 s+ Q# b) h
dwLogLevel = 00000000) w5 m6 B, J2 A1 p8 y. r$ V
dwDebugLevel = 00000000; a( i. T$ Y- K9 A' ~
dwRpcProtocol = FFFFFFFF: m- i( b: ^' L' H
dwNameCheckFlag = 00000002
7 j2 L3 X6 |! s b4 U1 I5 c+ N cAddressAnswerLimit = 0
, H# m& }# e) h9 Y* k. ?" u dwRecursionRetry = 3' [, q7 Y6 q4 a# Y; f( D: g1 ^- ?
dwRecursionTimeout = 157 v1 N6 Y: A- N, c* f1 a
dwDsPollingInterval = 3001 x6 \" H; V: d4 ~2 Y- E: p5 B
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料% _, j$ l9 A# _5 H
fBootMethod = 3 . R0 G2 z2 m% o
fAdminConfigured = 1
' N# G( o; {) _0 R: Z: H7 \fAllowUpdate = 1 8 A/ Z" D4 y5 B# O4 d
fDsAvailable = 1
* G" }, S6 l0 k* u* x0 ?fAutoReverseZones = 1
5 ^1 G$ l- N* _, R' d8 EfAutoCacheUpdate = 0 : |& E. r7 h# n1 M2 i4 j! H% D
fSlave = 0
6 `/ |8 ?6 G9 v; M0 FfNoRecursion = 0
/ S! _2 Y0 e7 v, M1 g5 G; a) q1 RfRoundRobin = 1 & y) y4 @% E; v# O
fLocalNetPriority = 1
5 Q% Y+ V) E' f2 P8 q* u, Y; bfStrictFileParsing = 0 3 F7 @* ?1 a8 s; ~% ^, v3 ^ R
fLooseWildcarding = 0
. m; y3 W8 n- l3 B' bfBindSecondaries = 1
/ c5 F/ H/ b9 @+ `9 KfWriteAuthorityNs = 0
, |3 Y& w/ K" C" e5 E/ |* s/ a0 r+ M# dAging Configuration: % _) @! f9 p2 O! d% x" t) U; ~
ScavengingInterval = 0 . j+ y. f- J7 {* o
DefaultAgingState = 0 + ^. H6 ]0 E* d, B: C: I
DefaultRefreshInterval = 168 : Y3 e, d7 L( c+ H. O- F
DefaultNoRefreshInterval = 168 4 j3 U, k9 L( B9 W0 b/ T
ServerAddresses: ) N( c( M# r0 W, Y( U' \
Addr Count = 1& r- g; i6 E; K/ y( H7 M$ W! L
Addr[0] => 172.16.12.15 G7 ~1 v) M6 L8 {0 v2 e! n
ListenAddresses:& s3 M+ X; e* M6 ?& [& i
NULL IP Array.
% k5 `) K4 y; y8 l Forwarders:) @: f& o2 X* p. r9 I# K4 L$ x
Addr Count = 1 g& [& l5 l7 n4 c: O6 {
Addr[0] => 172.16.4.3/ F1 O7 Q, n9 k. L! Z1 f' ]
forward timeout = 57 K& V6 n- F7 L! r [
slave = 0. d' k/ d& C' a; Y g$ P! O% m
Command completed successfully.命令顺利执行完毕
1 C9 Q) b- f- S! H* }6 X( a5 m 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
6 ]# b: k* k; v 命令:/Config
, L2 T( ^$ \. G3 i 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
8 @; b, ] p" y: D- S8 \0 l+ H
. N* G1 w+ `( Y7 G t/ F+ q$ F2 e 用法:* Y6 X5 U. d8 l2 @' ]# _7 @( d
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value/ e! Y2 C, F% R/ p5 k5 L
参数
3 ^* {" n' m2 X; b4 U$ ^ ServerName :服务器名称,意义同上 7 ]( W5 k& d2 H4 W+ G% e0 B5 m
ZoneName:
8 @6 B3 y% J) }) P: @ 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
+ g5 B$ Y/ i. D e Property:
5 ?8 K' x( ~2 C( f+ y/ h& C 这个参数是属性。这里所说的属性有:( n' A n: \! t( E( {% {$ |
与服务器有关的属性:例如:
+ c% c3 w0 i- p" a4 H/EnableRegistryBoot
, p4 a8 N4 t2 s/RpcProtocol
* f7 M" }5 y9 Q2 E, w/LogLevel; N8 j) A2 a+ S; C& M* |- C
/EventlogLevel 等等 (限于篇幅未能全部列出)3 l! c. o+ l. P l1 d g( l/ a) O
与Zone 有关的属性,例如:
) s# u: N& b$ O" T! v% U/ [! d /SecureSecondaries
5 z: @: ^1 V) a1 U% W9 [ /AllowUpdate5 l: Z0 y, o/ i' V! e3 L" E3 h9 B
/Aging
# w& m+ p0 y# Q- ?4 ?2 u /RefreshInterval Value
J) z+ K# U. m* d; T /NoRefreshInterval Value
" G$ Y( R' h9 ?: W5 b& v K 属性值:
3 u5 K7 P( G3 W5 t7 ?" N0 W 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
% h0 v/ Z) a+ f; c( R: g3 N7 a从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。' x3 u8 j9 O3 {% Z! T. _1 P
命令: /Statistics
/ `3 p" v& I# J7 \: U' v 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。6 M# N' Q# W7 ^# V
用法:3 W1 }! ^9 M4 `9 S5 _" n. I
dnscmd ServerName /Statistics [Filter|/Clear]
3 b) `1 U7 E0 D: Z% V" t3 N* d ? 参数:/ b% f% ?4 m& A ?
ServerName U, L7 R+ q8 \- |3 H n
服务器名称,含义同上。7 p4 [9 r- R8 \$ W, a
可选参数介绍:3 T6 _0 e. v9 ~$ e) I) l3 |
共有两个参数,每次只能使用其中的一个。/ H" S2 t$ H& o" `8 w: g I& a5 n' B; m
1.过滤(Filter)
/ ~8 ?# H+ C1 b 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
8 `: Z/ B0 L+ c: ^, H5 W可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
^- Z2 r! l2 c9 z) R 00000001 -- Time3 c; _& w0 G+ G, d9 V% q% G) j
00000002 -- Query+ H6 w; P5 R4 X1 K
00000004 -- Query2
S, P* f+ U: _* K5 Y0 W, z A 00000008 -- Recurse: ?5 x8 V' d1 m- p: C* Z
00000010 -- Master
: S1 C4 O# \# Q+ p0 O 00000020 -- Secondary" o; W2 Y C- j' q, L
00000040 -- Wins
^; x' p8 L2 K U$ n/ t 00000100 -- Update/ p' P/ I! F3 p ]+ v( y
00000200 -- SkwanSec
& R* z4 c( B" H) n/ c 00000400 -- Ds
) @2 H1 k4 ?& _5 I$ M& v 00010000 -- Memory
1 f3 Y1 G) _" r5 T0 {5 ` 00100000 -- PacketMem
; J" s; t$ y% t) l( V/ z! I( z8 I6 w 00040000 -- Dbase
! F1 m1 Q# M8 u9 E J 00080000 -- Records
- O! @/ F. {3 ?8 j 00200000 -- NbstatMem3 `: c+ G- [6 Q K. E. a
2.清除 /Clear , y, C9 x( W5 J
这个参数用来清除统计信息。
9 x9 `) @4 p0 l$ `# _8 R 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
8 b4 V5 v5 |6 ~/ |1 ?& o4 _1 b5 |7 Y/ V
' J4 t9 Y3 o+ P0 c2 R
" ^' L! y, }5 T1 Y% E% Y0 r
|