本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
+ a4 r+ c% e2 n7 U; n: ]' [ 命令: /Info , f' B0 K1 o8 P! K
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。' ]( W6 ?0 _- h7 i5 t( E2 S) L0 c
用法:
8 c- {+ Z' n4 d" ~0 S dnscmd ServerName /Info [Property] " F) r4 |' h. x5 ^% u1 h
参数:
) N$ h5 a( f; C6 Q. ?2 y ServerName 3 P1 U! w( M/ W! Y# L
服务器名称在上一篇中已经介绍过,此处省略。
9 J; I" \& R$ u% Y% I* X [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。/ S" ]) ^ `9 h: F
下面是该命令使用的一个比较完整的例子:
6 ?/ E5 e5 c% \7 |+ j 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
9 r, s, P3 Z! E" }* ydnscmd 172.16.12.1 /info 只使用命令而不使用参数# Y; v" j9 ?2 b& R& [4 |) E; {2 c
输出的信息:
1 T0 ?4 ?- H" d) z6 ODNS Server 172.16.12.1 Information:
k( U! [3 m5 |) {' iC:\>dnscmd 172.16.12.1 /info* e$ V+ A& T5 g2 d" z
Query result: 查询结果9 w. B. R5 o0 t! Y4 M" G2 L+ H
Server info: 服务器信息
( z0 w; g8 _& ?" A9 P5 H ptr = 00074718 端口
" X3 z' \0 Q1 A, |5 [ server name = myserver.microsoft.com 服务器名称
' K& W4 Z; X, |8 B version = C2000005 版本$ d3 s/ n$ Z% D6 C0 O) ?+ `6 A& U
DS container = c DS“容器”
/ C0 B: Q: H* A0 }7 d* [ k& f Configuration: 配置信息 这些信息的含义请参考有关资料
' o# V" s0 A# K2 x dwLogLevel = 00000000! C" H/ u! N6 j) d5 C5 N: t
dwDebugLevel = 00000000
8 l& Q8 z, f% L6 I dwRpcProtocol = FFFFFFFF6 O2 c: V8 g% p8 h
dwNameCheckFlag = 00000002) @1 \/ g+ }; E; U' c* l
cAddressAnswerLimit = 0
- i$ n1 V8 [" a% H- f; L& \ dwRecursionRetry = 3
; p0 ~1 a) g% W* }: H# x Q+ d dwRecursionTimeout = 15
9 _0 @/ I+ D9 L) j) p) @' o9 H& z3 J dwDsPollingInterval = 300
- w7 g" m# O- `( F5 k; ^: p( w8 Q Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料, w& j" L; E) Y
fBootMethod = 3 - L' V2 v) {/ V9 X& y
fAdminConfigured = 1
; L" Z2 v0 z. @5 x: Z* F& }- x6 kfAllowUpdate = 1 8 Z3 |1 g1 r3 V. D" q/ N
fDsAvailable = 1 * [0 o$ h* Q' v6 B- K" x
fAutoReverseZones = 1
" u4 W4 ^$ t3 b8 S1 k2 SfAutoCacheUpdate = 0 + j& }( O2 P2 v! K3 G
fSlave = 0 5 _7 z b! S; M0 O& p5 m
fNoRecursion = 0
. {; o' u! A1 [1 i: ?$ }6 PfRoundRobin = 1
( {2 S! f% f3 N4 g" j9 k, OfLocalNetPriority = 1
9 O8 P- E8 i0 M! @4 t& q: B! g* Q5 [fStrictFileParsing = 0 & @# t$ Q& |7 p* A# H r
fLooseWildcarding = 0 : _. A) T0 {$ e! o
fBindSecondaries = 1 : u; W; r" y& |6 Q5 O7 C
fWriteAuthorityNs = 0 2 V( G. x) @6 z
Aging Configuration: 4 l2 l6 ^2 G2 j+ {; {: D
ScavengingInterval = 0 ; |5 l7 c4 S& S7 U
DefaultAgingState = 0
7 F: p# ]) w; t0 Q5 x+ `DefaultRefreshInterval = 168 # r' Z5 v$ p7 E, I, i
DefaultNoRefreshInterval = 168 0 G- Q/ N- n- X
ServerAddresses:
9 z/ {' U, h; P Addr Count = 1
5 ^8 P' @' u9 F( t) b- L, N% Y' E+ C Addr[0] => 172.16.12.13 r ~9 c9 f }/ R9 I5 |
ListenAddresses:
$ [8 B+ o5 q; \0 s NULL IP Array.
, v' F% m' l' l Forwarders:
& W- X2 _% p# W Addr Count = 1
/ M8 ?7 r% ^: s- u1 s Addr[0] => 172.16.4.3
0 _" A: \8 x( H/ w/ I forward timeout = 5
3 j4 X( Z6 _5 A. S( I- v slave = 0
+ @( R7 [/ [. Y- l+ g% r6 V5 F5 @Command completed successfully.命令顺利执行完毕 * m4 Z6 F T8 W7 Y' g8 c) o8 u
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
# f* R* ^3 i2 d; o W 命令:/Config
! g' o3 w* @& Z+ f6 c( w1 Y4 F 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。7 _( G3 P, m; V! q
/ P5 A$ K; V! ~$ S, e6 ^
用法:" _: P) M/ Q$ i1 K$ P; s4 K
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value. v; d! [( \, _' B6 ]* d
参数
D6 s8 Y7 t" M/ X+ L( B ServerName :服务器名称,意义同上 " ~+ H6 N8 @( {! \9 g
ZoneName:
. ^$ O: ], h a4 E 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ; ^1 f5 p+ X" i, e6 M
Property:
& E5 X A# c6 O* f1 { 这个参数是属性。这里所说的属性有:/ v" R' U9 z0 ~+ A4 T+ P* k, r' A3 O9 N4 S; v
与服务器有关的属性:例如:- ?: Y: `9 _: A, h
/EnableRegistryBoot9 M7 r# B+ ~5 x. u: q
/RpcProtocol
' S2 _8 {1 H* ?/LogLevel( X g: d+ R5 T9 x2 B' N
/EventlogLevel 等等 (限于篇幅未能全部列出)
* U( R( Z h7 r/ m* i5 k与Zone 有关的属性,例如:' G; `, {6 |2 S. H5 V2 a
/SecureSecondaries& }: ?8 A2 H1 d6 c5 w9 W. l
/AllowUpdate
9 c1 U0 i! O% Y /Aging
+ A& {" H. V9 y+ j; Q0 Y /RefreshInterval Value
5 I6 x+ B; A# y4 g/ m /NoRefreshInterval Value, R( |( j9 T0 x+ `: C4 P( V! a8 ^! }9 W
属性值:
: x$ w. ^9 S1 H3 i1 ?) h 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。9 A m0 @7 l8 l% I0 |* E# q
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
' p. W2 A1 N, ^5 T4 K1 C8 T 命令: /Statistics
* a5 R K; O1 C) L! y 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
' ?- c* N/ A e. H 用法:# k3 P% V8 c) h7 M n0 n4 W
dnscmd ServerName /Statistics [Filter|/Clear]
8 Z$ B8 i0 D! x6 ~3 ^7 [2 G- n% W* Q 参数:' I1 `; ^9 g5 O/ w
ServerName ) {' T' x: @/ Z5 Z
服务器名称,含义同上。/ s" Z% E5 }. P( {. H
可选参数介绍:% C( H$ b& V! J
共有两个参数,每次只能使用其中的一个。7 H, G/ S' ^ S4 v
1.过滤(Filter)
' N8 \3 u" u8 v 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。( Y- s3 ^4 O Z% A4 f1 }! P3 d- N
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
3 w; j, Q9 \# T! y0 s8 F" E5 h 00000001 -- Time
8 r6 s M" |! J* C! Q 00000002 -- Query
; O: m5 R+ P* g9 S6 [/ j2 B 00000004 -- Query2; J5 y' S! B, l6 h5 X
00000008 -- Recurse, e" }+ p6 e0 a" t+ S: P) O% d g
00000010 -- Master
3 p8 a3 ]$ J* T- B4 f# X/ i: ] h 00000020 -- Secondary3 N8 D2 L( @9 ~7 [
00000040 -- Wins# E# `4 }( g9 _5 e' W2 G2 h
00000100 -- Update- L2 a; B& d1 S5 ]7 t5 s2 I* v0 A
00000200 -- SkwanSec
: S3 W5 V! x+ m$ ?6 f" ] 00000400 -- Ds3 k& A$ {$ p, X" z9 W
00010000 -- Memory
: C k1 q; V* c6 I, s 00100000 -- PacketMem4 F: j+ {6 e2 c1 Z& @
00040000 -- Dbase
1 Y, O, O |6 m% i- M n- e6 F; b2 \4 C 00080000 -- Records
: h( o0 n0 k% ~1 k; q 00200000 -- NbstatMem% |7 h0 Z- j F) U D* V8 l
2.清除 /Clear 1 w; j% g7 r9 b H }
这个参数用来清除统计信息。: q: L% @5 u1 ~+ x
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
. \0 N$ L) t" j6 L' j) e1 {' ] F
! i6 c7 q" r" H2 R2 F+ S
r W, V! l9 D8 {( P2 Z) w
|