本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。0 ^/ q6 X: |; R2 _6 v
命令: /Info
( R3 ^) H1 \5 q/ c) n 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。4 F; \$ U, H3 G: G D/ W7 S' r
用法:
) z8 Y) S2 p% z# {0 H/ q dnscmd ServerName /Info [Property]
1 n3 S$ X- r# \6 w7 U1 j1 p' R 参数:# C6 H% W/ w1 V% [
ServerName
' X2 V0 w: o0 C' x6 v' t 服务器名称在上一篇中已经介绍过,此处省略。
& p! O+ y% j4 x+ T# `# b [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
* l& K0 f" u; j3 F+ d/ b# A 下面是该命令使用的一个比较完整的例子:
6 T5 x, r% H" Z$ V4 X 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
# f$ h; k5 P- X, rdnscmd 172.16.12.1 /info 只使用命令而不使用参数) M0 m+ t1 G' I( a6 x
输出的信息:% a9 r+ p3 q$ f" I
DNS Server 172.16.12.1 Information:
4 Q' J a$ r. m5 |0 Z bC:\>dnscmd 172.16.12.1 /info6 }5 M1 S( F& n
Query result: 查询结果/ m m/ ]% v6 z! F b1 u, R3 }
Server info: 服务器信息6 [ w$ G* A9 K1 j0 p! J+ K. G
ptr = 00074718 端口
: ~# P8 @, i. [: H9 J. e. T server name = myserver.microsoft.com 服务器名称
( W0 x- P! C* _ version = C2000005 版本6 X8 y' v8 o0 j' M
DS container = c DS“容器”6 G& t8 f; O2 h2 t# b
Configuration: 配置信息 这些信息的含义请参考有关资料3 e, u3 B% Z) W4 D- b/ _# _. A
dwLogLevel = 00000000
& [ {, h+ s! o( e% l4 E dwDebugLevel = 00000000( L+ q4 c% N2 g0 @/ ~
dwRpcProtocol = FFFFFFFF ]& Z8 x. t( H3 P* p+ r
dwNameCheckFlag = 00000002! h8 V' F3 b& k! F# U
cAddressAnswerLimit = 0
! b0 A" Y& Z9 }$ O* _; r! r dwRecursionRetry = 3: g5 W& k% m+ X
dwRecursionTimeout = 15
$ E1 q8 S3 L5 M3 `2 n8 j# I7 ?6 ^ @ dwDsPollingInterval = 300" a0 K6 j& B4 E7 h& T1 A
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
! F5 a. Z- o; ?fBootMethod = 3
0 V* ~: r& Q1 s4 a# H- U6 B' O9 WfAdminConfigured = 1 & ?& f2 E/ i* a: Q# ~) Z* @" P8 ]8 q
fAllowUpdate = 1 ' T" ^* H2 [8 I
fDsAvailable = 1
7 E% q0 g5 |, U& HfAutoReverseZones = 1
+ H2 A4 L) ~, s/ z4 ]fAutoCacheUpdate = 0 ; r2 z2 h* q4 V4 S
fSlave = 0
6 V, L4 C$ B( P# \. J# I& `! mfNoRecursion = 0
# ?* u" x- Z! i) IfRoundRobin = 1
* \* x+ ~8 C* z/ H! \1 EfLocalNetPriority = 1 : ^1 W5 ?) z4 w1 D# | A
fStrictFileParsing = 0 5 n$ i7 i* j" ^4 p) k5 H) U) B
fLooseWildcarding = 0
; }% z) k% `9 [fBindSecondaries = 1 " R% ], n, V! I! G8 u" R& J; f& f
fWriteAuthorityNs = 0
# [9 }% ^- e: n: y L# kAging Configuration:
; G2 X' T# H0 x5 j4 f5 j+ XScavengingInterval = 0
7 x5 \7 y1 k! w3 nDefaultAgingState = 0 , X0 e! c7 G; ^ `: t5 J
DefaultRefreshInterval = 168
0 O- {2 v! |% ?2 T" A/ M/ }2 NDefaultNoRefreshInterval = 168 0 X5 S; p4 @% Y# O
ServerAddresses: g S* X- U/ U
Addr Count = 1
3 m* D2 b' `2 [: e Addr[0] => 172.16.12.1
/ |( k% y. \- x9 c" q8 h/ I' @ ListenAddresses:
; L( t$ w3 i3 W NULL IP Array.
8 g* h$ z* t& W* r Forwarders:
3 S" A7 x% Q/ m, {: l! l% T1 L) Z Addr Count = 1
2 c: u+ q: w0 A M Addr[0] => 172.16.4.34 N$ s% k- Y& N6 [6 O
forward timeout = 5$ D; G( X, L+ n, z
slave = 0
+ f* C6 u7 s3 _& ECommand completed successfully.命令顺利执行完毕 $ X$ [1 v. v% N: |5 |) j$ W) Z }7 [, Z
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
5 I3 `: s! O) D7 a! @* V3 S 命令:/Config, @* i- u9 G" Q1 u* w
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。/ _3 R2 {, Y1 ]7 T
# z! _! q- i& i3 S0 M! d
用法:
- h/ e5 z4 f$ o# ~6 w) B' @ dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
) C( T8 p. N3 E0 D) z 参数
9 V% I+ A$ A ?( N; C6 [1 r ServerName :服务器名称,意义同上 " y. m3 G8 U; x; m% F
ZoneName:
1 ~, U5 ~2 s6 ~; ]" [7 U8 R 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 6 ]! I* R" [( f" S2 A0 D" V5 w
Property: " C) V+ T6 e, Z2 F% X8 ^! g
这个参数是属性。这里所说的属性有:, w! Q$ f! @, S
与服务器有关的属性:例如:1 h- @3 q' @* M
/EnableRegistryBoot
) G" b" A0 ~) q* q! ^/RpcProtocol
1 q( ]* Y( Y$ x/ @$ }/LogLevel E* {2 g) ^* p: G& ?
/EventlogLevel 等等 (限于篇幅未能全部列出)
0 g" Y* N5 F/ ]( A6 g! u与Zone 有关的属性,例如:. Q* r$ D( g6 `; w" W3 U; r3 r
/SecureSecondaries
4 o' I8 I% K- S4 |; [ /AllowUpdate
/ d4 O1 ~/ ~1 [, d, }* t N& J /Aging
( }% v) e& K9 S; f! w /RefreshInterval Value: g: J" K1 ]$ w7 b( D
/NoRefreshInterval Value* [- n# @, d2 K% K- g
属性值:, b* |- o+ ~( J
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
* `, z4 \& `3 n# b( W从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
7 ~5 \! R# A% w1 I6 G: w 命令: /Statistics
6 r# ~5 J# w/ N1 n0 S 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
; M0 c2 L4 e4 C9 K: @ 用法:
1 @2 n- L! O9 L0 E% P dnscmd ServerName /Statistics [Filter|/Clear], N$ S7 b: B' U3 a' b- Z
参数:9 P2 c( N( S. F4 I% \$ a
ServerName 5 c# ~: @4 W3 m |. R) @) N: P
服务器名称,含义同上。0 P8 A; t* }( Y) W% l6 O
可选参数介绍:
6 O4 \0 x( M$ S; O共有两个参数,每次只能使用其中的一个。
/ m4 Y0 [% l7 b0 p2 R1 ~ 1.过滤(Filter)
* ^! I# R0 B6 s' y# Q! J! G0 O 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。* p1 S8 D& ~0 P$ w, T4 E& I
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
+ s# t) E% n) v( [ 00000001 -- Time4 R, C/ g. S: i; r$ H! I
00000002 -- Query
3 E5 H$ a0 z; ^* x: e 00000004 -- Query2- W. \0 P/ I6 K3 W4 _
00000008 -- Recurse
2 g; a3 }* |3 L0 k; x- {8 Z& F 00000010 -- Master
% W+ X7 m( m) a: H 00000020 -- Secondary
7 P, v' ^+ l9 k! M+ p 00000040 -- Wins v. h) [+ \/ E& c
00000100 -- Update
8 t4 _" W. f# i. P 00000200 -- SkwanSec& t. \* Q% X# c5 t
00000400 -- Ds& q! N5 b. Y& K; R- J
00010000 -- Memory9 R3 i5 M4 n+ d, V
00100000 -- PacketMem
6 T8 b% U! ~ _+ n: X: v 00040000 -- Dbase
+ r& L g7 K, R, L: @# c0 V! m$ Z 00080000 -- Records/ `8 P+ ]7 _7 ]% c. G( A
00200000 -- NbstatMem
% b+ g4 S' `' o* ^" o 2.清除 /Clear 8 V, C1 ^4 Z8 {% T+ \# C* d0 U
这个参数用来清除统计信息。2 r3 S5 V w- Y( K |
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
9 }1 g8 D( C- W. |7 Q6 U! J/ B) `$ R$ l6 d4 w- u* |
0 }. t# B# v, l( a4 f' A/ v9 x0 o9 I6 t, G4 M" C6 g
|