本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。4 |5 x( c2 I8 @. V- j
命令: /Info
; Y7 C) j, z p 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
( l: v3 `" u1 o0 ^( g8 Z. y* q! d 用法:
, D1 K/ e! b4 ? F dnscmd ServerName /Info [Property]
5 d# e; A1 [) Q/ h$ q6 [6 D! A2 w& } 参数:
% ^' f4 \+ o2 x7 @ ServerName 2 A/ K- | e0 y
服务器名称在上一篇中已经介绍过,此处省略。 ' `9 z. a& Q: y% ^( O; |+ ^ y
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
, W* {2 Q4 j6 L 下面是该命令使用的一个比较完整的例子:( u8 q* ?" m8 T5 c9 ]* Z
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
3 O8 j: L% g6 f2 wdnscmd 172.16.12.1 /info 只使用命令而不使用参数" h0 R; Q |* u4 D0 G
输出的信息:
0 ^1 g5 @( J9 P% |9 H- |DNS Server 172.16.12.1 Information:
: `7 h% y, A. I+ zC:\>dnscmd 172.16.12.1 /info
% Z' J F1 d; E, ]/ ]& UQuery result: 查询结果2 d; }1 q* \9 X& I& A8 p
Server info: 服务器信息) F$ T2 k8 w6 A
ptr = 00074718 端口% n7 P6 c) i t( f9 K" M& v
server name = myserver.microsoft.com 服务器名称
9 p o$ p* m" M, w7 y8 q8 V. v version = C2000005 版本
9 @7 A) y# ^# e0 m2 p* }. P DS container = c DS“容器”
5 ?* s7 b$ q* ?9 R Configuration: 配置信息 这些信息的含义请参考有关资料6 `+ q1 h- q+ {+ j. H7 q( c
dwLogLevel = 00000000
' J7 t" y& a* R) _ dwDebugLevel = 00000000- G" u6 `# f. |6 \2 Y
dwRpcProtocol = FFFFFFFF
4 n+ q0 ?( {4 B, h. K) n% C- d dwNameCheckFlag = 00000002
s2 o1 M+ X9 i& p* y cAddressAnswerLimit = 07 A( _ r: L$ N6 l+ J5 {: E3 e; @
dwRecursionRetry = 3. F7 u; M% z. [. l. M
dwRecursionTimeout = 15
0 E: J! Q/ M# U, x9 O, _ dwDsPollingInterval = 300
/ O! y5 n2 _% m9 L" s8 k0 } Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
5 @4 Z; s( F, B4 IfBootMethod = 3 C! c9 ]7 I/ J6 T2 g
fAdminConfigured = 1
" v. U# a: s/ i. WfAllowUpdate = 1 . h: m- K+ A; z; b$ i, U. ]* J
fDsAvailable = 1 ; W" o/ t8 t) L6 L& x
fAutoReverseZones = 1 2 \! o2 ~ i+ p3 r( |
fAutoCacheUpdate = 0 9 o" M0 ?7 P8 A" Z* X2 [8 N7 I
fSlave = 0
1 N, W& v; ]# _fNoRecursion = 0
Z& a# C/ z, N* g' L8 PfRoundRobin = 1
& P" x }) E' g4 MfLocalNetPriority = 1 ; N3 u8 W& X. \
fStrictFileParsing = 0 ' `1 _) V6 D& B3 t: W( r
fLooseWildcarding = 0 3 e! n9 _: @: ~3 f6 r& v; ~
fBindSecondaries = 1 * t" U/ ~0 W' B6 c
fWriteAuthorityNs = 0
' O+ q6 [$ A$ {) cAging Configuration:
6 K& q) ]* Z, M eScavengingInterval = 0 + S7 U: h7 A4 n8 `' b3 V7 i
DefaultAgingState = 0
0 G/ Q4 I% u- WDefaultRefreshInterval = 168 1 W" U2 w4 f& y, W
DefaultNoRefreshInterval = 168 + m/ J! B8 O3 z% _# ^
ServerAddresses:
# V# e* r g! T3 Y& x( w2 U! Y; Q$ h Addr Count = 1 i: R0 f! F3 g4 t
Addr[0] => 172.16.12.16 s) W9 ]4 O+ p/ H# P G% |+ \
ListenAddresses:
* h1 d- g1 V) C) T NULL IP Array.9 S) @7 @) a8 A& S5 M4 D
Forwarders:
" O5 { D8 u) W- _' Q* ?$ G Addr Count = 1: g1 l+ a7 S" q( G: y* ^+ C
Addr[0] => 172.16.4.35 v. K/ \6 H% v. O0 a* }
forward timeout = 5- s. c5 q3 P+ K4 k
slave = 0% `, u: [ j8 K* b& \
Command completed successfully.命令顺利执行完毕
9 _" b" S% j+ B- k7 T6 V 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 5 S# b4 o$ L% @; H2 m# D) j
命令:/Config* d7 w( K# [$ [/ _& `0 X7 W4 S( s3 C9 T
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
! i$ [" o/ s3 s% G+ f' p; T) z8 L _* t
用法:+ W7 G4 R3 @: ]! T$ [5 R* w
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
* c1 T4 J0 y2 x$ L2 m 参数/ d& e7 m0 W4 R" E
ServerName :服务器名称,意义同上
6 y h8 }! O6 n0 ` ZoneName:; E) A. `6 @- d* j' W7 \6 y8 ?
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 - u- @ O o2 A* f$ x
Property:
" b" X: ?& X1 k. v- O+ }: c 这个参数是属性。这里所说的属性有:
( o# V8 I8 Z5 ? 与服务器有关的属性:例如:
" B) K0 Y% u/ d# v/ U1 ~: m8 `/EnableRegistryBoot
- q% M* r$ Q* P# n# o8 ^/RpcProtocol8 ?5 x0 k; t- o+ A0 D
/LogLevel
2 R! o& ~: ]' k4 b/EventlogLevel 等等 (限于篇幅未能全部列出)0 O/ [/ S! T1 H! i& i
与Zone 有关的属性,例如:! \5 Q6 R: Y' e* X0 g" O; {' _6 f7 T
/SecureSecondaries
# ?. t+ C8 Z0 {1 u8 m9 I /AllowUpdate
8 C( z0 S' o5 B3 F /Aging4 K* Z( ?0 E) `! w+ t. I' C
/RefreshInterval Value
- r N# i) d4 J4 A# m0 A /NoRefreshInterval Value0 x% @) D& W$ S) i* ^# w+ Y
属性值:
5 w% w, K" X2 h. F: z 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
, |8 @ C ~6 j; u% |. O' x8 ]从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
. ~3 Q1 _5 ~4 h2 ^- r0 S 命令: /Statistics$ ?. ?* s r# [- {
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。* t, N+ b; F2 |; ~/ e% q4 R7 l
用法:5 T5 `6 Y. t w$ D( [5 ^% S
dnscmd ServerName /Statistics [Filter|/Clear]
2 L+ C0 i0 @% Y8 L% e) I2 b7 P 参数:
; p( H. o4 o# c. gServerName 4 E, V- A8 N- A% e1 b
服务器名称,含义同上。$ K _; o U8 k4 h; d/ Q
可选参数介绍:, P( }- V3 s+ _. O$ t
共有两个参数,每次只能使用其中的一个。! k; q0 ]" Q6 L: c
1.过滤(Filter)3 J, ^- _# }# q- M
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。, i5 f2 K- y% P) s
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: & t' F9 v! D2 e p
00000001 -- Time+ c" \. a6 l6 E- l
00000002 -- Query& f: V$ `! S: h. n" r% E
00000004 -- Query2
, c' x& X5 Y1 L2 ~7 ] ^; g8 e; Y+ Q 00000008 -- Recurse& H' r9 F }: q+ S' v5 q! r( h
00000010 -- Master
% k# k! K! X8 U 00000020 -- Secondary
# b2 m% ?% ~4 j; A a- u% j 00000040 -- Wins
8 }3 ~- P5 o3 A6 L9 m1 {, z 00000100 -- Update, d. v/ u( g* p3 B, T
00000200 -- SkwanSec" w$ e. z+ q1 r1 }* J. h
00000400 -- Ds8 ]- M8 p7 y: o3 I$ W2 `) a1 I
00010000 -- Memory
, H: G, B: F- O 00100000 -- PacketMem% t$ W. y9 w0 w7 H o1 r- t
00040000 -- Dbase
+ [( F) }2 T2 r8 e) b( q6 G; a+ S7 h 00080000 -- Records
$ s! G) y# p9 [7 S! M& S/ | 00200000 -- NbstatMem2 @7 D3 O3 i& c# L9 b* T
2.清除 /Clear
, r* y/ b/ u% Y$ Y9 h 这个参数用来清除统计信息。
4 i' V! {6 K2 } 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。2 L5 f& x J2 M% {4 I7 s" P
& m2 g& j- Z) A) U3 z0 A7 P; N 4 H; A G$ X1 P/ j4 [( ^
+ x( S& N8 t: C; z
|