本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。: ^6 \; r% s' x. S; `* G1 C9 ]2 M
命令: /Info
- H5 h! q* b) `4 _2 i$ s; ] z, w" { 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
) G. f2 X. \/ _5 l$ x 用法:
- i& B+ u+ ~0 R+ i3 H" c1 X- B dnscmd ServerName /Info [Property] $ S G. M. [4 x4 V. c7 o) V
参数:0 c$ q9 N8 k+ s. Q+ \
ServerName 5 U5 m7 R3 g) _0 @
服务器名称在上一篇中已经介绍过,此处省略。
- Q' k' R: `' U3 Z: b* { [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。3 w2 F* h k! W6 M- a4 |! ^
下面是该命令使用的一个比较完整的例子:( `% u+ Y9 P' h! T
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
6 o, \" Z2 A# _* Kdnscmd 172.16.12.1 /info 只使用命令而不使用参数' S) w1 v, }/ F' o
输出的信息:% J" P3 t, ^* ?- G* D2 K' o. [$ R3 D- f3 ?
DNS Server 172.16.12.1 Information:# E }/ ?6 h" K4 X. l2 E$ M4 L) d1 Y
C:\>dnscmd 172.16.12.1 /info
, [' `' T; K! {. D, S% dQuery result: 查询结果( k+ l$ Q/ b8 [* B/ o
Server info: 服务器信息) d: l' i! G- a( G
ptr = 00074718 端口4 {3 H: u5 b7 N' R- D' u) j
server name = myserver.microsoft.com 服务器名称, |% k# q7 O7 h
version = C2000005 版本, U5 N/ g$ n4 s$ Y$ l
DS container = c DS“容器”6 I& d! p$ r* l# B/ U
Configuration: 配置信息 这些信息的含义请参考有关资料/ K( f! Z: Z# X
dwLogLevel = 000000007 ~1 y1 B% y4 O3 I
dwDebugLevel = 00000000; o6 L, C2 ^' F# J% Z
dwRpcProtocol = FFFFFFFF
. C! R4 G! k/ E0 H. t dwNameCheckFlag = 00000002
% ~5 X- y5 U+ U: h' a6 ^' w' ` cAddressAnswerLimit = 0
+ M, B& h8 J: g" _ dwRecursionRetry = 3
0 ~* V' x& g7 x x! V; N dwRecursionTimeout = 15
/ ]8 I' q0 g) y- ^ dwDsPollingInterval = 300
4 R @# I4 O) ^8 V8 I- Q6 y Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料& ? `9 A) G0 @7 v( M
fBootMethod = 3
! C& i$ j E3 ]- f! m/ a, `fAdminConfigured = 1 ( {% W$ {( v; F, _4 I
fAllowUpdate = 1 4 h; O+ Y0 O3 g2 d" S6 R- B
fDsAvailable = 1 2 |- L- V( \* _2 w6 U) Z
fAutoReverseZones = 1
1 ` N5 q; J1 A6 d% O3 gfAutoCacheUpdate = 0 % M, K2 J! X; T- S9 b5 m0 @
fSlave = 0 + t7 | b7 U# ?0 p& G, b
fNoRecursion = 0 $ _3 p* T0 H/ j
fRoundRobin = 1
" D$ n# k7 y2 S3 o6 U( e+ Z! }fLocalNetPriority = 1 $ T* C$ y; `! A
fStrictFileParsing = 0
2 n$ F1 g2 C- ~0 |fLooseWildcarding = 0
) V! u* J8 L7 ?0 [4 afBindSecondaries = 1
: X. t/ r. Q, i4 `fWriteAuthorityNs = 0
8 ^, v/ Y( D |( V, l4 C% rAging Configuration: 4 V" E, k/ J- t4 U
ScavengingInterval = 0
7 ]8 e% ~0 `* v+ v @DefaultAgingState = 0 - \# D9 J9 P8 R. A$ D$ n+ x
DefaultRefreshInterval = 168
) b; i, t' S. D7 {DefaultNoRefreshInterval = 168
0 h: u/ o- q% @ ServerAddresses:
3 m8 C. L" P0 t3 M3 @ P Addr Count = 1
( y% O; Z: _8 B" ~( ] Addr[0] => 172.16.12.1) Z$ f7 K" w9 m5 e
ListenAddresses:( j+ P5 |7 K7 O6 O
NULL IP Array." [# l1 B! h1 V9 T4 P
Forwarders:- y- d6 [# s3 A T5 q
Addr Count = 1
+ q5 `% s- L8 ~7 l Addr[0] => 172.16.4.3
3 m+ ~) Z+ x; I4 | forward timeout = 5
3 U2 \; T! f8 D' x" j P slave = 03 h% {, ]0 m% w5 H; b* d$ U
Command completed successfully.命令顺利执行完毕 * d1 b0 u+ n" s& ]
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 / G( _0 o& n8 N4 x* h0 w4 c/ {
命令:/Config9 C/ ^0 y1 X+ i
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
- e* W; A1 d% ?! a" C. R% x. F
& y' q+ s! L/ b 用法:# X0 p2 K3 f/ B8 o3 S; A$ G
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value6 M# g7 N7 Q' q* p* o
参数
& u2 `$ ^9 s& h! x; s1 U! R ServerName :服务器名称,意义同上
5 x( A/ t1 j$ u& D0 q5 K% W7 u ZoneName:. w+ o" c* m$ L. c& |6 A
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
3 @$ V* H- ]( \+ o6 n Property: " q! T2 p+ D" L% \3 g2 d& {' h
这个参数是属性。这里所说的属性有:
* x" \" m- E. R. |" E2 C 与服务器有关的属性:例如:' e# X* o& z* h. o) b7 z
/EnableRegistryBoot
7 w$ @9 J' c _. D) ~1 z/RpcProtocol3 m+ @2 d7 _/ I( K1 D: B# N
/LogLevel
) R6 }: k" D. S2 S3 O/EventlogLevel 等等 (限于篇幅未能全部列出)
- ^' Z1 e6 ?7 N( B% z与Zone 有关的属性,例如:
; R7 R* h6 y8 l /SecureSecondaries' Z2 h/ ~, R9 M4 Q( F/ D$ z3 }
/AllowUpdate
% G5 X: G- M. U0 a5 }! p. p$ A/ E: i /Aging8 G9 ~6 x5 h e2 e
/RefreshInterval Value! {- J" F. Q& D; a/ e- R. N: ?
/NoRefreshInterval Value: a2 U: e1 d" T5 b
属性值:4 G/ _# f' P- w/ v2 F+ T7 A
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。, U7 o* M& s1 T" z& E U% E
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。6 Y- \- J* M. p; C3 N! m: Q' E
命令: /Statistics$ h0 _; k, \( l" @/ h4 ]
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
1 ?" |. x/ R" M6 v% \. u 用法:
, J2 Q/ R5 ^4 m) E2 b5 E& A$ z1 @0 Z% z dnscmd ServerName /Statistics [Filter|/Clear]$ W' O, m& a" p6 M8 K
参数:
$ i4 i2 H+ t6 l- ?% j+ ~ServerName . _# H; u% A: f0 [ s, E4 o% J
服务器名称,含义同上。
) r$ }; O- @5 D* A8 ~可选参数介绍:
( @# D$ n6 k# B, I" f# T! V, I共有两个参数,每次只能使用其中的一个。# ~% [1 j F& j2 S
1.过滤(Filter); w! a! _( n4 y, o! i1 S
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。, n n: B" E9 J! g0 B
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: ) Q2 c5 `1 C% B- F' ^" D* U7 j
00000001 -- Time& R0 F# _ n* r' g
00000002 -- Query
6 }' T$ S+ C- f4 N& ` K 00000004 -- Query2& B* m0 Q, k" {
00000008 -- Recurse# w1 b; O4 [+ j" P
00000010 -- Master% y0 c5 q! C3 ~( G
00000020 -- Secondary
' U* f( ^$ C' G0 N& \3 v/ Y 00000040 -- Wins
* j: }# Z4 C7 c/ k3 G 00000100 -- Update
9 W/ p1 _: j8 Q8 U. ?/ Z 00000200 -- SkwanSec; I$ Q( o* @! Y- Y$ Y/ i. `2 n! P
00000400 -- Ds
+ Z( O9 F$ ]: T 00010000 -- Memory
9 w8 z6 n) g1 h1 e, O5 r/ u0 i( O 00100000 -- PacketMem
: T5 r+ d. C# ]0 @2 \$ ~ 00040000 -- Dbase
1 F1 y. k' }1 {" m4 _7 S+ | 00080000 -- Records4 j: g/ o7 {0 _+ F* A
00200000 -- NbstatMem6 [8 Y+ J) _3 @0 C) ~' [$ ]
2.清除 /Clear
6 w2 l! d3 {! e 这个参数用来清除统计信息。* L" T* L1 H9 [7 r" W6 F
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。0 o! F! l7 A) p( w
! w/ a, Q$ R# W9 r3 g+ B |! k6 L
7 Z$ x; ~! R2 h8 n+ v n, _: C" S' D. C5 D
|