本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
9 v% U7 ~4 x8 W! }' e 命令: /Info 3 O @7 h7 D1 Q" e, i O
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。# h4 t/ f# J1 J
用法:; a q* Q+ `3 |& `
dnscmd ServerName /Info [Property]
* a# Y% ~$ |- U, k 参数:! c5 I/ u* R" f$ C
ServerName
7 O, l6 ^' u0 @# z. D7 C 服务器名称在上一篇中已经介绍过,此处省略。
- x* i& ^0 Z. o# ` G [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
! y7 z, _3 C- j) Q$ w% p 下面是该命令使用的一个比较完整的例子:& o% Z2 A: C4 B" v& M9 J0 ]
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:* r, ]% \4 m8 A3 w6 o
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
3 _* g: n# D6 k输出的信息:
" S/ [) z1 @4 u+ I2 jDNS Server 172.16.12.1 Information:, b" J/ K: k4 O9 M- t' Y- m8 @
C:\>dnscmd 172.16.12.1 /info) D" L9 l A% v: {6 ]
Query result: 查询结果4 }/ r( n. ?+ @8 B( U
Server info: 服务器信息
% K8 V; ~. p$ T4 Y9 y# p& x- X( l ptr = 00074718 端口
" p9 d4 m& h* G( e9 x: y server name = myserver.microsoft.com 服务器名称
. C/ X2 l8 u9 ]$ @+ e" V& j version = C2000005 版本
' H% f1 ?! o5 g/ j; Z9 | v DS container = c DS“容器”
0 G/ O& }! b# X" k; f8 @. Y Configuration: 配置信息 这些信息的含义请参考有关资料 |* j; v. y; f+ k6 z* I( U# \ J3 ?
dwLogLevel = 00000000/ [6 {# J9 Z& @! G
dwDebugLevel = 00000000
4 ]9 C, c |( @0 A9 B dwRpcProtocol = FFFFFFFF' g( f" [ j9 p' y* S! L0 w; U/ a
dwNameCheckFlag = 000000022 s; U7 a- P) U5 ` Z$ C4 H
cAddressAnswerLimit = 0
* u7 L5 b) A& l1 p" \7 ?" A dwRecursionRetry = 3
- P( S- E1 o0 _; I dwRecursionTimeout = 15% L# R1 ~- c* C. z: ^3 K; K
dwDsPollingInterval = 300$ P2 T# w! l0 A) {8 s' H
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料, B* x4 E |- H2 W/ V) }
fBootMethod = 3 3 Y8 }+ W' \+ y: V; R$ k
fAdminConfigured = 1
4 |' `& X4 V$ _7 Z6 B4 |4 RfAllowUpdate = 1
# y5 q) I2 _$ B/ z( UfDsAvailable = 1
! {9 H& X6 T. H# q6 m7 k! G) ufAutoReverseZones = 1
5 c; b' y5 T: R- f/ bfAutoCacheUpdate = 0
" ]+ r9 f5 W- JfSlave = 0
" |5 V' {: v0 wfNoRecursion = 0
+ Q: Y0 {( Q, \4 r TfRoundRobin = 1
- O2 a$ u3 K( `6 t5 L" s, k6 o1 ^) HfLocalNetPriority = 1
5 \& W n5 b: F1 ^0 h GfStrictFileParsing = 0
4 S' v2 W2 J: h5 YfLooseWildcarding = 0
5 C# R: K5 c1 N. X" mfBindSecondaries = 1 $ U' U0 I4 u! F( O7 [( t k! u; N
fWriteAuthorityNs = 0 - \1 }1 s4 L- f* c) Y% C
Aging Configuration:
" V9 M, y2 e3 T. K! d9 B; ^ScavengingInterval = 0
& q) Z4 f5 e/ A; Y& |% P( ^DefaultAgingState = 0
: |% B5 P ]6 L, x$ L5 V3 sDefaultRefreshInterval = 168
8 q9 g! ?- `+ Q, X3 ]- U. ^DefaultNoRefreshInterval = 168
3 U6 c- d/ K7 g8 H# a0 i# ~1 d; l ServerAddresses:
6 J" b0 L' }. h; R# @, k Addr Count = 18 {$ o* l- y: E% L/ j5 U7 V* O
Addr[0] => 172.16.12.1: Y6 Q- E& _0 S- N
ListenAddresses:
! y# }+ C. c1 z% `7 p NULL IP Array.$ w8 n' L G* h8 V4 f$ |3 J
Forwarders:
1 }0 h5 e) C" X2 m Addr Count = 1; h0 c: @9 R9 @; R1 w! G
Addr[0] => 172.16.4.3+ c9 b l$ d8 z- F
forward timeout = 5
: K' R9 Y) p# D+ a& F o! \' C7 _- j0 o slave = 0! L) `. u) J3 F+ _7 S" ?4 R5 o t8 P
Command completed successfully.命令顺利执行完毕
1 s7 @$ W3 Y: Y. r6 l* J% [: G 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
2 V6 r3 }0 X. j! F6 K' y" X7 B 命令:/Config; G* N( H Y. `% x; }8 Q' `
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。3 i# m* Q4 t) [
9 T0 e& ^1 c! k( X 用法:
, x3 P/ x. k' u7 [ dnscmd ServerName /Config [ZoneName |..AllZones] Property Value* i4 X" {4 O* e) g* A6 F( s
参数7 i9 \$ @ j$ g
ServerName :服务器名称,意义同上
; f" ~ u$ O% Y ZoneName:. a$ |% A6 s6 \4 z
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ( D# d1 D& X( j7 R0 g
Property: ' d8 G- ]3 N! ?% t; ?, j) t2 v+ g2 e1 E
这个参数是属性。这里所说的属性有:/ V ~0 Q& h, [2 {2 G: I
与服务器有关的属性:例如:
. v7 |1 v0 i& a+ i9 Y7 U( @! U$ z/EnableRegistryBoot
) s: n l: X# `* {/RpcProtocol
. {: Y. N+ j1 a& B. k: D8 Q/LogLevel$ W; Z9 Z& `5 i; a/ c8 O
/EventlogLevel 等等 (限于篇幅未能全部列出)
$ G# K4 h3 O# `0 r0 {( R与Zone 有关的属性,例如:; L Z( V ~: {) o4 ?
/SecureSecondaries# C; M* r' U; j4 ^6 c
/AllowUpdate
& R* U" R2 a1 o! `1 y% e' ?- p /Aging/ D0 A8 M. K/ \9 H) d
/RefreshInterval Value
4 E' M* O. ]7 {0 _ /NoRefreshInterval Value0 [) g8 O: j+ { v6 w: D
属性值:8 U; _: @1 [! a4 w/ o
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。+ x) W5 M" N0 x, H+ b) t# ?! k
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
1 S: T5 N6 L+ c; f1 m 命令: /Statistics8 |* R9 H# @! j" \9 j' D
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
8 v: u5 E% U% O+ q! t, ` 用法:
; U4 R7 f" V( D4 t2 l7 ^ dnscmd ServerName /Statistics [Filter|/Clear]
% c7 \2 }! n5 `! h# V1 d8 w7 u 参数:4 o% U# A4 I* ]% s/ V& J
ServerName
# e$ D9 `4 k0 R6 l服务器名称,含义同上。
8 o# @ }7 [* w& u0 m, i$ W3 O可选参数介绍:' l+ w# f. t6 M# s
共有两个参数,每次只能使用其中的一个。
6 r5 F( f* g* c! a, a. A) Z 1.过滤(Filter)
n1 d; b% ~/ p' A9 N 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
{8 d1 y$ E6 _1 Y可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
- L. r; V W; [! Y# g8 b 00000001 -- Time: `6 F( U' z8 X8 \( r( T
00000002 -- Query. c! O5 y0 j+ p: w4 `# Y7 x$ u: a7 V
00000004 -- Query2- Z3 T! A8 X1 K3 F; r) K; Z* \$ s
00000008 -- Recurse
$ \9 H* \9 T P' Z 00000010 -- Master
_/ t/ r1 q, e- c 00000020 -- Secondary
% }- J+ |# U* Z4 N5 d; Z$ c 00000040 -- Wins1 @ ^, X. l( O2 K# J
00000100 -- Update6 ]# j& S2 J9 X( H
00000200 -- SkwanSec
9 u9 [- `) q$ t 00000400 -- Ds
8 Z0 J" ?4 c, e; ?$ r+ P; r' T 00010000 -- Memory; Y4 C; _; @9 U' s5 {7 x
00100000 -- PacketMem
3 G8 e: b1 y* A& j8 C 00040000 -- Dbase
6 ]0 p! K! y* P+ X5 |0 x 00080000 -- Records
) E! a1 t- {5 Q 00200000 -- NbstatMem
& o2 ~8 D& p0 K3 V4 { 2.清除 /Clear
* T0 W" y: {6 G; ~% F, R5 t 这个参数用来清除统计信息。. v; W7 \% ?8 b& n g$ f. W' W+ ~
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
; L9 q) C( d) d, C2 R9 M1 j$ H! S$ D$ F7 i( J' k
0 w: A" `4 K s* S. M, ]5 U+ d3 T- b7 l7 U; E( Z
|