本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
# e" h" i' j6 F2 F 命令: /Info 4 j7 O8 `5 m& X7 \# }
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。9 Y% M9 y5 o/ }! g$ x
用法:
; P/ o5 n! {! k( s% U( ~ dnscmd ServerName /Info [Property] 0 a! O b- w s, v' P, F
参数:9 e- R! ]3 c1 S2 @% T' N( U/ z
ServerName ( Z1 `9 [# A t" Z' }5 o/ a
服务器名称在上一篇中已经介绍过,此处省略。
9 N! B2 K% s3 p) q [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。1 ^* y5 E3 T4 C
下面是该命令使用的一个比较完整的例子:' P, I4 r" c1 ~- x
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
- |) A" F( e2 j( @( Z/ A! Adnscmd 172.16.12.1 /info 只使用命令而不使用参数2 M: g* Z6 f3 z8 ?! [; _
输出的信息:
1 _3 ^2 n, o* d! J' {5 g- b+ DDNS Server 172.16.12.1 Information:( u! ^ l. k( _6 X2 D1 M* W2 n8 R
C:\>dnscmd 172.16.12.1 /info
' t: G; N# l+ f* d' c8 H' v, ?$ F5 cQuery result: 查询结果
% G# e& ^( E0 {5 u# O8 ?Server info: 服务器信息' H; U# y% L, i9 _
ptr = 00074718 端口3 p& M( v+ C, b1 V3 {8 }
server name = myserver.microsoft.com 服务器名称
/ x Y* \& ^1 {1 v2 \" p' k5 P version = C2000005 版本
5 x* U2 |3 J* k# T% N DS container = c DS“容器”
" j/ V, n1 }- A3 l! v, Y% B Configuration: 配置信息 这些信息的含义请参考有关资料: K7 P( f J' r, N
dwLogLevel = 00000000- |5 P( E) P* i0 W, W6 J. m
dwDebugLevel = 00000000
) t: s: @4 E8 e/ C" t m) ` dwRpcProtocol = FFFFFFFF& g* S% Z" u: ^; |
dwNameCheckFlag = 000000028 B& O8 E5 |9 F5 w4 u8 }5 ]
cAddressAnswerLimit = 0 s" J% }4 X+ ^" y. X7 @$ w& {4 ?
dwRecursionRetry = 36 w4 r1 p' b: A9 o+ o
dwRecursionTimeout = 150 y# q7 k: q4 m9 W8 u& D0 X
dwDsPollingInterval = 3008 ^9 i# {! ] G1 N% ~3 u% H; A$ ~
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
$ V0 `9 H8 j7 vfBootMethod = 3 2 \* r" w* e1 b& R$ v* F
fAdminConfigured = 1
( s6 z4 ]5 c# u' lfAllowUpdate = 1 - h( Y* n" i" j' X! }/ ~
fDsAvailable = 1
4 V/ F9 N% r0 A: jfAutoReverseZones = 1
% [! j F* i3 J, `% C; N9 {fAutoCacheUpdate = 0 0 K; R3 }) B# Q) f
fSlave = 0 $ Y, k( ~0 k* Q
fNoRecursion = 0
; q# l: ~% F7 @+ w( T& qfRoundRobin = 1
: r& Z7 G$ n/ _: NfLocalNetPriority = 1 3 q- J6 e l/ A& p+ ~1 O# {! f1 K0 F
fStrictFileParsing = 0 ; r5 I& I9 P. @. \+ v6 @% h1 G
fLooseWildcarding = 0 2 {! w9 S/ n3 E" }5 D+ e& `% l
fBindSecondaries = 1
. }" M1 q/ x# a- M/ y! X! _fWriteAuthorityNs = 0
1 L, f9 X! M/ A% lAging Configuration:
- _3 H. B# u2 xScavengingInterval = 0
; [ C# |, |' y" I! Q9 ]$ xDefaultAgingState = 0 9 _4 C' V6 K' g2 @( u# ~$ h' K' ^
DefaultRefreshInterval = 168
" ^8 c$ o2 @5 D( N5 vDefaultNoRefreshInterval = 168
+ O! U b. @* ]( f2 ~ ServerAddresses:
7 g* t# O: R* d0 r! W Addr Count = 1. C8 _( O ]1 A7 E' Q1 Z
Addr[0] => 172.16.12.1
( }8 t: d& ~+ h' w5 ~$ v ListenAddresses:
5 y: W$ v6 [8 R7 z$ j NULL IP Array.7 l3 D' z3 E3 Q* S* d; Z# m
Forwarders:& d0 l5 n' m! s
Addr Count = 1
2 @$ n, V' S% n" K! B. _: _3 J Addr[0] => 172.16.4.33 }2 w a% ^5 b+ b/ S6 U
forward timeout = 5: N! d, g! O2 m
slave = 0
3 }! d5 R" e& `: o( [Command completed successfully.命令顺利执行完毕
. o6 s( ^2 I% G( e! Z 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
0 g7 S: K% S; m' i( l 命令:/Config* b% @5 l" e* o
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
9 }& R- Y. w6 g: E6 B0 g" [7 ~9 g; O2 @) D+ N6 S5 ?1 y$ a
用法:/ d/ a, L; n6 s
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value4 U4 i. |0 v3 Q w+ o+ ^1 V7 J
参数% h6 u$ T8 M( g% S4 G% O3 E
ServerName :服务器名称,意义同上 7 v' J. I' m1 ~8 A
ZoneName:
. G$ ^2 ^+ u+ k1 D7 E0 Q% b7 I, ~ 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 0 u% T4 v$ F1 m% A2 b
Property:
; K4 ~4 E1 ^2 V) u; O q; K" A 这个参数是属性。这里所说的属性有:% \ y8 L& Z) y1 D
与服务器有关的属性:例如:
4 ]* Z/ t% U" r' ?/EnableRegistryBoot
. |4 O% L0 O& ~8 c' j% s$ j9 x/RpcProtocol+ R' J7 n* t; _( @
/LogLevel+ P; C' D/ ^; o: l0 v4 t
/EventlogLevel 等等 (限于篇幅未能全部列出)
$ U7 R+ X- h: | X2 T6 Z* |与Zone 有关的属性,例如:. t1 R( v$ W# ~$ I
/SecureSecondaries
) R( D: l/ d0 v8 c/ @* m /AllowUpdate8 U# e3 j5 G) A5 W7 N+ W' W- H B# ?
/Aging) O; O2 `/ ]8 a3 e. v. ~
/RefreshInterval Value
& P9 \( B$ K- t' n+ K: D, V /NoRefreshInterval Value! [8 L, O, R1 y, N4 ?
属性值:
% p3 R! {! _, w1 m" s# I$ I T1 b 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
% i1 C: W) L5 r+ U. q- p4 ^从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。6 T5 s7 Y* `! l* a3 U+ t0 p
命令: /Statistics1 A( X2 _( a0 r7 q" [. |
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
8 h9 Z8 U. {! Q 用法:
2 G! x" @" L# x: z dnscmd ServerName /Statistics [Filter|/Clear]4 g3 b, R* y/ x. F/ r
参数:
' x* Z# M% T: e0 ~9 mServerName & d9 _: b& O* h/ V1 m1 l5 T) N
服务器名称,含义同上。1 p/ N: P: u8 Y$ S" j& V
可选参数介绍:
+ r" [% @2 u* a" M共有两个参数,每次只能使用其中的一个。1 J ` r1 \/ a6 z9 ?( d
1.过滤(Filter) w- E/ _9 R+ i+ Z1 I4 k
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。; V2 _6 p; H& }1 }1 C
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
% ?6 \8 g2 ^8 d/ z& g* m 00000001 -- Time9 M" x! D! d5 A# k: S) i
00000002 -- Query
9 ~; f! G: p+ _ 00000004 -- Query2
& q v. M+ l# n/ E" J 00000008 -- Recurse5 c& i6 E# B y7 R9 L
00000010 -- Master4 j; r+ b# |7 v# f' e
00000020 -- Secondary
( a. J T% p7 r6 B! u' U! ? 00000040 -- Wins
* a+ n: S4 q8 t4 t. g: O 00000100 -- Update
$ b" Z, E& \; ~1 y; |, l5 b9 a7 h, ? 00000200 -- SkwanSec& Q2 r2 ^: a) y3 g
00000400 -- Ds+ G8 I, A/ |# ^6 o
00010000 -- Memory
8 I! Q/ m* \; g5 T' |. u6 C- V 00100000 -- PacketMem
3 q* m# c9 V6 w+ Q5 O9 p' N% z9 { 00040000 -- Dbase
7 W6 w6 k! q- D7 b) p 00080000 -- Records
; |( F' ?6 h n/ t8 ]* `3 e6 `( S3 t 00200000 -- NbstatMem# L! M( V c' Y+ P% w$ f* m. F
2.清除 /Clear * |$ p3 T* p4 f# w! o
这个参数用来清除统计信息。
5 j& L# k; b: Z9 }5 w6 w! B 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
& M! O9 F/ c0 r7 ^0 K% d/ R5 ^( S1 f; w& W& D2 O3 L
1 L# m" g' y& q- ? K+ r
/ ]9 _9 _- F( c0 j |