本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。7 j& H7 U0 t+ y6 [: V
命令: /Info
/ `0 Y0 A+ X: j& P1 p: W 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。+ _8 G* e3 ?( {1 n
用法:, _4 u( h" h6 O1 q( A
dnscmd ServerName /Info [Property] - P0 u1 Y* X! e8 J' p$ {3 q7 c7 ~
参数:
+ }0 g" u/ v2 U9 Z6 o# [$ s( S( Y ServerName
8 @0 |, { s( n3 C7 T 服务器名称在上一篇中已经介绍过,此处省略。 0 `- c; i$ }; k9 m- ^% [
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
5 n- @( z6 U7 {* k: n8 T 下面是该命令使用的一个比较完整的例子:
7 s& u6 h# @" Q G1 E! @ 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
2 }, @9 [0 l" J- U4 ~% U& ~$ j Xdnscmd 172.16.12.1 /info 只使用命令而不使用参数
1 H2 s9 B& M) I" E, Q" Q3 `输出的信息:: D/ W* N; U4 f) o, |& g z
DNS Server 172.16.12.1 Information:7 i& [+ o- q* n6 r' ^
C:\>dnscmd 172.16.12.1 /info" e& N- y1 {" B$ B0 \; j4 }+ I
Query result: 查询结果* P& y! S. r/ S/ z
Server info: 服务器信息
$ n2 z: M9 Q1 t1 c ptr = 00074718 端口
0 o) t+ q9 k' ~6 f6 K d server name = myserver.microsoft.com 服务器名称, P6 Z: a1 Q( L8 C
version = C2000005 版本2 n( H* j; C3 O: ~. {) Z, H3 L
DS container = c DS“容器”
0 x c, Y4 T! i# s" W/ z5 d1 l' T Configuration: 配置信息 这些信息的含义请参考有关资料
3 @$ ?6 O; {; f& c dwLogLevel = 00000000, A' }/ s0 Q+ Q: g# M+ [! @
dwDebugLevel = 00000000+ Y8 S- W1 r) z$ ~" u
dwRpcProtocol = FFFFFFFF5 q$ u( X0 ~2 w. ^
dwNameCheckFlag = 00000002
; q2 Z; |' ^* r5 }# G* a cAddressAnswerLimit = 0
$ N8 }2 o, n8 i7 e! O6 D& h4 i9 r, D dwRecursionRetry = 3- \2 j7 S q. z* ?
dwRecursionTimeout = 15
4 R* Y) L5 H! K* [0 P dwDsPollingInterval = 300
/ X7 R/ d5 ^$ [) C7 Z Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料( Z& A( U8 D8 l7 n- v
fBootMethod = 3 + Y) @1 @2 E7 g: _& V* ] {
fAdminConfigured = 1 & ?$ W ~8 T; [+ G6 Z
fAllowUpdate = 1 7 I* B# [& w) x9 x$ |8 m& t
fDsAvailable = 1
8 i9 ^5 V0 e. Z) _- a; B6 CfAutoReverseZones = 1 ! u% z3 {! |; |3 E$ |
fAutoCacheUpdate = 0 9 `2 w2 b$ h9 g* ~" q5 M: y6 ^
fSlave = 0
5 X# A; ?+ q& B0 s: A; V2 jfNoRecursion = 0 2 Z# U' U/ ~4 i `
fRoundRobin = 1 6 N1 l" A. X' w/ H
fLocalNetPriority = 1 v+ T- Q8 O- P- A# y" T! l) U
fStrictFileParsing = 0
$ A( |/ D2 n a" I3 L% y1 tfLooseWildcarding = 0
4 M& U6 ^' Y# `7 f4 |) R8 i# B/ WfBindSecondaries = 1
* C) F- M- q( b! H u9 ?fWriteAuthorityNs = 0 * d e6 A7 Z$ d
Aging Configuration: 9 f! r% F0 _% b$ j; v+ e2 ]
ScavengingInterval = 0
. c. |% H% d; F; U% uDefaultAgingState = 0
( p+ D# l Y& ~; N7 e$ h5 x6 ADefaultRefreshInterval = 168 7 }, m# `+ v. y! v" M/ o
DefaultNoRefreshInterval = 168
0 C% e8 H- E" q' z+ k/ M+ B. e ServerAddresses:
4 {; S1 ~. k) {' P Addr Count = 1
' N8 C3 q# f1 o* m1 C" ]8 @$ K* a) n Addr[0] => 172.16.12.17 _& ]( t8 N+ n+ }
ListenAddresses:8 Z3 ]" |4 g, A
NULL IP Array.! n- X$ B9 V% y; S
Forwarders:
9 d' M% C& g" W5 j" J, C Addr Count = 1; o$ r1 X7 L" W3 e/ c( l
Addr[0] => 172.16.4.3) w3 L. D8 R0 G# i' j3 ^
forward timeout = 5
; ]- J. b, {& d8 e! D slave = 0! h+ d0 d. r) p5 B
Command completed successfully.命令顺利执行完毕
3 E" `4 Q. [/ C$ B2 o7 z6 T7 F8 g7 c 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
( r! B9 L; f9 y( a+ S" _# D 命令:/Config, i# r3 @9 R1 G. E
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
- x# g* f0 L- J- @$ b$ ?- A* s3 ~, T6 H" V+ w2 [
用法:
% E5 x- d" c3 h2 M; z7 G dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
9 x' D: S- {6 c 参数
6 {3 k r p; V$ t ServerName :服务器名称,意义同上
. E/ l) m# n- w9 N; ` ZoneName:
7 q+ F! E- R" O/ f5 p4 A/ V6 Z8 N 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
& p. K9 ^+ G# }- j Property:
" O. ~. S4 O2 G% x. g 这个参数是属性。这里所说的属性有:- `+ ^/ r# Z8 U8 ^( V) X/ \( J
与服务器有关的属性:例如:, O: {. @9 }% M1 c9 z) Y& Z
/EnableRegistryBoot
. P. E6 \+ N, r& W! u# V: q/RpcProtocol
( w1 L+ [) s+ g) W& [/LogLevel; V8 ~* b9 O4 l6 N
/EventlogLevel 等等 (限于篇幅未能全部列出)
8 W& ~' @; h" g0 }; \与Zone 有关的属性,例如:% X% n. k0 k0 a( Y0 B( s! s
/SecureSecondaries
# v& p1 Y9 E" V* L5 y' h, N /AllowUpdate7 t; p6 h+ C. R! n
/Aging, F' `( P' ]' A; O0 Z% K
/RefreshInterval Value
$ R$ _# g3 E6 q( G: e /NoRefreshInterval Value$ V5 U4 a j- V; L) g6 S' z
属性值:
+ A% |( D# O. }8 r* |. Z) r 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
* p( H0 v! G( A n# F* q从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
( w. T, u3 n5 F: t# L8 g 命令: /Statistics, q' c7 v. ~3 W/ V" V* C% y
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。2 h, ?, |3 P5 K+ z
用法:
% m, @) D& ~& R/ `. _ dnscmd ServerName /Statistics [Filter|/Clear]
$ ^0 ^0 o, m+ K7 w 参数:
. P+ J8 F, p6 t# bServerName
, m. c" |0 X/ A' n9 H# [. |7 M# t服务器名称,含义同上。" m. Z1 r2 H. \: z* m
可选参数介绍:1 }3 v% t7 ]8 C1 s# [
共有两个参数,每次只能使用其中的一个。6 Q' |+ t# g9 n
1.过滤(Filter)
+ G( F( M% V& ^1 L4 f 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。4 c" P3 j+ G5 z( `* T- i+ A
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
0 h- q8 c. N- {* ~# f. h- w/ c 00000001 -- Time
: [ Q1 ~& f3 S, e 00000002 -- Query
, A* w$ z3 X9 ~ 00000004 -- Query2
H) K+ Z) Y* D4 y 00000008 -- Recurse% E' ^7 Y$ ~8 [8 o$ a
00000010 -- Master6 K2 b3 |" |' g$ N% _4 F0 r
00000020 -- Secondary
$ F$ C5 L% f; V' H5 E4 W0 Q 00000040 -- Wins8 J1 y6 L* W8 C! c: k
00000100 -- Update
) c. m o. c0 J% j: M3 ] 00000200 -- SkwanSec d/ o; }' I' z" L+ h6 v% j8 c
00000400 -- Ds1 e/ y, ?1 ^2 S) H& Q
00010000 -- Memory
; d$ g# i3 V% n; z( V# M9 G 00100000 -- PacketMem- J( g* J: Z4 a) M9 X/ F( u
00040000 -- Dbase2 a& \9 o' T* E* X& v$ I
00080000 -- Records
+ `3 h0 y6 F. p9 { 00200000 -- NbstatMem
0 d' r4 D1 {* N) H 2.清除 /Clear : p9 ^/ C* e7 P2 S
这个参数用来清除统计信息。
^- G: `! a; L: l 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。& n- b0 L/ X% g
" D4 f7 Q3 z! U9 D# F
: T: k @2 E7 Z+ H$ y
1 g+ J3 A3 h% F' r: G$ X! M |