本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
, A# l8 j2 }- H 命令: /Info 6 A7 {# c/ h9 h- m# @9 l' I
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。& w0 h \6 _% n0 Z U, |7 x3 ~4 ~# L& o* `
用法:
2 ]* q: A, {$ E, Q0 J! ^" [ dnscmd ServerName /Info [Property] ' S3 ]6 t- L& P0 t2 a+ Z) e
参数:8 G: U0 G+ ?; }& }; |# o# Y$ S$ s
ServerName
: ?9 S( K/ \( f* F; h 服务器名称在上一篇中已经介绍过,此处省略。 ! L" P" j+ A9 R& g) s& O
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。) {/ K& W0 l- E
下面是该命令使用的一个比较完整的例子:, s3 f4 W+ F2 N0 L; f( X+ d
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:0 ?2 ]5 ?+ |7 ~5 U
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
0 _4 B% ^: h* K" U5 w) O输出的信息:) E; N! a+ v0 {( q& I1 G( m
DNS Server 172.16.12.1 Information:* P2 v2 ]$ }% f' `3 d2 m
C:\>dnscmd 172.16.12.1 /info8 R& S2 |( o/ `# y' J
Query result: 查询结果) m1 k( D: k3 X# j
Server info: 服务器信息
* n) G! g% r+ c4 _" E ptr = 00074718 端口
5 z" E; L2 A' f9 g1 p server name = myserver.microsoft.com 服务器名称
+ x% b6 |1 |- O V5 a% G2 ]/ B& @2 u4 k version = C2000005 版本- U8 Y, G( L6 e
DS container = c DS“容器”
& f" n8 Y+ D; l Configuration: 配置信息 这些信息的含义请参考有关资料- @1 m9 Y- ]7 A/ I. c
dwLogLevel = 00000000
* `. e1 Z0 W3 F# z( \1 L( q dwDebugLevel = 000000002 O' m3 _1 W7 o, i
dwRpcProtocol = FFFFFFFF( B5 I2 k* y$ V$ K' S' B6 w
dwNameCheckFlag = 00000002; m) ?# R% ?2 J
cAddressAnswerLimit = 0
8 j5 ?' i P7 V8 {" l; ?. M dwRecursionRetry = 3- [: H# C" G) P* m6 p' f5 ~1 [4 Q
dwRecursionTimeout = 15+ C2 F* r' r% l ]
dwDsPollingInterval = 3000 A: s% I: b, o
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料2 z7 S; j1 u" n, W
fBootMethod = 3 9 n; V: ?/ Y K1 U7 y2 B
fAdminConfigured = 1
7 [/ }5 e- T' z" C. A: |fAllowUpdate = 1
9 o, {% ` C& l2 \+ AfDsAvailable = 1 ) q* v; j9 g1 e- ]* D: v
fAutoReverseZones = 1
3 h$ u8 F+ V- K8 g- I a0 ofAutoCacheUpdate = 0
6 {3 E5 j7 {2 S, ~' }fSlave = 0 9 X. }0 R8 @; P6 `& q) C9 R1 Q
fNoRecursion = 0
$ W1 J4 f4 d6 e1 _6 b) Z) K8 PfRoundRobin = 1 ) {" ]9 y+ J! R6 O; N( j
fLocalNetPriority = 1
1 c; s$ B3 v4 c6 T/ YfStrictFileParsing = 0 ; ~; B- e; [' }' U
fLooseWildcarding = 0 3 z% _; U+ V5 a4 U
fBindSecondaries = 1 6 Y! s5 A$ V5 A: s1 o" Z0 z
fWriteAuthorityNs = 0
& f9 ]6 F8 ^2 [1 V( pAging Configuration: - }, J: Z) o l7 S( ~$ T
ScavengingInterval = 0 + }9 i5 [8 t+ r" x4 A' m' p
DefaultAgingState = 0
" B! c6 K5 \1 D. }/ O; k" lDefaultRefreshInterval = 168
& g! `: x$ ^9 ~' n+ \6 I% A8 P/ qDefaultNoRefreshInterval = 168
4 E) w5 f8 L, y" k+ r ServerAddresses: 3 X1 N3 z i3 ]+ ~
Addr Count = 1
- p5 n- z3 T) ?# k% T! [! u$ s Addr[0] => 172.16.12.1
5 f* e3 S' G/ ~3 N- }7 _ W ListenAddresses:
+ K8 g# ?* D7 o2 j: k" W NULL IP Array.+ w0 R- W* @ }
Forwarders:
P+ M, C) T3 r; X9 L3 S8 u/ N Addr Count = 1
3 U! ]/ g7 J) h% M2 Q" T$ J+ _ Addr[0] => 172.16.4.3 B7 s2 R" J6 U: G0 S) h) Q
forward timeout = 54 S1 m Q" H7 b
slave = 0$ |( K" C9 E4 x4 T& d+ O$ [
Command completed successfully.命令顺利执行完毕 / R! G! L' R+ d* ~% O; Q7 x
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 # L7 k2 Z3 w2 t: _/ Z' d
命令:/Config$ {; ?8 j3 N( {& L# S
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。% M- }8 Y n5 s" \% m5 S8 C: J
( G+ H5 f# {' ?- g9 Q
用法:
" M: J9 ?/ E; U dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
' i3 N) i: p) o9 Q" S& Q2 p 参数; U3 j! W R3 Y9 V( e( |# u2 q
ServerName :服务器名称,意义同上
; v$ g" l: v) x2 ?5 w ZoneName:
& k q" Z2 R3 x1 w) @1 y* j3 M& r 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
5 o! X3 N" G- I3 u0 b2 j Property:
( }1 U# e2 ~7 f, ~5 } 这个参数是属性。这里所说的属性有:/ V2 f. M8 D1 ^2 \, W. ^( n
与服务器有关的属性:例如:7 J1 t. |$ a8 X
/EnableRegistryBoot
/ d/ v1 _5 n3 P1 h/RpcProtocol" E3 G w3 f5 ? ~2 j
/LogLevel @; U O1 y/ _/ w0 L% E* d$ B
/EventlogLevel 等等 (限于篇幅未能全部列出)4 w/ D5 D+ O; e0 ?
与Zone 有关的属性,例如:
9 H f) O3 O, Z0 N8 N /SecureSecondaries0 U) w( {# w0 l# s
/AllowUpdate9 C9 @% A, a9 `- Z
/Aging
9 J+ B1 r1 e; ] /RefreshInterval Value4 ~: l, R$ U o, f* e
/NoRefreshInterval Value `- P0 P" x! [0 o
属性值:
2 T; J0 ?/ T0 V3 O 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。: b7 Q# {/ U9 u$ Z! t0 l4 g
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。7 T+ Y7 H* Z6 n/ J2 H/ ?
命令: /Statistics, r! `1 Z. L* v9 X$ _+ l
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。8 w. K g% V- p$ F$ i) M6 M
用法:
3 t% `% I: I1 G# ~% O# v J' Z* @ dnscmd ServerName /Statistics [Filter|/Clear]+ R2 w3 o K- i0 m7 O/ Z
参数:
$ u, E+ h- H+ lServerName
. {6 @5 F$ W' W- Z3 Z服务器名称,含义同上。
8 q* a1 ]2 h& s- g: r0 w4 T2 n) _可选参数介绍:
& T2 H. f% O' t$ t# s共有两个参数,每次只能使用其中的一个。" [: A2 r7 P6 a9 L1 W
1.过滤(Filter)% Y4 |2 ^/ d- |9 W. q: Y1 x
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
0 [$ z$ i, z! b+ Q可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
: h, ]! B, N; R, U1 {2 N 00000001 -- Time5 u) w( `+ G1 ?. Q: V* ~5 W% L
00000002 -- Query! Z4 ?2 x" s7 n8 X
00000004 -- Query2
/ k# e- h5 F6 K: b* L, }: U 00000008 -- Recurse
7 D2 p; k7 m% R 00000010 -- Master Y6 ?1 B, A6 p% W' x
00000020 -- Secondary
! W: w5 \/ v) n" k$ R$ M 00000040 -- Wins
7 ?! C: w2 V7 D+ T' s) z 00000100 -- Update
2 ~0 Q' o6 {5 K e/ G- ^ 00000200 -- SkwanSec
$ w/ _' `& G; ]; ^ 00000400 -- Ds
1 w( f, q, t& m( C" m 00010000 -- Memory1 T2 k0 J- X! d6 b. q
00100000 -- PacketMem& z' w) m; N3 {& ~+ ~. V8 M
00040000 -- Dbase2 q6 @" X- t0 \5 e
00080000 -- Records
0 @9 ^7 C5 b( u& O1 r. l 00200000 -- NbstatMem9 Q8 Z4 k5 D1 [2 \" L$ w
2.清除 /Clear . B) l0 a* \) f" @! @1 u
这个参数用来清除统计信息。' ?, \# M6 y- d. h+ K1 ?3 Z) X
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。+ P; @, q$ s$ e* f
9 N) Q* E9 n0 I
1 ]8 X0 L0 p' Q* }) P2 a- v- O( B G: _& e
|