本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
* W0 r9 M$ H% K, q, H) f 命令: /Info
d9 ^( P5 r7 x5 w 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。( m* b5 Z# t# z
用法:
; ^' ^3 [5 W, R6 k1 A1 |% Z) {1 @4 p dnscmd ServerName /Info [Property] ! Z! T5 {$ t: p7 F" A" d. W
参数:
9 k& n' y& }/ f3 o5 X" ` ServerName
7 X+ u& r( I/ m0 p6 V 服务器名称在上一篇中已经介绍过,此处省略。
9 U. P" @! `( T* } [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。+ Q# x4 }0 f$ L! R/ j
下面是该命令使用的一个比较完整的例子:
# ~# O) Z# I+ l- ~% d- E 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
5 T3 v- K1 b. L! Z, B+ F6 C0 A! sdnscmd 172.16.12.1 /info 只使用命令而不使用参数 {; a; r% y- |8 F# ?
输出的信息:1 a, v% n" d* d( f8 D: w7 q
DNS Server 172.16.12.1 Information:
; o+ s7 E* ]' N4 T6 _' P9 hC:\>dnscmd 172.16.12.1 /info. n2 C! k. v+ M5 ^
Query result: 查询结果
' I8 S6 L- k5 m3 RServer info: 服务器信息
}6 i6 R2 Z% o! t. N: q) d8 Z# B5 } ptr = 00074718 端口+ n' l, R/ c* H$ {
server name = myserver.microsoft.com 服务器名称
# P& t6 Y( k' P1 M" w9 b; R8 i6 p6 p5 i version = C2000005 版本 v( T' P; n4 B7 c9 H
DS container = c DS“容器”
# L. A, @/ `# y1 y Configuration: 配置信息 这些信息的含义请参考有关资料
" G, U7 L! q) J1 U dwLogLevel = 000000003 c/ R" p: A6 v% o/ |
dwDebugLevel = 00000000, b* y' { d+ `; e
dwRpcProtocol = FFFFFFFF
V' r0 q$ \8 `; j I5 ? dwNameCheckFlag = 00000002
/ F/ }0 G3 R9 x; L# z4 C ? cAddressAnswerLimit = 0
1 h7 p2 X5 U- ]9 ]. v( B# A0 i dwRecursionRetry = 3. K, g! W1 D/ S! O0 Y/ G |
dwRecursionTimeout = 15
) F4 u. k/ g; W @2 M3 T dwDsPollingInterval = 300
9 t5 ?" W' i) F% d Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
# O; I3 A4 ]$ q f9 N. r( KfBootMethod = 3 , V- F& k/ m/ `- m( D
fAdminConfigured = 1 4 |. X9 d" U, ]3 W! z% j4 [* ^
fAllowUpdate = 1 # B% B$ r9 [" ?& Z4 Z7 l
fDsAvailable = 1 0 j- O" ^7 t j6 q7 ?
fAutoReverseZones = 1 * N6 k. p) G; i7 w- g
fAutoCacheUpdate = 0 9 j1 g( `4 Q+ i& T0 K
fSlave = 0
. N3 _4 `0 [4 cfNoRecursion = 0 ; E4 D8 s8 ], x: j
fRoundRobin = 1 $ Z" G2 o) r% _
fLocalNetPriority = 1 5 ]' E- W$ V5 E2 g
fStrictFileParsing = 0
% e1 L$ ~9 G/ b* V! g( u3 {fLooseWildcarding = 0
& N4 q0 _ M4 |4 c( T* Z# w: NfBindSecondaries = 1
' y L4 o4 y; x, ^' }fWriteAuthorityNs = 0
. C! A2 H) F3 f) U! x: O8 lAging Configuration: % s9 l# o& t5 H0 J3 k; r& ^
ScavengingInterval = 0
, d/ e' r4 d5 f8 e5 U5 ]7 \' lDefaultAgingState = 0
3 L% i) s) |# [, UDefaultRefreshInterval = 168 1 |5 W, ]2 } S% }
DefaultNoRefreshInterval = 168 " V0 m2 I1 O9 i0 T9 W' S c! N7 t- ^
ServerAddresses:
. U- j }$ P4 C* j Addr Count = 1" F- i. x0 g# w& y+ n6 k
Addr[0] => 172.16.12.1' y1 g$ W! h0 l- k- w/ u: M
ListenAddresses:
5 s, V( m* @- d NULL IP Array.
6 t) C; K$ _3 U9 u n/ | Forwarders: A1 N: b; P0 B$ c1 h. Z! |. u
Addr Count = 1
c0 g+ |: ^* M9 j K Addr[0] => 172.16.4.3: d. T; h" C" R$ n- c
forward timeout = 5
5 E: c+ h) V! M6 b0 ` slave = 0
$ e8 o: p7 D5 Y- XCommand completed successfully.命令顺利执行完毕
. W6 ^6 `( _) E. F+ Q5 _# c9 B 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ! q! K0 b* Q: v* {/ z
命令:/Config" e2 R* m! q( {: U/ {% q
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
( q$ j, S" H2 X( h" H3 A
0 W8 b& r5 E1 I$ ^4 P) a$ }2 C# n 用法:
) E7 ]! E5 O8 ^' ?$ @ dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
4 A$ x- s) i9 [: ?9 D 参数
+ n& u$ C! L0 B+ n# S4 G+ S ServerName :服务器名称,意义同上
3 Y1 m4 b/ X( c. P, S4 n2 x ZoneName:
! o' X8 c; d' b/ h) }7 l1 ?5 h4 _ 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
6 F8 t" K( l2 ^4 Q7 @ Property:
: M4 m9 Y$ ~4 j6 L8 K1 I 这个参数是属性。这里所说的属性有:- P, R+ h2 p" D% p4 q0 x& T o) r3 r; X% v
与服务器有关的属性:例如:$ F+ K6 _" p( T" ~8 y S
/EnableRegistryBoot( l8 p; [1 u/ B4 J2 D
/RpcProtocol
+ n: F+ _0 K# s) x0 i( g v/LogLevel
( @% Q+ X2 w, w2 b- {/EventlogLevel 等等 (限于篇幅未能全部列出)+ H* V* X4 V ~
与Zone 有关的属性,例如:( Q, E6 T7 }" o; c1 G0 @" E
/SecureSecondaries
$ F" G, n3 i) |6 n5 b /AllowUpdate
* p4 x! w2 `. R: x. f1 t: Y9 Y4 n8 M9 h /Aging9 f" o$ ]) u9 o3 p, ?: _
/RefreshInterval Value, T, @) {+ u+ U' [2 A
/NoRefreshInterval Value, E1 Z- i5 m2 {
属性值:( I: }( {/ e: a- O; r b
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
( ~8 o3 D, l+ y" i3 j: V; Z从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
* Z. j1 p, _- ]1 N( G, K 命令: /Statistics
% W2 s( v7 V/ N* T) r$ B 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
8 \& i! j( G& G; ^) h s 用法:
! C5 u N- W" ?0 j1 y dnscmd ServerName /Statistics [Filter|/Clear]5 y" Q6 x7 D# x. l) _! a
参数:
* ?# B% H, V' U: ?3 y# k# HServerName ) s$ O, }) W: i( ^3 c2 c
服务器名称,含义同上。0 l4 W- D; t( I' ^
可选参数介绍:! F% W- G9 ]6 G+ ^9 R6 L9 Q
共有两个参数,每次只能使用其中的一个。 t7 m! ]) v& t9 {
1.过滤(Filter)' ~5 n( `7 z5 o4 f, @8 F
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。) O0 @- F! ^7 s) W$ ] v P
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 8 u& u Q% {" h [& M! G( f
00000001 -- Time
. r+ ?3 w5 i8 K% N/ x 00000002 -- Query
0 F. P( F! M5 q1 ^1 o2 ^ 00000004 -- Query28 G, Q i, D$ l, v. f
00000008 -- Recurse
+ d& Q r9 ]+ H 00000010 -- Master3 J" e. ^( \) q4 x4 J) [" S
00000020 -- Secondary
" {3 m* ?' v ` 00000040 -- Wins
" E& L- g9 {! Q: v$ z. t 00000100 -- Update- \* P; n6 B" {% ?
00000200 -- SkwanSec
; p7 y7 i4 a6 {9 l 00000400 -- Ds7 o/ A" \4 p5 f1 U! A% H
00010000 -- Memory
* z! @! N2 g7 M4 c( b8 W 00100000 -- PacketMem
: G2 J( s" S& w! R 00040000 -- Dbase' i! p+ d) ]: Y5 q& t$ S9 I9 k
00080000 -- Records
E2 u0 Y% L" O% m4 \( K! m0 A+ ^, e 00200000 -- NbstatMem6 s/ k) W l% z8 I$ k/ o) B
2.清除 /Clear
* m. v1 p9 m, ^ 这个参数用来清除统计信息。, }2 I+ \* ?- P, Q! t& i- j
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
6 I: n) D0 Z! x. ~
* T- }4 _5 ^; m/ `$ a, L9 _1 @% h
9 O4 T0 L. k! X" J* w
/ Z; K6 [0 t, G6 W. ~! q7 y' l% j$ e |