本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。3 V" I9 i' M- z" P; Y+ a
命令: /Info
3 l; j: U4 ^% P8 @' Y 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。; S# D& P+ u H5 a; a! P
用法:% E) G1 i1 C' O; l D7 G- u
dnscmd ServerName /Info [Property]
* a- z5 r' C" a# _ 参数:; o& G' |7 @% M
ServerName
, w& n1 l5 q: E$ K. y) c: ^, } 服务器名称在上一篇中已经介绍过,此处省略。 ( Z- a( h h; Z6 Z
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
0 @. B7 j: K% q* a; { v 下面是该命令使用的一个比较完整的例子:
- m. A I) ?5 @2 p) [1 i 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:9 N% t+ p7 \9 S: [' `" w
dnscmd 172.16.12.1 /info 只使用命令而不使用参数. D9 n- f! e, g6 L+ B( r5 p
输出的信息:
, T8 [( s' z2 r9 `9 m3 S# n1 fDNS Server 172.16.12.1 Information:) L- p8 T- w% D" y
C:\>dnscmd 172.16.12.1 /info
9 f7 [7 ~4 j& m+ o* yQuery result: 查询结果" T; p/ f/ @# ^. c
Server info: 服务器信息
, O' R5 \6 y& G% w1 q/ p' Z ptr = 00074718 端口
9 n9 W2 r1 h/ c server name = myserver.microsoft.com 服务器名称
+ ^. u" j4 ]& O4 n: i; s version = C2000005 版本
+ s( T7 E0 R. j F6 T' `' A DS container = c DS“容器” |. u% j; q5 i$ `, H% x7 J
Configuration: 配置信息 这些信息的含义请参考有关资料
* l5 |- {+ S; B dwLogLevel = 00000000
: q2 f8 f) b9 i9 D5 ~( n/ \$ I dwDebugLevel = 00000000
1 u: D, d% F* L. B2 I7 _# S" e5 u dwRpcProtocol = FFFFFFFF
, X/ ^' O+ S' X3 ~+ u2 f% f( t dwNameCheckFlag = 00000002# i6 W0 N2 p; k4 Y& b- g# U
cAddressAnswerLimit = 0- j/ M! v% a5 J9 ~
dwRecursionRetry = 3
% H- T F+ R3 i6 u+ F: i7 O' x dwRecursionTimeout = 153 Z" T! X( W. O6 M/ g/ g( B
dwDsPollingInterval = 300$ x& | V9 G% o9 @. h9 `
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料! ^, ~: J: k3 d$ L1 G0 |( u
fBootMethod = 3 _4 L/ F. S+ z2 W$ l" A4 h
fAdminConfigured = 1 1 N' |. \0 x1 ^$ Y( ` V3 q" ?/ Z
fAllowUpdate = 1
) i; P' _( g0 \' l9 f; w7 TfDsAvailable = 1 9 X* Q" W' l7 q/ X$ i/ f
fAutoReverseZones = 1
5 J8 K# n& \6 P( HfAutoCacheUpdate = 0 + c9 l8 d, z4 s( h7 ~' g$ g" W
fSlave = 0
$ u8 ^: Q$ b1 @8 XfNoRecursion = 0 7 s2 Q7 F9 y9 r9 v3 U: J
fRoundRobin = 1
5 z3 [ I9 a+ U* F. EfLocalNetPriority = 1
1 m! z/ v* y# X$ ~fStrictFileParsing = 0 8 r2 y3 D/ p! |; i0 ?( X" `
fLooseWildcarding = 0 ' e. ^4 [+ j! @* s/ a# U
fBindSecondaries = 1 - G! D5 W" ?1 W- ^) C
fWriteAuthorityNs = 0 . @! N$ d9 p# g5 w5 f
Aging Configuration: 1 b1 P4 A6 ^( C5 w- j+ ?( ]
ScavengingInterval = 0
6 R: Q5 b% X' R; TDefaultAgingState = 0 1 O1 M9 `) E$ Z9 o$ j7 B, V; w
DefaultRefreshInterval = 168
% ^" h) }8 W& ?9 ]DefaultNoRefreshInterval = 168
! f" u" G: G! }7 |) ^3 }9 R ServerAddresses:
- h' e7 g2 r1 H. E Addr Count = 1
. J: |0 z% a, i1 u9 Z9 q3 I Addr[0] => 172.16.12.1" w |# a" W9 q4 q1 \/ u9 t
ListenAddresses:3 m3 W3 q: s' G; h) U
NULL IP Array.
0 C0 K8 {( c. [0 U6 { Forwarders:
9 M- F1 O& p' N4 k1 a Addr Count = 1
$ t- `. ]( O$ W- b Addr[0] => 172.16.4.3
+ D) C! v4 d e forward timeout = 55 A6 e( H8 n+ f; V
slave = 0
, _( q% M1 h. g5 ]Command completed successfully.命令顺利执行完毕
: |& t5 w+ H: S- _2 H. [' H( w' X* f 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 / U" l" a9 H. o! {3 P G
命令:/Config
1 e1 q1 ~' B! O! U! A0 N 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。! @* t6 y* }! t: V. c
- @* J+ n% j5 k( y 用法:
, y9 x1 p* [# A l dnscmd ServerName /Config [ZoneName |..AllZones] Property Value2 a: N! l# Z! M9 _7 t
参数. h4 N6 Z. G2 w& b- I: U( O
ServerName :服务器名称,意义同上 7 f! j- u! E4 r% W6 \3 S
ZoneName:
0 f" s. N: @$ `; E 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ) i9 p: o" [& z8 s
Property: 4 Y: W# H3 X! Q) ?! p& n, X
这个参数是属性。这里所说的属性有:
/ A0 u0 L9 d+ Y. ^' e. a3 ]% A 与服务器有关的属性:例如:6 ? o4 Z8 F2 v; Q; A2 H
/EnableRegistryBoot% t9 m( O0 Y D/ @4 D
/RpcProtocol
# u- }& W2 d. e, T7 I/LogLevel
% Z% I& W5 P; F! L/EventlogLevel 等等 (限于篇幅未能全部列出)
5 R" b' h- ~+ g0 s9 _& i+ e* F8 V与Zone 有关的属性,例如:( r8 c- X8 r0 d% m/ q. s$ e: S
/SecureSecondaries
9 T6 X3 J( s; c: k/ C9 f) _ /AllowUpdate
( _# K. Z% V i# q /Aging
& @. u, U+ B( C/ Q7 u+ f /RefreshInterval Value
( v- \0 s/ y0 n /NoRefreshInterval Value* P+ F3 K5 B- l" E2 g' k1 S
属性值:
0 ?3 S; d. ?; v: a3 _0 s8 k 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
7 u- v/ @/ [" z从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。( R5 B+ G) H( n- R
命令: /Statistics
. H' R- X! u, a% z# n: d& ? 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
0 m: Z% M% B0 J) l) V4 X( s 用法:
2 J) G% Z F& u8 H dnscmd ServerName /Statistics [Filter|/Clear]
& W( @2 L c5 o5 t 参数:
1 H) g9 N0 G. X N. h/ P8 h9 ]* OServerName
' \5 F) W! m. {: _服务器名称,含义同上。
+ l! ~. H$ F. O8 y* r9 f3 e可选参数介绍:0 F' X8 X8 g: L) S
共有两个参数,每次只能使用其中的一个。: D1 R |1 F- `, L8 g) g; v
1.过滤(Filter)
% A+ |/ _3 Y3 v( u! l0 g a 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
. ?" [9 x% s9 w0 c3 N& p- E8 D9 M可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: ) c/ c: H5 i/ U# ~; Y* O
00000001 -- Time
B) k( R" _& W* _ 00000002 -- Query
6 I' c" j) @! D' F7 |9 Y 00000004 -- Query2
! r2 M+ Y- W, k8 o+ z5 p 00000008 -- Recurse8 e m* L. K* f3 f
00000010 -- Master
* @2 n4 n8 J+ P; ]/ e 00000020 -- Secondary, O! F; q& z+ n% U1 g: v
00000040 -- Wins
% W3 T z2 G% w 00000100 -- Update
& [) I6 y! t9 J3 a 00000200 -- SkwanSec
. ~5 o( [. c( J* g' Q7 W. R8 ?2 m- p 00000400 -- Ds$ R) @- {1 l4 C* r, K
00010000 -- Memory1 k j2 b- v; B6 O, G3 z! Y
00100000 -- PacketMem
9 }- o3 P, D+ }0 ] 00040000 -- Dbase
i& r: r* ?1 ^/ g& b r 00080000 -- Records- i$ H+ M# r; `) U
00200000 -- NbstatMem+ H) A0 ~* ?9 _; u4 e% Q" `! C
2.清除 /Clear : X3 z9 Q# a' n
这个参数用来清除统计信息。
* M/ y6 k% \7 P0 B" Y" e$ P, \ 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
% `% U% T9 _, s. E4 t, D4 p8 T. s2 g6 y6 x _
7 U1 i" k9 c1 n! ~# { u7 ^0 |) H4 A8 x( u4 U7 }
|