本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
1 d4 i2 o" y. x# r: M- _6 M 命令: /Info
" x! W3 x1 v* B( j" V 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
0 i( A/ g0 q# n( H% Z 用法:5 X# E3 V% t" J$ A
dnscmd ServerName /Info [Property]
3 `) o5 K2 N7 P' m K 参数:
; s# J& D. ^+ u1 S ServerName 4 L: v9 [7 D; d0 N( |
服务器名称在上一篇中已经介绍过,此处省略。
$ z1 ]4 b/ \& t7 X u3 w [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
/ Z2 S0 \* p, [ 下面是该命令使用的一个比较完整的例子:2 r! K4 C6 z; w8 }& }
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:- \+ [( ^, f b4 h' `
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
! K) @: @1 A' l/ i1 o" Q输出的信息:2 W1 I7 o( m* f1 k2 Y
DNS Server 172.16.12.1 Information:1 h/ r4 D/ P# @9 |% M/ d
C:\>dnscmd 172.16.12.1 /info" Y* [( U* M. c2 M+ |! N& J
Query result: 查询结果
4 Y& b# X) y5 ~* Q. pServer info: 服务器信息
. t o4 a1 s2 u! l ptr = 00074718 端口' ^. N% d5 j" t3 }# h
server name = myserver.microsoft.com 服务器名称
2 L L. k: a" E( Z/ f version = C2000005 版本
7 Z. v8 }: v0 d) b7 v! y# ?* j9 N DS container = c DS“容器”5 O. K- R3 W5 f/ [( i0 K
Configuration: 配置信息 这些信息的含义请参考有关资料
8 V0 G1 T( g; e; G& W dwLogLevel = 00000000
. j' i2 X5 h4 M( r r; ]/ A dwDebugLevel = 000000001 g4 X S$ A4 }8 a
dwRpcProtocol = FFFFFFFF
( [, K% V8 D/ z& n dwNameCheckFlag = 00000002
4 A' L4 o8 u9 O: F; q* \% j$ m cAddressAnswerLimit = 0' _3 W3 R4 Z2 g! v9 d
dwRecursionRetry = 3
. h+ u7 R( S/ U8 m7 g* U dwRecursionTimeout = 15
: ^2 N7 \: H7 Z1 X7 P6 x dwDsPollingInterval = 300" S; G! n9 L) O8 \# m$ Y
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
8 z# t$ R- ^7 q/ V0 yfBootMethod = 3
- H- j8 T7 y) ^- Z5 p! J6 ?fAdminConfigured = 1
1 o6 O: F+ P1 \+ sfAllowUpdate = 1 & x: O; @6 _# _: f/ ~ b4 b8 P
fDsAvailable = 1
/ j' \3 t4 X, yfAutoReverseZones = 1
, V$ Y0 U) q3 d( w. R/ ofAutoCacheUpdate = 0
" b, ]4 `/ u+ o3 ~1 w9 r8 GfSlave = 0
3 p! J+ v: u' j- LfNoRecursion = 0 ; _' V( _6 t* O6 E; `: q5 y8 w7 [
fRoundRobin = 1
1 }/ d9 X' q9 K! e* Y* kfLocalNetPriority = 1
2 \" t/ r; D+ u6 R y0 Z- CfStrictFileParsing = 0 . F0 Q9 q6 I; k0 z
fLooseWildcarding = 0
, f0 z. U% z) y5 JfBindSecondaries = 1 7 E: z9 b! ]" U9 f/ U5 h
fWriteAuthorityNs = 0 2 K- v' Y% [- r- _# O0 q* b
Aging Configuration: * n: g$ k0 P& T' D6 x' {& n# d+ m8 a
ScavengingInterval = 0
, E. a. F/ ~, o' i1 LDefaultAgingState = 0 9 E- P8 m% y! ?6 ^* e9 R
DefaultRefreshInterval = 168 + q V% U8 h' u1 j$ p& [
DefaultNoRefreshInterval = 168
( R" T4 x8 }( O) o: X/ N ServerAddresses:
& |$ y' u' V: L/ _) I# u% l0 F Addr Count = 1
, H9 \/ }4 \" R- [+ Q% | Addr[0] => 172.16.12.11 E, M O. c, A
ListenAddresses:
0 ^# D7 P+ D3 T! t& f5 T NULL IP Array.( A' v5 i, W9 D I' t1 v4 g
Forwarders:, B* v: y/ n( M7 X
Addr Count = 1
$ |+ V% ?7 E. @! n4 h Addr[0] => 172.16.4.3! Q/ ^) ?6 g( n7 v: v
forward timeout = 5
: J8 g' u% A' ~ X7 L- e5 T slave = 0' Z& s, H) a9 A# s' b' }
Command completed successfully.命令顺利执行完毕 . i3 n% b' l _' S
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ) j1 d" E( W$ f) x
命令:/Config
+ R U% M# Q* s 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
9 ]7 r a3 c( ]1 Y4 J" @9 G; Q
! d% x3 W8 J) [+ U4 G; s+ m 用法:
6 L' \& X* ?! w2 Y* v/ u dnscmd ServerName /Config [ZoneName |..AllZones] Property Value' c I. x& x; C$ {- q# w- F4 O
参数) K8 T' ~3 k% Q( M2 B
ServerName :服务器名称,意义同上 1 {) n/ V, J5 h! j
ZoneName:
( y; P" @3 n# ?* i/ B/ j 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 4 U5 r# _) `/ X0 f
Property:
7 B3 [ F S, h' Q& i. a 这个参数是属性。这里所说的属性有:5 h- Q8 ]- ^: r, W
与服务器有关的属性:例如:/ f0 j$ }5 [, |
/EnableRegistryBoot
. c* [/ c% r0 S! q4 h( w/RpcProtocol4 V+ ~! @8 y7 _4 T. C4 V
/LogLevel6 n. A( v2 I) U# S0 i$ \3 ^4 u C$ u, C. X
/EventlogLevel 等等 (限于篇幅未能全部列出)
2 [4 b' F- {$ f. {( i* a与Zone 有关的属性,例如:$ g+ Y* D& O, B" u5 {' v+ z
/SecureSecondaries
. q" ~" n! C5 X w; ~) h /AllowUpdate& P, i3 q$ `' x) M! [
/Aging
. ^. J; S5 X1 ]% \ /RefreshInterval Value2 F# a. b; a' J, V! q
/NoRefreshInterval Value
: V3 {8 X8 V7 y6 J7 ] 属性值:
+ x; X4 M3 G! j 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。9 \# U. v. H( ^5 n% ^
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。0 e. `# V! Y0 c; l6 B' v
命令: /Statistics
9 D& k$ Q4 Y3 \0 ]5 G 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。0 p) H& C1 C( u7 V
用法:, B# T1 O6 {! j7 g B1 _
dnscmd ServerName /Statistics [Filter|/Clear]
$ {* ~6 h. }+ ]; Z# _: V, A. H: H 参数:. y; S5 L' k7 G* y' h% }
ServerName - v( _0 p8 o' \- b4 R! h" f
服务器名称,含义同上。1 @3 A0 m- s, b& q" {* Y
可选参数介绍:
: s3 x; T5 k a共有两个参数,每次只能使用其中的一个。3 o/ A2 C5 \! A |
1.过滤(Filter)
R% B& O& b" W7 e+ x7 ~1 ~5 K 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。% C/ z, f" v* O! t
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
" l2 y; b2 S6 P, N. n! j7 Y& u 00000001 -- Time2 G! s K& Q& L, S( v/ Z
00000002 -- Query+ K* x& V, `3 i& K0 f
00000004 -- Query27 w) T0 z% `3 [9 @2 }( h
00000008 -- Recurse
. N: V' j/ ~ G9 K, |" L2 u8 J 00000010 -- Master2 d5 ?3 t3 h' f9 S
00000020 -- Secondary: \+ [$ W, T/ Y m
00000040 -- Wins
% B, w) K; p' y$ `" F 00000100 -- Update. e9 }, O$ b' G( f# x
00000200 -- SkwanSec" S0 N7 Q6 b3 c. ]1 l2 ?; ]1 Q
00000400 -- Ds
! f- k N2 C; X- X 00010000 -- Memory6 P+ \. ?; v& @; p/ J0 l! h: B
00100000 -- PacketMem- n) G3 z' |- |0 m' }
00040000 -- Dbase5 U6 y! q& N$ U2 ~8 x
00080000 -- Records
$ [& T, O' t5 H- g2 X8 ^7 E; L" N 00200000 -- NbstatMem) V2 e, V9 s" v' f( b) X9 g/ P
2.清除 /Clear - z- E' `7 J1 y0 A4 V9 s& X
这个参数用来清除统计信息。0 N( z- r% }/ a/ W: X2 z: y1 A& p9 t# R
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。6 Y! a7 u8 r3 y* g# D0 e1 I X" M
6 p( t/ [$ m& {5 W/ }- F0 O
5 h, V; D; E. O: m* [0 Z% C7 a- K( p1 d* M6 S* |
|