本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
( L0 K% o- c$ o/ v/ [( Z 命令: /Info ! R" q+ T& f5 N
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。8 B8 ~, T0 x$ X- x. i- s. |
用法:$ ^/ x) j. T8 I, t q z1 a& m
dnscmd ServerName /Info [Property] 0 w$ _% K) E) u: I6 O
参数:
8 W3 T/ g0 t/ I$ J% X2 y ServerName 4 X2 y* m) x4 K$ i( x
服务器名称在上一篇中已经介绍过,此处省略。
9 x$ n, {8 z5 V [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。! g, C" s3 Q: m) j# K: \
下面是该命令使用的一个比较完整的例子:$ |2 o# T( ~ T6 j5 L) d5 q
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:& `" V$ c5 _* i, C
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
! w. b2 z' \: Z; p输出的信息:
# e/ t: a. R4 o0 o+ x5 Q8 MDNS Server 172.16.12.1 Information:
! B* {1 O1 V5 _; Q" ~, kC:\>dnscmd 172.16.12.1 /info
! \* g! [ ~) OQuery result: 查询结果+ W; V/ P+ Z; E* ? p4 j
Server info: 服务器信息# v. d( s% p! K- E! o& w! |
ptr = 00074718 端口
9 k3 f/ U; n+ E: u/ y server name = myserver.microsoft.com 服务器名称
; o% L; n, \' W. K( {& B version = C2000005 版本( b: i* q( q' c) W- e
DS container = c DS“容器”- h+ j8 K6 _; |/ s
Configuration: 配置信息 这些信息的含义请参考有关资料# p# V* t+ b7 b( o
dwLogLevel = 00000000" z/ I/ q7 ~8 [- e( @
dwDebugLevel = 00000000+ E. \% Q8 _: M$ e* G6 p9 X
dwRpcProtocol = FFFFFFFF
0 [2 z9 \- C9 @# r2 J* ` dwNameCheckFlag = 00000002
2 K* g0 \3 O& S4 ]6 R cAddressAnswerLimit = 0
7 D4 m$ Q; i2 j( d: j2 ?5 w3 I dwRecursionRetry = 30 V s" e4 q8 k* F' `, k
dwRecursionTimeout = 15
6 M$ r1 ~4 L" D, t3 R8 ~ dwDsPollingInterval = 300
# {. g/ f$ J, Q. R Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料# {8 l `" @ u6 Q& J: j$ P
fBootMethod = 3 # y+ ?1 o$ D* l: d) D1 {4 D/ s' h
fAdminConfigured = 1
) o8 G3 W7 ?" v' _fAllowUpdate = 1 $ `+ K, R. c4 P: M6 f' p" `( n' \4 A
fDsAvailable = 1 ) Z; ?' F' ?7 I; U* m
fAutoReverseZones = 1 / `- h+ {8 N3 {
fAutoCacheUpdate = 0 5 V8 @8 V( v- W
fSlave = 0 5 {" d1 u+ @' {4 N% L3 n
fNoRecursion = 0
/ i/ g& c0 g; p/ |fRoundRobin = 1 % b1 b- E0 {2 N$ b# @3 r
fLocalNetPriority = 1
5 N1 g) s/ V9 F; V$ }fStrictFileParsing = 0
$ v) H T# A1 n5 R' ~fLooseWildcarding = 0
+ y: h5 x4 p/ H& S- l; TfBindSecondaries = 1 ' V. O- N& O6 t1 {
fWriteAuthorityNs = 0 - G4 V- g* S# g* b" G( g$ o) t
Aging Configuration:
& N+ k4 U1 }& u; R4 aScavengingInterval = 0 f- V" d! w" D" Y2 F R
DefaultAgingState = 0
( o; ~& k# V) RDefaultRefreshInterval = 168
7 r; G8 n+ ~: V; ~ n# |DefaultNoRefreshInterval = 168 % a# U$ j, P/ X' f/ D
ServerAddresses:
9 |8 l7 m2 G( D! _- Z8 Z Addr Count = 19 p; j8 m- |+ n' z
Addr[0] => 172.16.12.1
\, }" L0 a0 N ListenAddresses:7 g1 T' V; I# J3 M9 ?
NULL IP Array.5 `) A. d# t1 w$ E; T8 k
Forwarders:
5 H9 D# X4 ~$ F: W8 {, ~8 t Addr Count = 1
; E; c; _7 {! N- g/ T Addr[0] => 172.16.4.3
2 U: j" i& z$ p forward timeout = 5
3 O& k9 \- ?# r slave = 0' @6 e/ z! U, ?
Command completed successfully.命令顺利执行完毕
0 K- E5 c4 F5 R) u6 W$ n8 D" H3 G 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ; r7 U6 g+ _8 r9 F' m# U+ h2 X7 a
命令:/Config
4 m% k8 M u- U3 ~* x 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
+ {- u- h3 S( Q4 I* Z( h$ B# C8 _3 T! f0 @6 p+ f/ s: G' a6 Y
用法:$ Z' J" e) r1 M" T2 k" A. |; _
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value6 r" S, q0 s& y8 n
参数 ?4 \: i+ k- I% D$ l
ServerName :服务器名称,意义同上
: ]4 i4 G! j& P9 i ZoneName:
+ R6 b2 D# m; A$ Z$ n, K 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 2 K& X/ [+ A$ P
Property:
) [* f* ]1 D6 U 这个参数是属性。这里所说的属性有:3 f$ @! m& ]& n' x1 u
与服务器有关的属性:例如:
, q! _. u' J* V. Q/EnableRegistryBoot8 e& R, j+ ~& ^3 o8 d
/RpcProtocol6 D+ K2 u) J |/ W; F7 i/ R' S. O
/LogLevel
. K Y! ~$ W8 Y& N: ?9 E/EventlogLevel 等等 (限于篇幅未能全部列出)
4 D+ K+ i/ D7 O与Zone 有关的属性,例如:
* B: v+ |8 t" ]* Y$ |9 X* A /SecureSecondaries8 O% B5 h0 W8 H% t
/AllowUpdate
4 X8 ]" G. j2 S$ `. R9 |7 z/ g /Aging
0 E d9 E7 p8 i5 x8 T /RefreshInterval Value
* N+ q& g( Q q' S6 t0 ?4 F3 @; y /NoRefreshInterval Value
) E7 l. ]( l9 L; l& L 属性值:' L/ t9 W- W5 I4 H6 b8 G; w
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
$ F5 S: C* V( ^- L% U( L从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。5 e+ f' \0 Q# V/ L" j
命令: /Statistics9 \# |! a$ l+ B' h7 R5 F
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。1 S7 J( Y1 }% z4 `; k7 ^" U% E
用法:% R5 m/ R9 r `, P% i
dnscmd ServerName /Statistics [Filter|/Clear]
5 r+ f! l7 Z3 P/ v; ^2 C4 Y, f 参数:
, N$ ^; f. h+ o9 p7 T$ mServerName 6 d7 t# _5 l, U/ l7 ^5 g4 m! U
服务器名称,含义同上。4 H% |! {4 U/ E0 V* C5 C
可选参数介绍:
2 D6 P# ^8 K4 d- ?% Z# r: F! m$ o共有两个参数,每次只能使用其中的一个。$ s# G3 o1 p, s9 \; y2 I5 K0 m: g) s
1.过滤(Filter)
% x; @* K: r- E. e) z; \ 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。" s& W; l3 {( B+ J
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 9 l; a2 {& D0 ` n/ k4 z8 [
00000001 -- Time
/ w) Y3 E7 L3 ^/ G2 W9 v 00000002 -- Query
( g* W9 j+ m2 X. Y5 |, n6 t 00000004 -- Query2* z5 b* x1 q( p& f6 n
00000008 -- Recurse( w5 ]$ z& h$ I" t$ {; l/ P
00000010 -- Master
0 C' K4 [% p m3 a$ d 00000020 -- Secondary
2 M5 X: L d3 H' t) h" h% J7 V6 Y 00000040 -- Wins
1 h1 w: ]4 o0 p/ O& \ 00000100 -- Update
# o9 X6 o6 p$ u% H' u6 w6 A+ R 00000200 -- SkwanSec: t' z( D7 w4 b$ Z' h
00000400 -- Ds; K6 m$ G. y' X; e; E
00010000 -- Memory
E6 K U2 z( Z v9 a 00100000 -- PacketMem8 M2 `; U4 Q$ [
00040000 -- Dbase
, C/ g: h0 O) ?) [$ t& L 00080000 -- Records& z" X7 Z% j! i" ~
00200000 -- NbstatMem4 w- c) U$ t$ N& T9 |
2.清除 /Clear 9 [" N; X8 F. a/ l4 X* p+ G
这个参数用来清除统计信息。: g5 \& |/ N6 v5 r. Z
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。 M& c( Z0 _5 A
- J7 K" A1 ^6 {! w. s
, C6 N4 W! g9 ~; E
: B" O5 s5 `1 [' f |