本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
$ ?# a0 L1 f' \ 命令: /Info
+ |( l# U7 ^8 ~% E0 _: F8 h 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
( g% L, C* O& } 用法:+ o% h3 l$ Q) r/ C1 N; C
dnscmd ServerName /Info [Property] \, M& {4 V/ u" ?+ P- J9 r. _% U
参数:0 x, F7 s ?$ H) A; j
ServerName
$ H: o3 w% ~% a' ]6 P8 Z7 P 服务器名称在上一篇中已经介绍过,此处省略。 ! d9 V4 d6 \+ |; g0 D
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
6 R& `( x {1 b) g- W; Q) f! S- h1 T 下面是该命令使用的一个比较完整的例子:
J' H7 t0 G" l8 Y, |# u/ n" O 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
" C3 E6 f1 b; T3 [+ Idnscmd 172.16.12.1 /info 只使用命令而不使用参数5 B ^* n& X& ^6 f
输出的信息:
, q. m, p. F- k/ I, e2 hDNS Server 172.16.12.1 Information:* B; e6 B4 s6 _( Q- Z7 w. f
C:\>dnscmd 172.16.12.1 /info3 m: ~* ?2 c( |0 b8 o0 W" t) |$ }
Query result: 查询结果7 L1 P, X9 E/ B1 }) M
Server info: 服务器信息) C) I9 Z; _ {) C
ptr = 00074718 端口- ~* Y- }" I; q# u
server name = myserver.microsoft.com 服务器名称
- b4 A8 H0 s: F! E% l% h version = C2000005 版本1 X' C4 I2 m5 ~0 \" V& }% k
DS container = c DS“容器”
- x1 w- X4 |1 ~: v5 R Configuration: 配置信息 这些信息的含义请参考有关资料
& B$ |$ I. T+ a7 Z7 d$ D dwLogLevel = 00000000
o* L$ q0 ~( c/ s2 G dwDebugLevel = 00000000
' ]' y- }2 M! @# o; F dwRpcProtocol = FFFFFFFF
+ i. }3 F6 Q1 ?: { dwNameCheckFlag = 00000002
# K& j% B& H" l, U9 G' H+ Z cAddressAnswerLimit = 00 f i i- W# @! @4 J* h0 Z+ O
dwRecursionRetry = 3
2 S) x8 U# X6 { dwRecursionTimeout = 15; q' d. h$ d$ H8 e! j5 A5 `* ^
dwDsPollingInterval = 300
- ~* [4 y) ]) w$ ?/ q" e4 i Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
3 t o! e+ V$ Y- E7 UfBootMethod = 3 ' N# O# B( C' B5 e
fAdminConfigured = 1 : Q5 p+ C% d5 W: v- W
fAllowUpdate = 1 1 g: J4 @1 W2 H& G" J* g
fDsAvailable = 1 " H8 q4 F% Q8 e; x2 D( ]) N+ C
fAutoReverseZones = 1 3 A H) p% m2 z# F4 k
fAutoCacheUpdate = 0
( k( ?' x& A3 f- W6 t+ v" KfSlave = 0
9 \ ` Q7 a" Y t/ P: r' j3 e7 y& vfNoRecursion = 0 / m- }& n* T8 w$ W7 y; l5 K
fRoundRobin = 1
+ ]' t: u- z- }5 X; V2 U6 LfLocalNetPriority = 1 3 y2 r, [. _7 K5 @& K9 J. v' b; @
fStrictFileParsing = 0 ' A' n3 ]/ E( l" p2 K' T9 E8 H# }0 \
fLooseWildcarding = 0 : Y8 V% S& e/ h
fBindSecondaries = 1
8 I3 u! O- p( }5 OfWriteAuthorityNs = 0
$ G4 M# Y7 k3 Z( r7 E# hAging Configuration:
- a! k! e! M q+ U* ^" UScavengingInterval = 0
; C/ h. p9 u" W! {7 p& NDefaultAgingState = 0 , q3 a v9 K( [
DefaultRefreshInterval = 168
# W0 Q3 z" C# | ]DefaultNoRefreshInterval = 168 4 k# ^ ^/ Z4 N. s
ServerAddresses:
6 X0 Z) \1 y; K& N& ^ Addr Count = 1% k3 i& x" I6 E6 k* N0 i" u
Addr[0] => 172.16.12.1
! T. Z# X! T9 ^7 B R0 p* b ListenAddresses:( A" U+ w5 `( h! i5 ^: X4 `
NULL IP Array.3 p% }/ x2 b* _, I& k
Forwarders:! |- }7 C6 a# H3 c+ w# ~" I
Addr Count = 1/ X& o6 d% b& q& P
Addr[0] => 172.16.4.3
" O! U2 n5 J$ R; A* H. n2 l# } forward timeout = 5
9 ` w" ]. ^; u% n7 U- n' r slave = 0
( n. i1 F) `" Y! ]' Z _# }Command completed successfully.命令顺利执行完毕 ! N, u6 w2 p3 v2 c9 }$ {- s
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
$ a* L( g f$ g& j( d 命令:/Config, a1 j; m. J0 y) N7 Q: D
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
2 F' X4 [0 Q% k
( O5 `2 r( o6 x 用法:
5 |8 F1 x; q8 i. R; h dnscmd ServerName /Config [ZoneName |..AllZones] Property Value( O0 b8 n0 ~3 ]: J% w' n( C
参数1 m5 |" S1 J7 F. K- g7 D
ServerName :服务器名称,意义同上
0 y0 P6 f- l: A ZoneName:
% O8 }. F6 w4 ` 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 + @' \3 m/ ]2 V% F+ m1 a
Property:
; t) F8 p6 o4 m- I" v" m( {! H 这个参数是属性。这里所说的属性有:5 k* v ?$ O6 a2 F, o' Z
与服务器有关的属性:例如:( _( u8 f* j. x# E
/EnableRegistryBoot
+ q1 }; b$ i+ B/RpcProtocol7 R# p/ _# b* E6 U
/LogLevel0 ?% l" k4 a6 a5 b$ i
/EventlogLevel 等等 (限于篇幅未能全部列出)
2 j5 H3 m; x, ?- o与Zone 有关的属性,例如:
, @9 c4 D( F5 n /SecureSecondaries
2 t7 C' j3 [) u# W5 |$ r( o" m: b7 ] /AllowUpdate
2 i1 O- M [3 i1 p7 i3 F2 @: A- s4 | /Aging
# Q/ K! e( i2 f( w/ N `( W: S4 H /RefreshInterval Value# |5 [3 }3 m8 P/ @* o
/NoRefreshInterval Value8 _$ r% Q; J! b2 S; S: i, }9 F
属性值:
1 T2 P2 e1 F, e8 u: _8 G9 M8 K 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
3 q$ n% `- q7 ?6 \% P8 o; C W7 o从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。: F) S3 c! p' A
命令: /Statistics
2 X4 b: Q9 ]- |9 G 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。) P9 Q6 }9 ]; d6 z! o* n
用法:
+ }! z9 v" W- g4 @' L0 F+ {7 } dnscmd ServerName /Statistics [Filter|/Clear]! S) I8 ^" M, r( M; e3 B$ k
参数:
V4 n$ ~) M" J) W0 g& M- C/ p' W0 NServerName & Z, f' i+ Z: \$ r3 v
服务器名称,含义同上。
H8 p/ B) P6 ?4 F# G可选参数介绍:4 B: Z2 t. x! Z5 d0 r0 u* z$ v$ F
共有两个参数,每次只能使用其中的一个。+ e) n# E) I) {$ @% R) m o- b
1.过滤(Filter)
5 O6 Y* p% r+ Q6 o: h 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。2 m8 }) B f$ C+ y' u
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: & m( f/ m: M' E+ o
00000001 -- Time7 o; u% B( y+ b+ L0 R; g5 n$ y
00000002 -- Query
1 L! x& F. W0 m% v! [ 00000004 -- Query2
1 O7 w; \# W; k! \+ T8 N$ J 00000008 -- Recurse. \9 @& v4 p! z% k) G; B1 w
00000010 -- Master
y' h. e3 Y* I) U1 C 00000020 -- Secondary; @4 b! f7 i$ E" k
00000040 -- Wins
- U8 v6 s6 b* N 00000100 -- Update E0 B# S W/ m; B
00000200 -- SkwanSec
/ [0 k# y1 i& n! D! |) g 00000400 -- Ds
/ c. g2 R+ A8 @, q0 d 00010000 -- Memory+ X0 n% v( x/ y9 G3 P9 w, [- G6 I
00100000 -- PacketMem
: r: x$ [$ T! ^0 [( V 00040000 -- Dbase$ n- n3 B4 Y) o8 E$ s6 A+ Q/ j
00080000 -- Records/ x* V$ b4 j* d
00200000 -- NbstatMem
7 L& Q$ [, s1 o# H @ 2.清除 /Clear
2 J. O$ U) `9 c 这个参数用来清除统计信息。
v# Y# h4 m+ @6 X2 @1 G 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。' p' h* @9 s" w2 V
0 ~5 I9 J/ p. t" p2 Y6 @7 R+ d / P1 I1 H7 L* Z3 @! O
4 @! p* J, @/ \, ^: ^) U |