本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。( v" C7 i1 o7 B1 `0 E
命令: /Info q" Y2 ^9 R# I6 w
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
$ e# D3 ^) _( O7 }% S 用法:& q8 m1 _8 L9 ^) h; |4 t
dnscmd ServerName /Info [Property] * \, K5 F6 c) j8 h
参数:
z0 `/ ]8 l* V ServerName
9 B8 |( f7 f( T- p& P! ~ 服务器名称在上一篇中已经介绍过,此处省略。
. r- ?" Z) j2 M+ M0 ]1 V: Q1 u7 T [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
3 C4 g3 N3 I. P9 j; x5 b 下面是该命令使用的一个比较完整的例子:
! ^. X6 w) Y; x+ F: k- t 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:; j& Z9 L9 W' |) l5 K$ }9 y$ ]4 O
dnscmd 172.16.12.1 /info 只使用命令而不使用参数1 X( W0 i# g' l. k2 E
输出的信息:2 H: n' F6 f. f P" }
DNS Server 172.16.12.1 Information:
) X# G% B( k, D% H; SC:\>dnscmd 172.16.12.1 /info8 a j1 F" i4 }( _7 ?# ^
Query result: 查询结果
" H) y7 T$ V* Y. dServer info: 服务器信息
' ~) A1 w/ V" _. k7 s! c0 V- z ptr = 00074718 端口
2 N4 g+ e* P6 R' l0 j* t3 r server name = myserver.microsoft.com 服务器名称
; h- D; m3 i% x3 ] version = C2000005 版本
; M6 @( j$ Q( }2 ^, K DS container = c DS“容器”4 J3 b$ z' f7 a( C9 J
Configuration: 配置信息 这些信息的含义请参考有关资料1 A% q6 k n6 }
dwLogLevel = 00000000- w" k* Q3 N+ W4 j
dwDebugLevel = 00000000
' F1 P% D+ r0 e N" ? dwRpcProtocol = FFFFFFFF' G) N2 K- i. R/ b* F
dwNameCheckFlag = 00000002& i% f# d8 x4 B/ z, C: B
cAddressAnswerLimit = 0
* \7 S% @' y @+ v dwRecursionRetry = 3
) A, r/ @ Q1 T1 b b C dwRecursionTimeout = 154 x0 K, z" j) S! j0 g) e3 p) P/ h, F
dwDsPollingInterval = 300
9 p4 h t K) n0 p& _* R, L2 r- q7 ] Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料- I! j5 J4 [& Q4 X' y5 I/ e
fBootMethod = 3 - @2 }; F( b" _9 g$ {( m
fAdminConfigured = 1
- Y- R% r0 B/ L0 @fAllowUpdate = 1 $ X$ s' ~& f n) w2 Q$ P# V5 x
fDsAvailable = 1
# E3 p# [3 q$ ^8 `3 d, y) Q0 pfAutoReverseZones = 1
8 J5 B% e/ |% {( gfAutoCacheUpdate = 0
( G6 L1 W% p/ e3 C7 HfSlave = 0 4 c7 s2 O2 n+ F
fNoRecursion = 0 & y0 t Q/ y# U5 R
fRoundRobin = 1
7 J2 Z }0 N% H% B( O% G# dfLocalNetPriority = 1
* d1 [ }2 M0 S. S+ kfStrictFileParsing = 0
2 b5 D9 o, x# _6 F2 XfLooseWildcarding = 0 9 `) a: B; M2 D" I$ O( s
fBindSecondaries = 1
0 h/ x1 i. n W) ]' |' r8 bfWriteAuthorityNs = 0
1 X! H% P7 U; i6 p0 vAging Configuration:
, u# U, Y* B/ [* ZScavengingInterval = 0 3 f W; i+ L+ @' ]# J" z: |6 l
DefaultAgingState = 0
, Q, S k1 \ N0 ]! fDefaultRefreshInterval = 168 * \) C- A' |7 Y o
DefaultNoRefreshInterval = 168
7 j. o! g+ U. r, Q, x ServerAddresses:
* b- I& R2 ^! B- j$ ~ Addr Count = 1
# {" ~& s, P! w% R) O1 \ Addr[0] => 172.16.12.1: C9 B6 s2 d8 s' I3 x7 z9 \7 f. T
ListenAddresses:
1 k& O; k4 G6 N; B4 r' z NULL IP Array.
5 M/ q- Q1 ^* e4 N Forwarders:: J. E9 H! [7 [" E' v N
Addr Count = 1) `) b$ E& u3 i
Addr[0] => 172.16.4.35 f" y1 |( W6 ]: V" {' N
forward timeout = 5
' v! a: j% ~: H0 u+ h5 R slave = 0
' d; w- p7 O( ]" rCommand completed successfully.命令顺利执行完毕 3 z& |6 H+ G$ p# M
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 5 g- P( ~) y8 Q3 v
命令:/Config
/ i Q; V) I2 ~. A, @ 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。3 H& S n4 v) `0 @- A# w p% Z2 v
6 v3 D! T! F$ C0 s. p- t4 {
用法:
# r' d( b, H; O* j& n$ a0 C dnscmd ServerName /Config [ZoneName |..AllZones] Property Value. [- P2 o( O5 b5 Z
参数
0 |* K& a) r a' K; D: B; O ServerName :服务器名称,意义同上
I B( y( O* f e. @" Z# @5 H ZoneName:8 V, Q7 x) W& B0 J) Y& y
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ! z. e3 {2 V" I2 `3 H/ E
Property:
# J7 y1 y: d Z8 c3 ]+ H 这个参数是属性。这里所说的属性有:5 }0 X. B! N& E6 n I0 P
与服务器有关的属性:例如:
6 X# i3 Y$ I9 N2 B- q/EnableRegistryBoot8 }" Z5 O \8 j3 w% }0 l0 L4 _
/RpcProtocol1 K7 g; P# D9 \' o# ]6 d) o* }; R7 J) F
/LogLevel
% w& S/ z% z) o4 q/EventlogLevel 等等 (限于篇幅未能全部列出)' D0 g/ Y. X* Y5 M$ Z
与Zone 有关的属性,例如:$ y0 b! E3 s. E
/SecureSecondaries7 b! w/ ]" g' r5 ~
/AllowUpdate! s. f, T+ F9 j& N% h% a
/Aging8 t, m( x; b: P. F z9 C
/RefreshInterval Value5 L/ i' |' J% u# M' m
/NoRefreshInterval Value
$ V) s0 y3 |5 r: G8 s; u& y( c) C 属性值:0 w: ?5 k' E" Z7 m6 [" K0 S
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
( H- L$ n5 j0 v6 D# x8 l从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
# P3 N/ W5 S" Y6 X# c 命令: /Statistics
5 Q5 R' ^. c! }3 P- \9 \ n3 b 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
/ F) ?* I, Y# J; u8 m4 T 用法:8 B* X* g( l2 ^' D$ g3 _% Y
dnscmd ServerName /Statistics [Filter|/Clear]
( I) |- Z' |! T9 b. k( K5 u0 j! p 参数:
( H1 b- u/ R1 p, j1 QServerName
( c: q* \0 D% y- f# I服务器名称,含义同上。) P' u7 L6 P9 |4 I% ~* c- E
可选参数介绍:
. ^ |9 O! u, j X5 ^共有两个参数,每次只能使用其中的一个。1 P$ X$ a$ |8 I$ {. O7 q$ Q3 x& s: _
1.过滤(Filter)4 d1 f0 i: L' t" m& r- T
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。+ }9 n( V0 W; l7 R
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
0 j9 f# J" W+ A 00000001 -- Time
Q# e0 O& b# m 00000002 -- Query
: {4 J6 W! E7 D0 c 00000004 -- Query28 W6 e, i( ^1 z! k& c
00000008 -- Recurse
9 R, M/ G+ O: D# {# m 00000010 -- Master9 D: c" R3 W% s) v1 |8 C
00000020 -- Secondary/ z, x. N) S7 x9 s% ]
00000040 -- Wins
5 b, k) O" e& ?# @% ?! J' D 00000100 -- Update
: x( ]2 ^: X4 Z 00000200 -- SkwanSec
8 y% ]& r& g; g$ V* M9 C 00000400 -- Ds
% q4 j4 `9 P! B3 l" |7 Z& O 00010000 -- Memory
, q* Y3 k) o/ G9 `6 W7 m 00100000 -- PacketMem
7 `( ?' \4 U9 L ?# X6 @( T! { 00040000 -- Dbase
; p8 s8 K6 g6 _ T( E4 R z# E 00080000 -- Records
1 |3 T8 P, ]. s" F" | 00200000 -- NbstatMem) Z# M- c7 M. H7 w6 W Y
2.清除 /Clear
/ F7 x( c q! I 这个参数用来清除统计信息。
$ J% \) w$ p9 W% f7 N; P; W) Q) M 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
0 }# b# D( S% q0 p! ~6 `* K3 N& K) k9 X6 w3 g: o; A( E
" k& I) b, q! t; H+ M( a# t M/ }
7 S- @% V2 ]/ e$ I6 H
|