本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
4 X1 L* q$ j8 b W$ W. f1 U 命令: /Info 0 Q! C4 [$ Z9 ~ O* u$ O" ~
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。6 z' x5 P" _5 a) h' }) u, S
用法:# r% G/ X' [: \, j8 S, U, v
dnscmd ServerName /Info [Property]
9 n. j. X! v, N1 }7 K 参数:
3 R- @8 ?' i4 q. h) }8 ] ServerName 9 _1 F# y E7 \2 _
服务器名称在上一篇中已经介绍过,此处省略。 ( ?# V7 h; }3 U& U
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
9 X5 v8 i2 N! L( i. b& l" E 下面是该命令使用的一个比较完整的例子:
1 Y: A' E3 Z) @" p( B 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:1 J( c2 {- ^" E' `* D) k; ]0 W
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
% P4 W" r. A, o) ^4 C; Y, [4 C, f0 n1 Y输出的信息:8 Q$ }4 @% K6 Y2 ]! j8 s* V9 S
DNS Server 172.16.12.1 Information:: ]8 ]! ^6 _' G( c3 {& T
C:\>dnscmd 172.16.12.1 /info
5 h4 p/ @ A$ s3 k4 xQuery result: 查询结果+ H7 k$ Y2 x: S- Y) R9 u- N1 v
Server info: 服务器信息
2 K1 n9 q; T; _# k* ` ptr = 00074718 端口% z! I5 f' m1 N
server name = myserver.microsoft.com 服务器名称
6 @( l) A4 i& V! r" I- _ version = C2000005 版本
2 j; U0 o' g- `' ]# \ DS container = c DS“容器”
( ?; z: X4 R g' K Configuration: 配置信息 这些信息的含义请参考有关资料
6 \1 `4 b* j$ c0 @ dwLogLevel = 00000000$ J( Y) q% g2 i
dwDebugLevel = 00000000
1 O K8 L. Q3 @% H% w) ~ dwRpcProtocol = FFFFFFFF
: O; r8 ^8 \! a Z3 w1 f$ Q dwNameCheckFlag = 00000002
5 C1 P" P7 P* d" b6 C, a& f cAddressAnswerLimit = 01 ?: F. E0 w7 J( E* ?
dwRecursionRetry = 3/ J; V2 v: X1 b
dwRecursionTimeout = 15! i$ G4 d, ], p8 v, h: o
dwDsPollingInterval = 300+ i+ C {% ]+ S$ G7 [- V
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料7 T$ p# u0 M1 i- [
fBootMethod = 3
( N: V6 ^4 g5 q% c; u: J1 k5 G3 t. KfAdminConfigured = 1 - Y, J" @/ A4 v6 D
fAllowUpdate = 1
8 q W! A1 Y M- B1 u( [fDsAvailable = 1
1 c* D3 g% c& f" Q' Z' p, kfAutoReverseZones = 1
* ^0 S: R; E7 ?& XfAutoCacheUpdate = 0
; L3 _8 A9 {* o NfSlave = 0
9 T+ Z3 M4 U' o) e8 UfNoRecursion = 0 " Q. J0 @3 R+ P/ [* E- M; \
fRoundRobin = 1 * x. j5 M& b3 |8 D/ [* I1 ^2 W
fLocalNetPriority = 1
* r# H; y+ O6 v# B$ D9 GfStrictFileParsing = 0 : I" h" ^& l7 O' K9 w, u# _! P) U
fLooseWildcarding = 0 & B0 L4 P! a, d: j( T$ M
fBindSecondaries = 1
- l- b$ N: ?+ R( LfWriteAuthorityNs = 0
0 Y5 f' g' p. z8 p0 uAging Configuration: " J4 W3 H* V& z$ p
ScavengingInterval = 0
0 L! ~2 v' ?' I9 `8 ZDefaultAgingState = 0
, @& u# l% i8 l& ]% gDefaultRefreshInterval = 168
5 _' G; `9 Z1 ~- v" `2 r0 W- FDefaultNoRefreshInterval = 168
2 T1 ]. d& {7 S8 V! I4 b4 X) M ServerAddresses: ( I4 Z" ^3 S5 z2 i0 e. x+ k
Addr Count = 1* n6 P% `1 {% _& c
Addr[0] => 172.16.12.17 b' [7 ^3 V$ g& L! ^- r9 G
ListenAddresses:
, J3 }. m* Z4 \4 b NULL IP Array.8 C6 `# L2 x. ~4 I
Forwarders:
9 [/ q4 L3 Q; K% l Addr Count = 1 N+ V' Y$ ]4 H' @
Addr[0] => 172.16.4.3
1 [( l2 o7 @8 S4 q2 b forward timeout = 5
/ D" D" H6 \# [6 W2 }) w$ t slave = 0
0 v3 l% E1 }, _Command completed successfully.命令顺利执行完毕
# ^0 ^8 g% M1 {& P 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
% n1 z( m/ T. i8 z& C 命令:/Config
9 W3 v) R/ V# i; A7 @6 I0 S 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
* s! ?; u l" C6 p8 E; [
3 A" G8 E- p$ `4 p 用法:
1 e, l8 R, i+ T1 B6 c) q; v ^8 e5 v ` dnscmd ServerName /Config [ZoneName |..AllZones] Property Value' D. \' ]7 U# b
参数+ M1 s+ e& n6 g" K {, U
ServerName :服务器名称,意义同上 - r; {5 `* | ^# b, G
ZoneName:
% {2 M* {1 V0 J/ O# q 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
$ K8 A' `8 n, b2 K( F5 w3 N Property:
2 x- A; X5 M* w# v2 R( ^6 k# s* U 这个参数是属性。这里所说的属性有:4 x+ V4 j# ]2 U* [. \( K
与服务器有关的属性:例如:; o# ?+ t% l- `% g
/EnableRegistryBoot
+ R+ g" S) m& K8 d/RpcProtocol
1 ?- S: A9 R, \# W5 T4 }/LogLevel( J. \( I9 N* y- J9 v& I M
/EventlogLevel 等等 (限于篇幅未能全部列出)
7 w% ]6 y8 q8 W) i, j9 \; x3 L$ ]与Zone 有关的属性,例如:0 O1 {3 V( ^( h# i" P6 \
/SecureSecondaries# ^- B; j) d, o ^: F
/AllowUpdate$ c6 M1 E: r$ L5 n
/Aging* ]! A& h% m" e+ c- C
/RefreshInterval Value8 K( N( Q" }# j7 i& d
/NoRefreshInterval Value
+ F" X; w2 h" R) h4 K. x2 S 属性值:
9 g4 R, n" o5 h$ E$ i4 D- y 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。7 q F2 O( I& Q8 c
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。; F. @/ i( i( h8 e& r
命令: /Statistics
2 B* M& x# z. s/ H* n 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。" b! R3 p% a6 y. T( G
用法:* Z/ }, Z" W/ M4 V( v
dnscmd ServerName /Statistics [Filter|/Clear]
8 Q; L6 z% p6 G1 z* ]. u/ Q 参数:" x9 z5 v1 S7 n, u5 T7 @
ServerName
" p& ^$ b' ]) M* a: ^! S7 X服务器名称,含义同上。( p9 w0 W8 e8 l. G1 D6 ` R
可选参数介绍:
6 d* h0 `# h$ j; H共有两个参数,每次只能使用其中的一个。7 L2 H, P/ r1 s" s i, R
1.过滤(Filter)
6 Y( ~( v6 C+ M& ? 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。- f! P! \: s# |1 l
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
; ~" H( t- |" b% `. [* e8 G 00000001 -- Time5 D. L4 s: p( n' v7 Y
00000002 -- Query" r- K+ m0 N- C3 X
00000004 -- Query2. }* T' e8 y5 I5 Y' {! I( k& E
00000008 -- Recurse
* g! L, s; X3 A% q* r 00000010 -- Master; a# H9 z7 C* ?% l7 F! Y S4 X
00000020 -- Secondary- V) T g8 |1 @
00000040 -- Wins6 b; q4 Z Z- n. Z! @
00000100 -- Update
, S" u* F2 s* G$ A3 R 00000200 -- SkwanSec
. s# e7 H" v: Z2 Z3 A1 \ 00000400 -- Ds
2 b$ G: b( @5 T/ ~ 00010000 -- Memory
; r+ I2 r, f7 R! l+ e5 Q! k2 a 00100000 -- PacketMem
$ W! s. G* M' K3 Y5 y* }8 j 00040000 -- Dbase. @# G* h1 [" ?5 t
00080000 -- Records) t# q- {5 }4 A/ X' F( \8 ~
00200000 -- NbstatMem
+ C# \! O% a) Z* W) ?- g$ }5 F 2.清除 /Clear r: `( g6 p/ O2 |) I P8 @
这个参数用来清除统计信息。
2 A8 D; u3 o7 a( O 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
1 ]/ l# c. W c% F* V; s8 |
7 m* j: J1 l% F0 `4 t
( w$ U, [/ k. ?( L I6 A& E5 e0 l% ], K5 e2 o) w
|