本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。0 o, u8 D9 l2 s7 }
命令: /Info ( c+ A. [, o" h9 x) u
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。- X. ~. K8 w0 b9 j( C/ b
用法:
% T p3 c/ ^/ R8 `/ ^% w3 F dnscmd ServerName /Info [Property]
' F) P3 O& V; \* t 参数:: a+ `5 Q: Y l7 f$ G
ServerName
7 }% Q. j/ N1 v# Q 服务器名称在上一篇中已经介绍过,此处省略。 # b, P" \0 Y7 s, H; ?* u
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。" O) q9 ^' F5 [! @2 g) h# o
下面是该命令使用的一个比较完整的例子:
) C {" d; ?& J( r. I 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:6 o' m& H7 e7 s6 U8 ^! t) q/ n* j% g
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
% @/ w4 l. @$ t- u( |2 v输出的信息:& E, Y3 Y/ x# w
DNS Server 172.16.12.1 Information:
7 a* {5 F$ y$ _9 F8 _" p/ j, {4 PC:\>dnscmd 172.16.12.1 /info8 M8 i/ P' z' `& E
Query result: 查询结果
# i( w% S+ J7 ]; x, g& J& [Server info: 服务器信息2 {' `. n/ g4 z+ F" O
ptr = 00074718 端口5 _9 a, b- L) ^1 ?9 n# J8 V
server name = myserver.microsoft.com 服务器名称8 Y& C8 h, r) U* ]1 y0 p) l
version = C2000005 版本0 |- K' c( u7 ^: Z' y5 D% b9 k
DS container = c DS“容器”
# N* F( C/ B- e- q$ J Configuration: 配置信息 这些信息的含义请参考有关资料; a* P' g" U+ l! N* e) O
dwLogLevel = 00000000
6 m6 L. U9 n! z) M, B+ u dwDebugLevel = 00000000
! X) s, \4 \! Q dwRpcProtocol = FFFFFFFF. e& L/ h: @5 G% N: C/ P2 e
dwNameCheckFlag = 00000002
3 G! V2 y0 h: b! J& q, } cAddressAnswerLimit = 0
. k9 U" D! A+ Q" h2 c dwRecursionRetry = 3 `7 G1 `* Y; m* p) F- F
dwRecursionTimeout = 154 s# S W. Q4 I0 r/ @, q
dwDsPollingInterval = 300
2 ^' K1 O3 j! Q0 \: N; P5 z: N9 @& \ Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料" e) E$ F3 `$ a3 f/ R6 ~4 ?
fBootMethod = 3 ' j- \' ?! F% ~
fAdminConfigured = 1 3 T) x# q7 D) j
fAllowUpdate = 1 * O" p& b6 p7 F% E
fDsAvailable = 1 - t+ j0 f- x2 g" _
fAutoReverseZones = 1
9 J1 Q: C# ^- t$ Y+ f6 H( ?fAutoCacheUpdate = 0
9 x/ ^8 C$ V3 l$ I) e4 w* efSlave = 0 1 e1 t" X- c# C, w
fNoRecursion = 0
7 p5 C9 W* h" PfRoundRobin = 1
/ m% Y z: l+ y- ?3 o( TfLocalNetPriority = 1
8 b/ m2 @( z" J5 ~5 ~1 }fStrictFileParsing = 0
* B( S/ C: }2 QfLooseWildcarding = 0
7 M4 P/ f* J! e, L1 l1 e6 jfBindSecondaries = 1
W+ F! _ l5 p8 u+ {, ffWriteAuthorityNs = 0 $ Y, }, {- k1 O
Aging Configuration:
+ a% X0 p {3 w! T0 q5 oScavengingInterval = 0 & ~- [" y3 s* q9 Y+ j* m5 J3 t
DefaultAgingState = 0 * G2 t: C6 j+ {& P' e
DefaultRefreshInterval = 168
" m: u2 K- o$ e8 m% y6 ?) J& p' jDefaultNoRefreshInterval = 168 9 @2 c. Y7 n& u( L) ?7 n4 s
ServerAddresses:
- W3 o: W# @/ h/ x' i7 I. D Addr Count = 1
9 F) d4 i; t+ r1 h) x( Y% ^ Addr[0] => 172.16.12.1. F" `( N/ r6 R5 X1 E
ListenAddresses:: ~( y' c: z9 ~( i. T5 f
NULL IP Array.
0 C& y) G0 ?; ^ Forwarders:! P% f% [; D. x* K0 I I
Addr Count = 1, |0 ~$ j$ `# L' G9 A a: G
Addr[0] => 172.16.4.3 K" [' G2 }& c, _* K0 P6 y. E
forward timeout = 5
3 x# V) c% d( e% O Q slave = 0. o" ^1 {. Q" O5 {
Command completed successfully.命令顺利执行完毕
6 I2 N( H" @+ [! V9 q- W 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 4 }7 t& D! F2 J: D
命令:/Config
G" a8 b2 y# S3 p 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
, A% r# x1 z, N1 R& W
! g ^/ Z6 p7 h Z+ b" [ 用法:5 F: f1 K$ a1 S
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value% x1 B. ~) @9 ]/ o& d
参数
2 T% }. Y: r1 o- M9 k ServerName :服务器名称,意义同上
6 t2 N0 Z! n/ G& l5 H1 o. t ZoneName:5 v! v1 ]: w+ R+ k& T( F
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
2 Q3 n: k# N' r7 T; o Property:
/ U; D! D6 q& W: _# g0 w6 ?4 b% I+ C 这个参数是属性。这里所说的属性有:: c% b" R0 ^4 n
与服务器有关的属性:例如:
# D; i& p0 e2 [9 G6 F+ h1 N. V/EnableRegistryBoot
# \! {5 x& p& R. E+ k/ v/ S! D/RpcProtocol
- U2 ]: B- V' f/ L- Y/LogLevel% Q8 u8 q; \& y+ ?2 ^, W, Q9 e
/EventlogLevel 等等 (限于篇幅未能全部列出)
% Q5 k0 q$ n# R" U0 E3 f* g! s8 D与Zone 有关的属性,例如:
6 R; x/ }. I" M/ ^ /SecureSecondaries/ T- [# v1 |( [& A/ Z2 H
/AllowUpdate
4 `" F- j7 |4 U /Aging8 L' y- d) ~5 g& r
/RefreshInterval Value
% |$ R5 m; g, x, i4 B: W! m b$ M /NoRefreshInterval Value
8 F2 Y2 b# d$ `3 u9 v 属性值:" \0 B. P7 K" M, H+ i" N
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
g' q+ B, R( j9 Z从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
6 c: n: z! R* Z$ r0 W3 u5 z2 K 命令: /Statistics
) m; Z% d/ h2 j2 r3 m/ `5 M& n% \8 i, R 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。$ |! [/ c2 g) u
用法:
* u' K% A% D& O dnscmd ServerName /Statistics [Filter|/Clear]
! V' h5 M" j0 [- S* Y$ ~( z- d; b 参数:0 c8 v" m/ j6 Q' l% j: j# c* d5 X
ServerName . d$ z8 d( e; c8 p x. c" ~3 d& p7 W
服务器名称,含义同上。
3 i: d5 i) x/ P) R$ \可选参数介绍:
! D8 t+ z' ?0 j: a共有两个参数,每次只能使用其中的一个。; {3 o6 k/ T$ ^
1.过滤(Filter)* R: I3 z* M' x3 c2 D2 F# e
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。& q# a4 {( j4 s; N) k
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
6 \9 e$ [/ v6 s1 `* M 00000001 -- Time5 q( A: Q1 @9 S! b7 z! C" P( V
00000002 -- Query3 U% U3 L) A3 _! [- a% x% J! X0 q2 S
00000004 -- Query2
$ g! Z% E I- w$ ]2 O* ] 00000008 -- Recurse
- `( Z1 U) Z- a( D+ n 00000010 -- Master4 y5 w: @0 j/ ]' O
00000020 -- Secondary
6 r$ t, r% [5 C- v- _2 ^" L8 g: \7 F 00000040 -- Wins! E, ?, g B" U% \0 _$ P
00000100 -- Update3 U& H( R, d8 m% d! P
00000200 -- SkwanSec
" w# x+ J) x5 V5 P& t7 ~ 00000400 -- Ds
3 |6 U8 C: v5 M8 [+ W 00010000 -- Memory
3 Y- Z. X( n9 {: z* n2 C- ^ 00100000 -- PacketMem
6 V. O( X% G* E 00040000 -- Dbase
7 n, R/ N* M5 k- [$ s1 O 00080000 -- Records8 ^ y; S1 P! U8 Y4 o7 D
00200000 -- NbstatMem! q F- t, r& k. H! ~; P) ]
2.清除 /Clear
" s. e' B5 E& ] 这个参数用来清除统计信息。' F* \; @' v1 {4 M
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。. S& w1 G& S$ G' n* G( n8 ?
1 K0 p7 X* _7 f4 F- L
0 v, |) B. @$ r) \% S! }: `% q; g/ h7 h; l+ e7 u9 Z2 w# {
|