本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
* ]4 e: n/ \# }" @& ^/ P 命令: /Info ) O: Y8 H9 o9 p
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。7 _+ O# l) `, ]" p0 Z6 a1 G
用法:, N& S2 S7 H% D l* \7 i# c
dnscmd ServerName /Info [Property]
. {& i" f. y- K; E/ d! K 参数:, O6 R7 E$ C) E d1 @' H" B
ServerName : k6 D7 [" W) D y' _' p% N
服务器名称在上一篇中已经介绍过,此处省略。
3 W; P1 K& l" o' o( A/ a [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
0 d$ Q) Y) T" I; H$ F 下面是该命令使用的一个比较完整的例子:. s( j) [7 O9 z! {1 a5 S G$ q7 z
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:) a5 M' o8 K/ x9 r6 w
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
* m3 T; U& j/ l G1 A输出的信息:
, @# d) e5 C7 GDNS Server 172.16.12.1 Information: i* s3 ^8 t4 l0 v8 C* E3 z
C:\>dnscmd 172.16.12.1 /info: d2 p: Q/ M- w
Query result: 查询结果/ t" A' C8 S2 a: W* ?8 H
Server info: 服务器信息
3 D+ t5 w' F8 v J, ^5 M g# X% t( V ptr = 00074718 端口. ^( U# { i' x0 o
server name = myserver.microsoft.com 服务器名称
& @0 W" I5 J/ q2 Z version = C2000005 版本9 c U6 B6 o2 o- h' [' T
DS container = c DS“容器”/ w! J# I! Q& S* G; q
Configuration: 配置信息 这些信息的含义请参考有关资料
8 r9 A+ m" d2 N& _% D" t! m dwLogLevel = 000000009 h2 k$ O% x) P: z3 }( x- P% f
dwDebugLevel = 00000000
; i* y2 M# O' a' u! k& D1 ~5 f: b dwRpcProtocol = FFFFFFFF' G( V" n$ V3 A$ O: x) t
dwNameCheckFlag = 000000024 }- s& A k/ o+ Z" x5 }
cAddressAnswerLimit = 0
, u3 V& l, G) y0 s$ o dwRecursionRetry = 3
& V8 A! R. o7 L2 Y! u dwRecursionTimeout = 15
7 F" \1 J& Q& | Y" B' n dwDsPollingInterval = 300
! \7 W, Q: x# Z l9 ^ Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料6 l) l; E' W6 ^2 X! a
fBootMethod = 3 - m7 o6 i. }' n1 E
fAdminConfigured = 1 * H7 ~' z) M( r/ o. M g
fAllowUpdate = 1
$ H4 t# ^% H% c6 T, r1 pfDsAvailable = 1 ' G4 w6 V( A: Q5 @8 `% ^5 w
fAutoReverseZones = 1 ; h: \ s2 s* `6 H/ I6 n7 H" P
fAutoCacheUpdate = 0
{+ S5 E7 l7 e3 ?! O5 gfSlave = 0 # I1 {, I' \# K! I. Q
fNoRecursion = 0 , g" {8 P1 C- b4 Z" m9 D; [0 `& |/ J
fRoundRobin = 1 ' x( W& G2 P! e. b( `, C: ]
fLocalNetPriority = 1
1 y* ~ Z7 ~( \6 z; jfStrictFileParsing = 0 1 U; s$ B L' V% {8 y7 E' ?
fLooseWildcarding = 0 # k8 V6 }- N2 s; K i% n5 W$ T2 M
fBindSecondaries = 1 , V+ |1 F9 z3 `) r- c P
fWriteAuthorityNs = 0
# D5 E/ [+ n3 a! J& [& T( PAging Configuration: $ C" p; r9 q$ _9 W4 _. N' z
ScavengingInterval = 0
5 h3 \4 ?$ p& j% k/ s2 YDefaultAgingState = 0
- d+ B# W4 Q5 Z: B Y) tDefaultRefreshInterval = 168
: [; Q: |+ } N9 Y* ~' L) qDefaultNoRefreshInterval = 168
" f2 h) C* |- r% J5 [9 z ServerAddresses: 9 V) a: B. z) ^) j+ z
Addr Count = 1 c }; d) x/ V: a# q
Addr[0] => 172.16.12.1
) b9 n6 ~' V3 R: U/ k( @' t3 D7 U1 c7 p ListenAddresses:
t) L1 U1 g: S+ x* m0 ]# { NULL IP Array.$ V& Z& \7 t* K% W/ o2 i" e: C7 q# q
Forwarders:
' n7 O% I8 h: i7 M, o* L$ Y% U# `- a; I Addr Count = 13 G% \0 f* @- a* d
Addr[0] => 172.16.4.3
1 S3 M( V2 Q! a3 v/ A( h$ X forward timeout = 5
+ o: Z9 M1 o" c% a. r" k% [ slave = 0
1 I' A& E# N9 ]; q+ Y( j4 X3 ICommand completed successfully.命令顺利执行完毕 # N: m" |2 g2 d
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 / x! h0 y' ?8 f0 G6 E, f
命令:/Config
' |- S, k+ r) @1 M8 S 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
( n4 {# Z) }& Z$ s5 k8 \) _; D% P6 T
用法:4 R8 i* g$ R4 H8 b
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value( _7 E6 Z" i8 F
参数
6 @: I6 N) {$ ^) I8 ]9 I) B ServerName :服务器名称,意义同上
5 c0 I; D A4 O" k ZoneName:: Q# o4 {0 u5 s. t3 M& T s' f, {
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 1 _1 J1 I1 J7 B: b9 `! |" F
Property: 6 l/ A: `( N* I7 [
这个参数是属性。这里所说的属性有:
9 x9 d3 L5 t: S7 _+ r/ i) |/ a 与服务器有关的属性:例如:. n3 D+ f1 r6 a3 P
/EnableRegistryBoot+ p6 i# r2 h+ [0 |5 i
/RpcProtocol1 L$ Z/ p" F# ?# e; M- s1 T( b
/LogLevel: w: g- a" g ] D1 a' ]
/EventlogLevel 等等 (限于篇幅未能全部列出)
" F0 X2 l6 g+ i1 q; l与Zone 有关的属性,例如:/ C+ [2 w# k j5 j
/SecureSecondaries$ d# [% Q& ~$ e! a+ h: A$ n8 \
/AllowUpdate" y+ |1 k+ o, m& v& ?* U0 Z
/Aging, y( l4 N/ E3 k
/RefreshInterval Value: \3 H/ Q5 H' V1 D5 v; r
/NoRefreshInterval Value
x0 S4 s, ]" q T1 n E8 ^% g1 S 属性值:
/ i# s, ]2 d7 K 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
' [; z4 h8 `# r$ x {# ~$ e从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。' w6 E b8 A' f( G
命令: /Statistics5 ]0 A$ j% f. J, [% X, k3 v8 a% x
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
5 D9 [' W+ r# S. [$ V( n 用法:
$ A5 f: N, v# ?- d" m! h dnscmd ServerName /Statistics [Filter|/Clear]- y; K+ {" P1 J) ? w {% |
参数:
, b" @% i0 L' hServerName
% }/ R* ?6 A/ i服务器名称,含义同上。
3 {5 ~8 R* m: t8 a' R可选参数介绍:
; A; \- q! d. k! {0 E& |共有两个参数,每次只能使用其中的一个。
6 }& O8 _( p8 J+ Y w$ Q 1.过滤(Filter)
' a$ u& T l# ^! c/ u' _( U 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
- q3 I- z( L& w' |( t2 d% P可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: & t1 D: T2 Q3 Z1 U, Q' M. D1 }
00000001 -- Time
. G! l0 V9 L. K- L1 w: O' ^: _ 00000002 -- Query
& K$ o* `( N2 B' n c 00000004 -- Query2+ a: d" _& { D0 T4 e1 [
00000008 -- Recurse
* V+ m; |* z5 }- q' E. T# f2 _ 00000010 -- Master
3 D9 L! X1 I, \8 L, A7 B 00000020 -- Secondary- y- X+ f! q" s( \+ F9 ^
00000040 -- Wins
0 t3 r4 ?; E3 P; @# s9 G0 A) b 00000100 -- Update
F3 t4 x; l9 ~$ X2 j! k3 V+ X0 D 00000200 -- SkwanSec
( Q6 L6 m4 h: ]' w. f 00000400 -- Ds+ B+ {; J) n" n
00010000 -- Memory
5 }3 ?- V4 X( E% _ 00100000 -- PacketMem
1 X1 x+ k1 A6 `2 ?; w 00040000 -- Dbase& A/ y% b) V7 i" G0 B
00080000 -- Records; F* K4 O/ S' Y" [& x- ?/ S* i! ]3 O
00200000 -- NbstatMem
6 [) _+ X% u7 p' C% H, ]& r 2.清除 /Clear
; e7 g! M1 s! z8 r 这个参数用来清除统计信息。
/ ?( z5 Q) @3 U7 B 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
$ h" F6 [ x5 C y5 M
; b" e! J( q9 B* s, N
7 x7 r: o9 R, X" m
( @" t! j$ F0 r' B+ R |