本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
! U% `. q3 W+ Y- i0 v 命令: /Info
{% X2 |1 N- C" H 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。( ^/ a( a% t, H& C7 D; I$ Z r
用法:+ g* i f0 v, }0 M9 R
dnscmd ServerName /Info [Property]
1 Q0 Q" _0 C( e- c9 N# g 参数:. t7 }) M: a: g# k: @1 v- S
ServerName
, s- k. ]; j9 Z) X1 O 服务器名称在上一篇中已经介绍过,此处省略。 ; O+ g0 r7 N( D6 Y$ P4 o
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。4 \( Z% g9 J' O
下面是该命令使用的一个比较完整的例子:
+ M7 ]7 S7 C" q0 ^+ g 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
/ _/ N5 Q5 v. ndnscmd 172.16.12.1 /info 只使用命令而不使用参数: e' e( K9 B7 r; n8 \: B ]! V# e( J
输出的信息:. G2 }' ?7 ~, m5 L7 ~0 Y4 A
DNS Server 172.16.12.1 Information:; c( g7 {. x- Z8 \
C:\>dnscmd 172.16.12.1 /info6 S% n) J6 U+ R
Query result: 查询结果
( `" x' k6 r. ?$ YServer info: 服务器信息6 Q, Q9 z' y' c7 U: B: [
ptr = 00074718 端口0 A! l3 I: g. j3 T2 `
server name = myserver.microsoft.com 服务器名称
& o, Y8 r3 v. A8 c- x5 f) ] a version = C2000005 版本
& b c: Y7 y( X( ]5 h DS container = c DS“容器”
% n6 B% }) x% Y! G Configuration: 配置信息 这些信息的含义请参考有关资料 n2 {0 M/ h+ q0 _) }
dwLogLevel = 00000000
, D/ K/ w7 B; p: b& d dwDebugLevel = 00000000
9 w6 n9 c2 G) P" k. S) s2 A dwRpcProtocol = FFFFFFFF9 h; ^- Q' a- e4 ~& @
dwNameCheckFlag = 00000002
/ \9 Q/ N* e, j5 C6 g4 t cAddressAnswerLimit = 0( T& \* Y4 S5 _4 D* `7 z$ U
dwRecursionRetry = 3' j8 O6 I& \% h+ l+ y) b# m
dwRecursionTimeout = 156 | N* ` A; Y$ n
dwDsPollingInterval = 300
* K3 U/ k ~" J# M% X0 b. s Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
2 E8 p. ~; V9 i! P/ Q) L; K; dfBootMethod = 3 / p$ y# Q1 ]# o+ O
fAdminConfigured = 1
/ E+ w' {; h+ GfAllowUpdate = 1
# R' D* ?5 ?- |/ s- Q7 jfDsAvailable = 1
7 E7 \6 f( v0 Y( bfAutoReverseZones = 1
$ `# W5 }3 |9 x' x* _% ]+ b. \" Q0 LfAutoCacheUpdate = 0
6 r9 `% V7 Q4 ^) K1 yfSlave = 0 ( m- X1 @ v% t: e: G. j7 E
fNoRecursion = 0
/ e( S9 w: E/ d6 U) ~: F6 u( }fRoundRobin = 1
( P& Z" i! ^1 gfLocalNetPriority = 1
, @# B+ P2 {5 |fStrictFileParsing = 0
- L5 m& z- E* U" a1 k' j- GfLooseWildcarding = 0 3 i1 L3 E# z$ J! S0 p0 u* w
fBindSecondaries = 1
. p7 w3 b9 S) v7 KfWriteAuthorityNs = 0 2 p4 F% b4 _7 M: [# v2 c
Aging Configuration: , T- ^4 S x) V+ C0 E# a
ScavengingInterval = 0
0 W& e3 H2 I% c+ YDefaultAgingState = 0
8 W! y$ N& _) v! uDefaultRefreshInterval = 168
s8 q5 t S% ?DefaultNoRefreshInterval = 168 A! Q9 C0 l' P4 p0 y
ServerAddresses: 5 e+ u" \2 v* c5 w5 ~
Addr Count = 1
! u- k `$ U( G Addr[0] => 172.16.12.14 P- |+ }, Q( r5 i ]+ s( a* k
ListenAddresses:/ g# {" H5 s$ x; i
NULL IP Array.
) B0 N: v/ [. A, c5 l Forwarders:. ^6 Y' y; c; d; W4 i
Addr Count = 1
1 E3 J+ w' |1 I Addr[0] => 172.16.4.3. y9 D$ k: y! A4 O% _* ?' ?
forward timeout = 52 s6 j+ _. z- {
slave = 0
. p; U/ ^: o* ]Command completed successfully.命令顺利执行完毕
. l5 p8 q8 t+ |/ o 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 3 b& T7 D8 N1 d- a# L
命令:/Config
& t& p* t& Q" |9 k- R) A 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
& G5 }2 ^- J P" K5 s' \1 \) w' c- F% u/ x; k) b/ n4 K& N
用法:
3 T( L/ a1 V( o dnscmd ServerName /Config [ZoneName |..AllZones] Property Value7 w2 S/ j* X8 S$ E3 ~+ y# _
参数5 N* h# s! }# z% @5 u* Q6 w
ServerName :服务器名称,意义同上 ; }0 R2 f6 X) q' j C0 L
ZoneName:
- O0 w: ]( G' H, k7 T8 e 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 & x: M o. A+ Q; ] j- _; W" M/ B
Property: % ^$ o5 H( i; }3 }9 F
这个参数是属性。这里所说的属性有:
2 Y& p. A l! F$ C0 e' k 与服务器有关的属性:例如:
& x8 \# F* R1 D, N+ P/EnableRegistryBoot6 n# G f. [8 p) _
/RpcProtocol
# S/ B! Y# z0 D# S, x/LogLevel- F+ A- h- j! q3 T
/EventlogLevel 等等 (限于篇幅未能全部列出)
$ S5 `5 K6 K, x* c3 M$ S与Zone 有关的属性,例如:
: o# t# l* b; P" ^0 T# J; h /SecureSecondaries3 Y7 ~. Y/ o+ j- c6 T4 N; ~. r+ Z, `3 `
/AllowUpdate9 P( n6 d2 [ }6 o& Q4 f
/Aging7 b2 H% ]+ M; N
/RefreshInterval Value
/ |( y. ?+ l9 I4 m. R /NoRefreshInterval Value
: W9 ?" |5 Z9 m7 K. W2 a: u3 u 属性值:' A! _, _* C. c7 y" }7 I) G' R, Y
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。5 U4 q; i% G) W& G
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。$ s" T$ K% o1 I3 s4 ~: F3 \" J4 x
命令: /Statistics
+ M8 L1 w" Z7 w1 e 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。6 ?* x* S1 V& X0 O \
用法:/ o' @6 J" x& d1 E$ I( ]9 \
dnscmd ServerName /Statistics [Filter|/Clear]
j; c$ ^- i, }/ O! R 参数:
9 Z) ?; a( z% h) i" I% }ServerName
) L$ O( v2 R+ [1 f6 S: @服务器名称,含义同上。
7 }5 h9 U% C" F4 p/ R# `可选参数介绍:+ j7 @7 H* [1 w
共有两个参数,每次只能使用其中的一个。3 A# `* y- c1 M* d' s8 ^
1.过滤(Filter)( v8 } g7 G& Z2 h% L
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
; r5 q' S# g3 W9 J4 C/ J可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: s5 i1 [ d4 F0 R* k! R$ X% t$ |
00000001 -- Time: v2 |! x( z* W4 Q, i# K5 D& F
00000002 -- Query
8 f. {: B ] @ w! u 00000004 -- Query2
) x, Q$ W& U' s1 s# W 00000008 -- Recurse
: y) I3 q% C" M( i' O 00000010 -- Master' G) m) N! y* g* @+ w) {
00000020 -- Secondary0 p6 I+ T p7 Z2 N# P
00000040 -- Wins1 R' v4 s2 X% @$ C7 [3 B
00000100 -- Update. ^! ]* I! y$ G
00000200 -- SkwanSec3 V4 _: b$ t7 z& }0 M
00000400 -- Ds) q, r: r6 J) J2 f3 z
00010000 -- Memory% @; M" g8 J; f2 N8 O/ E* j- k
00100000 -- PacketMem
3 e0 E+ j* F6 W 00040000 -- Dbase e/ z2 d: S# B7 U$ h; B2 H
00080000 -- Records
: F9 k. g2 @& C$ O5 D" G 00200000 -- NbstatMem/ @5 A7 c2 s8 p
2.清除 /Clear & D" N, J4 s1 y1 K- z% Y# a8 G) ~; ~: S
这个参数用来清除统计信息。0 ]5 u/ t9 M+ `9 ~; x* F+ ~' ^* i
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。# v: a0 Z- e, N. g1 U
0 Y. |0 p6 d0 i2 P : _" V' ~: h0 b: k5 U
8 m7 ^4 @. B) i; Y" s
|