本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。) T7 a2 h/ ?6 |# w
命令: /Info
/ E9 `4 M2 R* q2 N" c& { 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。& `4 e& |3 w9 j
用法:
M1 a; C6 B* {$ S dnscmd ServerName /Info [Property] 0 p# P! h6 m+ \9 X: A; k; ~) f
参数:( c4 d. }1 M% |+ t
ServerName
" K% y8 k" f( C. W" g1 a: F 服务器名称在上一篇中已经介绍过,此处省略。 * z/ L7 [6 v% |3 U# P0 q, }
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。* R/ @8 g# j( h2 W+ T5 N! A
下面是该命令使用的一个比较完整的例子:
$ P) T$ U* B% a$ X/ z& n, {% n" K 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:4 r6 m& L+ m) q, Z3 e- S3 c$ U( M6 I
dnscmd 172.16.12.1 /info 只使用命令而不使用参数: J5 S0 g$ u* C( j- U
输出的信息:5 V, W- c( p$ Q' I4 v) Q
DNS Server 172.16.12.1 Information:$ n* z* l% b- h$ k
C:\>dnscmd 172.16.12.1 /info
: J" S8 I, X0 LQuery result: 查询结果0 t3 ?7 v, m, ^
Server info: 服务器信息
8 i, q, T+ v* y8 J1 Q5 z ptr = 00074718 端口
. w! z9 x' s( a- | server name = myserver.microsoft.com 服务器名称. K* c- l& u7 j) n4 p' S+ F0 s
version = C2000005 版本
2 X, Y' q; m, T- F2 F DS container = c DS“容器”& b; B; l! ~; H8 J' Z- y
Configuration: 配置信息 这些信息的含义请参考有关资料
( O) A! R/ I& c5 E- }) H dwLogLevel = 000000006 d+ h! B/ |) z0 U6 B$ D) `" S) Y
dwDebugLevel = 00000000
! B( J0 {: d2 Q. ? dwRpcProtocol = FFFFFFFF
6 H( s3 i1 e6 I( z1 D1 W1 V9 h0 n dwNameCheckFlag = 00000002; w5 z2 \$ B f; o9 O
cAddressAnswerLimit = 03 ]' p# [! H$ K9 U! L
dwRecursionRetry = 3
+ X. N' U1 ~1 m/ v3 O+ S; B0 g/ V dwRecursionTimeout = 15+ s% @- w2 O4 g8 z' I$ o1 {
dwDsPollingInterval = 3007 Z6 S; C' Q/ |$ |& E
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
$ z, D8 j% g/ x& v$ r& PfBootMethod = 3
2 T# n$ Q. ]% J; T3 Y# b0 @fAdminConfigured = 1 * {& W( J; f: E7 r
fAllowUpdate = 1
% P1 d2 J" j5 G( r! kfDsAvailable = 1 ( U" B) v4 U+ d8 _) b3 j, d
fAutoReverseZones = 1 5 ]) v L$ b2 [. _7 i) f
fAutoCacheUpdate = 0
1 H+ J! s0 u/ _- W3 \5 `fSlave = 0
2 Y, Y! K2 \* F; V3 d0 tfNoRecursion = 0
4 q+ K5 l# X' f% c8 W; V3 K- AfRoundRobin = 1
1 y* Y) }6 w9 k8 d" I# ffLocalNetPriority = 1 " R0 ~( T4 ^! A$ X) V
fStrictFileParsing = 0
( k1 o* L' f5 `, o* Z' mfLooseWildcarding = 0
. s# h+ s2 h/ Q- bfBindSecondaries = 1
( U, P g6 w4 j5 H( }* yfWriteAuthorityNs = 0
3 ^" b: Y5 ~% m$ v+ c3 eAging Configuration:
9 {/ R5 C& r; j* xScavengingInterval = 0
6 N- u$ Z% ^( j# [DefaultAgingState = 0 ! j7 @7 t' ^: D+ `; u# k
DefaultRefreshInterval = 168 & d7 K( l* L: A8 G
DefaultNoRefreshInterval = 168
* `+ q4 T. G5 _ ServerAddresses: 6 {) m+ j/ V; [+ e% @' Z( a- h; u
Addr Count = 1
( Z* g# n: [4 ^ E& c Addr[0] => 172.16.12.1
0 ]3 Z' A) W" I ListenAddresses:8 S& X, p" i: @ A
NULL IP Array.
5 [" X2 A; ?" N' G* g$ h: ?; C% R$ H7 V Forwarders:; m% d" x/ ~4 a- B
Addr Count = 11 e0 O6 E9 U6 j( \' e
Addr[0] => 172.16.4.3
; d1 I& V/ y) W( x* ?% p forward timeout = 5
0 `+ Z3 q' H8 t0 ? slave = 0( C4 d3 j) f5 F1 H8 C
Command completed successfully.命令顺利执行完毕
. h3 Y) W; V c4 P- W 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
. u% ]% G! w7 G! L* X i1 K 命令:/Config
+ b. \0 I4 u7 N5 D 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
3 R) Y5 {( a/ b1 g( y+ U7 G, z* k
用法:
& j# N* `' K& t- j( a dnscmd ServerName /Config [ZoneName |..AllZones] Property Value6 ^6 _) X; K2 ^) {1 h8 M+ X; m T" e
参数* t0 h2 E8 I7 m4 _% Y$ U& O
ServerName :服务器名称,意义同上
. [$ q* D: t) W8 M ZoneName:
/ M" h0 V. g) [. N 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 9 n: ]# H0 e8 i/ ^+ l& A+ S
Property: - K5 j- f# N5 E0 f( A
这个参数是属性。这里所说的属性有:/ H* \0 N$ w& M# X
与服务器有关的属性:例如:
3 t: C3 [0 k/ y) U! X! v9 C/EnableRegistryBoot
% g \5 m1 ^" T9 ^7 o/RpcProtocol
: [' q9 S5 V) `. ]! x0 N/LogLevel, ~3 L( i6 \/ |; X
/EventlogLevel 等等 (限于篇幅未能全部列出)
; c$ d$ t1 e: V! K. Z' H% L) T与Zone 有关的属性,例如:( q, ?7 D" c/ z$ g! k
/SecureSecondaries) m4 Y$ D, ~2 }- X: Z
/AllowUpdate% ^7 P6 m# C) {, Y8 v9 V1 U
/Aging
4 W* O7 W1 L) o" C' c* e' n /RefreshInterval Value: M' f A! Q4 G! P, ?, A1 E
/NoRefreshInterval Value7 F4 b! L& B$ v0 @! _3 }# U( I
属性值:
& w5 ?7 [% s, O* ^! ?, a) w4 o 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。/ e. y8 |3 A: b1 b4 V9 C8 m
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。! E" q" x! H6 E1 {' Q+ n0 e+ o
命令: /Statistics
9 ^$ x! l8 |% _8 D( R0 D 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
~8 n& s9 v [% t8 i1 W 用法:
2 U6 ]% I: ]6 O1 m. @1 ~8 ^ dnscmd ServerName /Statistics [Filter|/Clear]
0 R' G1 d; b1 g9 E 参数:3 ]* K7 l. P, v" V. h
ServerName
4 Q. U; l$ q& _3 ^# h服务器名称,含义同上。4 i* k' X2 G. w
可选参数介绍:
. C" X' J, Y6 Z& u共有两个参数,每次只能使用其中的一个。8 {2 S9 o$ S2 q. s* [/ d( b
1.过滤(Filter)
: _" l$ J5 \! q) o 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
) j" A- ~4 ]# Q5 D2 |/ x: D3 p可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
5 C! U8 K% z+ H" X9 U: v 00000001 -- Time) Z) `1 F8 s. }% w
00000002 -- Query# r, J( w" h( S8 `$ E, P
00000004 -- Query23 F$ B; X% Q3 ~# E# L
00000008 -- Recurse
5 m( A H7 O& U$ T5 \8 c. Q 00000010 -- Master- A, A2 O% m6 G' i2 A% @0 d
00000020 -- Secondary1 h u7 U+ A* L# {9 I3 G' K6 U
00000040 -- Wins
/ w3 R+ x4 f* I4 U0 q( z9 J$ Z J 00000100 -- Update# d% ]3 X6 C8 `0 r. ~8 d2 q/ e
00000200 -- SkwanSec
& {, I: w: D! s7 W j# ]- w 00000400 -- Ds; f' n" O) c% Y q& O3 d
00010000 -- Memory
7 V- x- m- Q+ W! t% p5 j. E 00100000 -- PacketMem
$ U6 ^" C a H& ? 00040000 -- Dbase
1 C- a0 G9 ?" {! j" h. z/ z 00080000 -- Records
7 D+ _6 t$ N& X. a5 b 00200000 -- NbstatMem
+ l5 Y5 A" W# G& F) I Z) R 2.清除 /Clear
) s! \: }2 l- V: w. K2 Q0 W M/ ]# P9 Q% T 这个参数用来清除统计信息。% [7 j) `) b! G
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。2 ^) u+ v+ ?2 R9 {& i' ?* o
8 ?3 _1 e7 _. A# ~ w$ I" i
) m: p3 G, m8 D5 J f9 I
) Q8 o; M) P6 r |