本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
0 [6 ]1 T7 J- o" @: I& S ] 命令: /Info
- L# T; X9 o/ h# G2 g+ V, b 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
4 T3 H1 h& Q8 ^: d4 o" B 用法:4 G# t' H2 k' C6 F: @
dnscmd ServerName /Info [Property] 7 T; w: K. R' ]! ?3 A& i' o/ B: V
参数:
3 M3 V, q1 X; m! F; F ServerName
5 I( d$ }. A U! u6 X! A0 j7 p 服务器名称在上一篇中已经介绍过,此处省略。 ' L9 Q: U+ i- b$ b+ |4 y2 X5 b0 u
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。2 Z8 _7 Z5 N9 h' V# M6 B
下面是该命令使用的一个比较完整的例子:9 y( a' b0 m$ [7 W! b$ r% `, R
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
& S7 m/ T8 E# w4 L0 Pdnscmd 172.16.12.1 /info 只使用命令而不使用参数6 h- C' s1 p* @# z6 ]1 p- d$ \
输出的信息:
D# k3 y& p* C. V- Y1 ]" B2 QDNS Server 172.16.12.1 Information:" Z( n+ B) c/ U. s
C:\>dnscmd 172.16.12.1 /info: @8 u8 n" e& T% }' F! f+ ]
Query result: 查询结果
- ]9 r7 ^# D" X8 A9 C- WServer info: 服务器信息
7 g' x7 W, A6 p8 x6 b* G, X% S ptr = 00074718 端口# r4 I* n: _8 o
server name = myserver.microsoft.com 服务器名称1 Z! @5 M3 E, |, g( Y
version = C2000005 版本
1 L" c7 u" t2 k DS container = c DS“容器”
: M/ j" g: y( g' L- P Configuration: 配置信息 这些信息的含义请参考有关资料2 E2 g, b2 A" r( Q- S
dwLogLevel = 000000008 R1 L: e8 q3 _. ~# i7 M, _9 I
dwDebugLevel = 000000005 ^ t- h$ C* g/ ^
dwRpcProtocol = FFFFFFFF B9 p" I$ d3 Z @1 r1 y ]
dwNameCheckFlag = 00000002
6 |, u5 ]) Q" I: C+ f$ ` cAddressAnswerLimit = 0' \( T+ _+ A: v3 E4 p% j
dwRecursionRetry = 3
1 t8 _1 H' P: q! ^& _ dwRecursionTimeout = 15 E# @8 E3 d% i* F! ?
dwDsPollingInterval = 300
" }* `- |8 B! R0 c Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料' g; G, {1 t) n+ x8 r+ ]( m
fBootMethod = 3 ! A; x ]7 R/ v3 D, S/ R# H+ q
fAdminConfigured = 1 & V. g$ E; ?, S
fAllowUpdate = 1 1 g' x) c- f3 K0 Z' o" Q' B
fDsAvailable = 1
3 h: c) ?5 j4 ^0 c* W7 j, m! \fAutoReverseZones = 1 " x+ X! S. b4 d( B6 ]6 _7 |
fAutoCacheUpdate = 0
0 X! e7 z$ q! B9 s8 |" bfSlave = 0
1 S' I3 x# G2 Z4 W! \! \fNoRecursion = 0 ; c* o+ A0 t9 V% I
fRoundRobin = 1
5 U5 @+ y& G$ h0 S4 QfLocalNetPriority = 1 . h! H$ o/ C$ _* T7 f6 ^% _
fStrictFileParsing = 0
/ t" A4 \& r3 p* ]3 OfLooseWildcarding = 0
# z% i2 V' r* {7 q- @, tfBindSecondaries = 1 6 m# \! b; P* j5 r, e, s$ v
fWriteAuthorityNs = 0
* g; g8 T6 v; }9 ]1 G( w) [Aging Configuration:
) g5 g: l! Y+ c& v% I6 U$ hScavengingInterval = 0 5 m; G! x B& j/ X; |: t; ?
DefaultAgingState = 0 & k/ b0 L9 N2 u4 B# I0 n
DefaultRefreshInterval = 168 + Z. j G0 b S; M c8 i1 A
DefaultNoRefreshInterval = 168 " Y) q2 ~& C$ h$ @% q3 H
ServerAddresses:
6 i( d/ `& ~* f) ?2 w Addr Count = 1
P! s" y( u* g+ a Addr[0] => 172.16.12.1
. B3 m8 @" |+ m% V( \ ListenAddresses:
7 [) x5 }$ B3 t NULL IP Array.
j) m. [- s6 f1 {! D( b Forwarders:
! d6 Z- E) m( l% N# O Addr Count = 1
! `5 U' X F/ Q) g. X4 ?+ a Addr[0] => 172.16.4.3
- B$ y6 p- i. k1 O0 O/ o6 c forward timeout = 5
/ k4 E- M8 B j/ C( t) |4 k) _ slave = 0
$ t4 \! O# \" o6 [9 HCommand completed successfully.命令顺利执行完毕 4 @# ] q1 w5 b
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 % s0 \. o- I1 I0 C8 Z' j
命令:/Config
/ Q' b8 D! u, T" O( o& v 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。9 y7 L* R" E7 l' A" ]( h
9 ^% {0 y5 k7 G$ t
用法:
' D* {+ s, o3 V/ w' \ dnscmd ServerName /Config [ZoneName |..AllZones] Property Value' l/ H# }. U% m
参数5 v1 D0 y0 F' w# j& R
ServerName :服务器名称,意义同上
) k/ T u2 b U! d$ C; m2 C ZoneName:
+ ~% J" W5 R1 T7 k4 I 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 . N f ~, e; i% I
Property:
. a$ r9 J3 Q, ^& E* d* x 这个参数是属性。这里所说的属性有:3 w! K5 W9 V$ v+ q. F4 ^1 Q
与服务器有关的属性:例如:
7 C: K! r' k/ p& S: e6 d4 z/EnableRegistryBoot
! f& }7 ?8 V; S. C+ }6 ^/RpcProtocol
5 C: P) v2 F) ~7 s" F/LogLevel* V+ z6 [/ m3 g. X& I. f5 C% W# \
/EventlogLevel 等等 (限于篇幅未能全部列出)
1 i% J" T8 e7 z4 Z8 D. L与Zone 有关的属性,例如:% Q) y) \3 S8 w
/SecureSecondaries
, {/ K) J+ z( g; R /AllowUpdate1 c: j& k9 I( |
/Aging/ j5 z; e4 N1 m* u$ N! @; e
/RefreshInterval Value9 _4 k% X) Y4 c( v. v& F! O" A# w
/NoRefreshInterval Value
: C0 }! Y' m5 y( ^% a+ ?- Y! i 属性值:6 B6 D K8 ?3 B M5 J% V* @
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
2 G# C0 }* H b3 z" f3 t" P从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。 K4 i6 I, D! n/ p
命令: /Statistics" y# Z9 t7 n& e
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
B' @9 [$ j8 p1 i 用法:- ]) U: n6 D0 f1 t' b# Z; ]
dnscmd ServerName /Statistics [Filter|/Clear]; ]: `! d9 {3 B
参数:9 c: H+ F- _: n# }2 Y
ServerName , M4 o' n1 H& y& ~2 `) b* \
服务器名称,含义同上。
) s; b9 t/ Z$ B+ S" x2 l1 m可选参数介绍:! c: f4 V7 i) ?& \; d6 n) s" |: m
共有两个参数,每次只能使用其中的一个。7 @& J, G0 q. \- e) o: L
1.过滤(Filter)# |' t5 g) H, U9 ?- [- F. y( M
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
1 Q' d) \# c) z, [可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 8 Y+ \4 h* E$ r" C4 g, `" `
00000001 -- Time
. u( @& x% U. | 00000002 -- Query$ K3 A0 B8 Q. J" K
00000004 -- Query2, ?; c8 I; C4 {7 I
00000008 -- Recurse
g' F9 e1 u& }/ e6 @& Z 00000010 -- Master$ A: x, q2 ^7 d" k9 B2 T/ y9 D3 p
00000020 -- Secondary
6 O, Q6 s: x/ b$ i' e' Y 00000040 -- Wins" r3 B r. }( g$ h
00000100 -- Update/ D) O9 [: a/ B
00000200 -- SkwanSec
9 m2 G. O4 P& A8 O4 j 00000400 -- Ds" Y0 R$ T5 O! o# t- r* o
00010000 -- Memory
$ `, \- N3 }% `4 w; S$ }+ ]4 }7 K8 x 00100000 -- PacketMem
7 d( P2 a( j9 s6 c5 u$ l, l8 X 00040000 -- Dbase! w' w8 x: V9 O y
00080000 -- Records
% K; A/ G9 ^( [7 v5 S 00200000 -- NbstatMem5 M! m3 ], z7 {1 T- e! r* N# ?
2.清除 /Clear 6 |& I* l/ N) P: K5 O$ V
这个参数用来清除统计信息。+ j" [& ~2 u% i$ _4 z
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
0 D. |6 \% p1 L1 o$ D4 U! {
& x" S- J& Y$ {) w. {4 a% s
/ Z( R9 Z$ ^+ w0 b. c! W* }( v9 m) X
|