本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
8 b$ [, S" I( N& s4 j 命令: /Info ) ^: N; H- X4 I1 g# Z, `$ i
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。+ W6 }( M W( |3 Y; D
用法:0 f( b' u9 w( ^- J6 d
dnscmd ServerName /Info [Property]
% o+ @. t0 c- r) N 参数:4 G b( c$ j7 q* C6 ^: {
ServerName
( I) g* s; ` G. A# a 服务器名称在上一篇中已经介绍过,此处省略。 0 A( L! T& U: [
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。" p) Z8 a2 _1 n5 B/ U! O9 z
下面是该命令使用的一个比较完整的例子:
" o; X1 w# t1 } 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
0 h3 ~% R: O6 f6 V% Y& [9 s. [dnscmd 172.16.12.1 /info 只使用命令而不使用参数/ F C1 Q" @5 T, M
输出的信息:
/ L3 n; i% q" i- Y0 E% @) i! C- V2 i nDNS Server 172.16.12.1 Information:; }: z$ Q l+ ]( ]' W6 P, V* e
C:\>dnscmd 172.16.12.1 /info7 m0 o4 k3 v2 g+ W4 H% j6 c1 R4 K
Query result: 查询结果. H6 k7 k0 n0 I; r% X
Server info: 服务器信息
4 E" t8 u& u7 B- x ptr = 00074718 端口
2 h2 J) ~" r& Y) V server name = myserver.microsoft.com 服务器名称
3 i/ }/ R' K. X' `- ^! X version = C2000005 版本
- a, m7 l; T. E2 k6 L( w DS container = c DS“容器”
5 @3 ~$ P8 F% @& A! N2 N8 G Configuration: 配置信息 这些信息的含义请参考有关资料8 O) b/ n3 R* Z) `4 C8 e
dwLogLevel = 00000000. w3 o. E! z( ~6 W @
dwDebugLevel = 00000000
+ d t* N! ^0 D* N3 L7 C+ G) s dwRpcProtocol = FFFFFFFF
) c, o* I0 C: h! E: j dwNameCheckFlag = 00000002
5 n3 h3 w- _$ [, u; j4 \ cAddressAnswerLimit = 0
. S+ W& b# Z* d) z2 T! O- A dwRecursionRetry = 3
8 }, A: N n& f, E0 [; ^ dwRecursionTimeout = 15( S, j" f7 c6 F' t
dwDsPollingInterval = 300
. e! V& E$ H0 [ Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
) x& H! f% V* j0 U5 @: a' l/ X$ ?fBootMethod = 3
! W1 u8 B1 ~; D" @ y7 t: ZfAdminConfigured = 1
* r" X* ~" A% [+ _fAllowUpdate = 1
# p! j+ T2 \- k tfDsAvailable = 1 9 U2 T1 s1 ]) Q
fAutoReverseZones = 1 " y9 d6 M/ p: l0 f, p. C! y# z
fAutoCacheUpdate = 0 & {" R ~$ k. u* O8 r: {
fSlave = 0 $ O9 U2 Z5 r5 s0 X
fNoRecursion = 0 ) R5 v5 h! Y. q
fRoundRobin = 1 # D/ C% Y1 P( I' [
fLocalNetPriority = 1 2 l, [! U6 z) A" ~7 I$ @& z: o* u
fStrictFileParsing = 0
( A8 e5 F$ l% w7 @8 H7 _fLooseWildcarding = 0
- a2 P I* f, a" ]8 RfBindSecondaries = 1 , H9 B6 L, K0 K0 F2 R" n
fWriteAuthorityNs = 0
1 Q8 [% s# H6 i; cAging Configuration:
4 O3 O; ~7 \5 `" s% O' N4 `! x/ oScavengingInterval = 0 ( ~/ p8 o7 t0 c0 y
DefaultAgingState = 0 * @1 M; f5 y9 e8 H( n/ p3 }
DefaultRefreshInterval = 168
/ J1 i7 f( J6 c7 o% Q" s5 x7 TDefaultNoRefreshInterval = 168 3 h) O* k+ u0 u! F0 ~
ServerAddresses:
) m! w; y2 Y+ o0 X* x Addr Count = 1
" a$ b2 ]' G8 s0 h6 d4 Y Addr[0] => 172.16.12.12 _8 T( B% |, ?# g
ListenAddresses:
$ g- ^# V# `* b8 B% F NULL IP Array.
! B/ w* J: |5 _2 C) ?3 ?& a$ d Forwarders:
, f! p. A4 E9 K# x Addr Count = 1
- b) X/ f. ~/ b; c/ q Addr[0] => 172.16.4.3, ~1 K$ L) S5 \7 R/ G- |, S; |
forward timeout = 5
% y' Q2 H1 \. N" @" [8 A3 i slave = 0% W$ k K7 P' J4 n
Command completed successfully.命令顺利执行完毕
: i& Y; x3 J7 K8 \& @' K8 c" c9 | 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
B1 u3 B7 ?, z: N! c/ E- N 命令:/Config
/ M6 a6 k; b6 C& I3 w3 ?% U 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
@; j) j% U( s* J3 |" Q( H( |, u# k
用法:
) ^0 g9 X: u. W9 Z# ^: [! g dnscmd ServerName /Config [ZoneName |..AllZones] Property Value3 t9 N# A/ z) w ~1 U' D) i5 [3 u
参数
8 o2 p2 m. C; B6 E/ D3 r7 t+ I ServerName :服务器名称,意义同上
/ ~ k, C( K \" ~" T ZoneName:& a& P# V1 \5 J" n0 |0 w
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 3 e# }; d7 M T2 x
Property: 3 N, B$ y9 ?1 J
这个参数是属性。这里所说的属性有:( k; n" ?* S, P8 W6 s. }1 l
与服务器有关的属性:例如:
* F; H6 v- |. n0 s( K/EnableRegistryBoot
1 M7 Y, J5 y* r; n( v, H7 }& _/RpcProtocol/ a) R3 z1 Q3 f) C+ v# F3 k
/LogLevel0 E8 x0 x3 b9 `( R, y) d: r8 A5 X
/EventlogLevel 等等 (限于篇幅未能全部列出)
5 M; n1 g; M6 v0 [与Zone 有关的属性,例如:
- W( F8 r D" p- \. u /SecureSecondaries P+ m# P; x4 X: ]# _/ |
/AllowUpdate
' _+ Q! m, j8 ? /Aging" ?1 S: D) e( o. U4 U; d2 b
/RefreshInterval Value
3 c" s* j# j/ Q2 w( e /NoRefreshInterval Value2 Q5 @ X8 R" s
属性值:
6 T/ ?8 l- u9 ]6 l, d' y- d 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。" z+ I/ L& `1 ?& D& Z! Q- \- J
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。, E$ F6 f+ Z1 i
命令: /Statistics3 @4 D- L8 ~4 w t; y
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。! x& V& E6 e4 j# K! Y2 a# q
用法:
* l9 \( e' U) @# G6 Q0 k dnscmd ServerName /Statistics [Filter|/Clear]+ W% i* O. B" G. x+ n, v* U
参数:
# M( G+ m; Q- n& r/ p4 PServerName
. a% n- g. r# N- D4 }5 G+ r服务器名称,含义同上。) ]/ @& N: N; ?/ d1 Z9 w
可选参数介绍:/ b y, ~1 L& C+ g) H4 l, y
共有两个参数,每次只能使用其中的一个。7 w% [" r/ [( U/ s' ^% A" V
1.过滤(Filter)2 ]# C9 s/ I* h/ \" R
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。0 y; w8 }" {" O' x0 u4 D1 B n
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
& h+ P( ]4 q$ Z- _9 o* ~+ c 00000001 -- Time1 `- l2 {# L% l
00000002 -- Query
, i3 ~. r* ~& F% D0 |1 g% u 00000004 -- Query2
# M- j7 E& k% |! ]$ l. z 00000008 -- Recurse& g+ g2 S: h* ^5 R% T4 f! m* E, g) b9 d1 K
00000010 -- Master( \2 x) L- {& M, b. Y
00000020 -- Secondary/ q' J. D; o ^& B! }
00000040 -- Wins
2 F8 b2 [1 E+ t c q0 r8 E 00000100 -- Update# S3 y4 G' @; H- ^' u) U, t
00000200 -- SkwanSec
# O8 b4 M& s3 e/ ]$ j 00000400 -- Ds, x! s! |7 J, B( ~- ^
00010000 -- Memory
- e t' z u, B+ ]# j 00100000 -- PacketMem7 c" q3 k) y* k. ]3 k
00040000 -- Dbase
+ v# v; r' h6 } 00080000 -- Records
4 ^5 J- a! a M 00200000 -- NbstatMem6 x" W' t) E' F8 g$ r
2.清除 /Clear
8 {- J7 f6 X8 f" C 这个参数用来清除统计信息。
7 {; v/ F- ?) Q$ x8 N 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
! {1 J2 K# H' i2 N' T3 y3 P0 @$ J6 {' O
# N+ E& M" T: c
) S2 |+ y( Q8 a( }" X c5 y& X
|