本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。; {+ \, b; w) m/ p0 p* d) l4 b
命令: /Info , D: B5 t+ O7 ?) G1 z" k
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。8 ^# v2 W8 U" U0 s% `' c0 o8 |8 I
用法:
9 M9 U4 e& n; D. P4 t" } dnscmd ServerName /Info [Property] : l; ?8 B' ^; P& }
参数:8 `- u* `. ], M, F3 }2 H
ServerName + L- h: X* B% [/ M9 F
服务器名称在上一篇中已经介绍过,此处省略。 * t5 Q' i2 o0 p6 u
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。* h9 n6 p# x* r3 O, Z
下面是该命令使用的一个比较完整的例子:' @, M- F8 Y, Q% f, \2 I; `0 x3 _
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:. _3 Y0 q. V2 G- V4 j- Y) J6 C C; @
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
6 t: Q6 B0 Z' A' R7 W4 _输出的信息:
0 n) j" ~8 Y/ y* c2 NDNS Server 172.16.12.1 Information:" u, @" B4 [, E% D" a1 t% {2 z
C:\>dnscmd 172.16.12.1 /info4 }8 T' T$ R7 D) X* Q! l
Query result: 查询结果2 n4 j3 t, S. `# h- H$ M! S
Server info: 服务器信息
4 D: Y8 C8 Y0 D' N, u z ptr = 00074718 端口, h( S: j. m, d
server name = myserver.microsoft.com 服务器名称
& q5 c+ y8 E1 Z" ~- R* t3 ^ version = C2000005 版本
6 O0 }! J' T) O0 A% f! i/ O2 ^) J DS container = c DS“容器”
5 }& g$ S, P2 W( C u Configuration: 配置信息 这些信息的含义请参考有关资料
3 |7 L" c5 Z- c$ P, M3 i5 K% A dwLogLevel = 00000000$ _$ C& l& J1 t; H
dwDebugLevel = 00000000
' K. d0 ?7 y' F dwRpcProtocol = FFFFFFFF0 {6 R+ m; e G4 w7 {
dwNameCheckFlag = 00000002
* d* P" Q; o7 A7 Z: ^ cAddressAnswerLimit = 00 O* y( L( v- M: f
dwRecursionRetry = 3
+ H3 @' `+ H Y- W% @6 e) Y; |3 H# i: D dwRecursionTimeout = 15
2 V* G8 [8 a1 `! {) | dwDsPollingInterval = 3001 i- `( @, X1 h: _9 E( [8 J( S
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料1 h& Z* Y" X$ n: M
fBootMethod = 3 % L* |+ l2 Y( ~5 @& M2 H' U
fAdminConfigured = 1
* H! R6 G! Y3 N# s" q( q6 {0 OfAllowUpdate = 1 + q7 ]3 B) u/ S0 ^0 F" g8 x
fDsAvailable = 1 * n( k( }% l# @
fAutoReverseZones = 1 1 j; ?# B* W) ~9 \
fAutoCacheUpdate = 0
- `2 _6 d) {5 @8 xfSlave = 0 4 \( t9 g$ Y( e1 b+ R9 _& X& t
fNoRecursion = 0 " y2 T" P) r( A4 M9 Y" I
fRoundRobin = 1
4 {( `1 \1 [) V* E9 MfLocalNetPriority = 1
1 V& p1 ?, a( l: IfStrictFileParsing = 0
9 ]5 p% d. \! b4 OfLooseWildcarding = 0 / c' M" Y& I$ F7 M2 a
fBindSecondaries = 1 . D" i( T+ K8 w5 C6 `( G+ ]
fWriteAuthorityNs = 0
% g; H' z& D+ H' J4 _$ ZAging Configuration: 9 T( q% l6 R. y* ]
ScavengingInterval = 0 , `9 M5 A! [, Q" ]! Y0 L
DefaultAgingState = 0
6 D4 E2 j: |! k* \# WDefaultRefreshInterval = 168 , g I2 [( K: j4 r! ?
DefaultNoRefreshInterval = 168 d: q' b3 F* w2 n. j$ d
ServerAddresses: 1 u+ j; b+ E4 T ~2 c, ~+ u5 a
Addr Count = 1
# B5 }4 Y [4 o) | Addr[0] => 172.16.12.1$ I) t3 M. |4 J, V2 ]& Z
ListenAddresses:$ U( x* F4 |( q: O8 @; c( d5 B
NULL IP Array.8 g' J, O0 X" }3 A& e1 x
Forwarders:' a. p- \4 T' z3 ], f
Addr Count = 1" o. A i6 ?/ x; s/ ~
Addr[0] => 172.16.4.3
9 S: Y5 M8 a& e+ l+ j2 |( j( W3 _, y forward timeout = 5& `" l8 t$ x3 t O
slave = 0- ^+ \# l# v9 U
Command completed successfully.命令顺利执行完毕 ) r5 }% ~4 u( h6 O' g
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 & d0 e# L+ _" ^4 C4 y( y, U
命令:/Config
k5 ~ k4 W6 L 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。: c1 F$ E1 _7 b9 a/ O+ S
; j k' A$ E8 E& _& z% c 用法:
2 H' s p; V3 F dnscmd ServerName /Config [ZoneName |..AllZones] Property Value: A2 l0 A% @; _, i! m
参数
8 v2 o1 H0 D( F ServerName :服务器名称,意义同上 $ S6 n4 n- X# \0 c
ZoneName:
) r0 `$ Y- D- a: t! | S 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
$ Z. ~$ l, |+ {. H3 Q$ `. B Property:
* w8 v8 y. i8 Y& y: q5 z2 R 这个参数是属性。这里所说的属性有:
0 D9 W, J+ ]% k2 y2 i 与服务器有关的属性:例如:
0 _) u( ]1 R, p! h" c7 r9 o9 g& |/EnableRegistryBoot: i6 y0 O5 U9 L7 ^5 p0 _5 ?- e. \
/RpcProtocol
$ A# c1 w O* }5 o* ^7 L B/LogLevel
4 u' @' X( |: ~2 Q) @; I% N4 R/EventlogLevel 等等 (限于篇幅未能全部列出)! I: d6 Y8 v# Q/ l. n
与Zone 有关的属性,例如:( m. B+ a* K2 s1 |
/SecureSecondaries
Z. w4 S/ G0 X# O. ?( O* M /AllowUpdate: f8 _6 S+ `% ?4 o9 i# n' s* R4 w
/Aging
0 j, S6 O/ u+ _) q4 j /RefreshInterval Value# j% l7 Z& L5 @+ |* o8 s
/NoRefreshInterval Value
$ m# T" N/ F1 m* j' x; N 属性值:9 l" t; f8 T; Z8 I+ w
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。. J; g3 q/ o% @5 {/ \" I! h
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
2 n' n" [7 a2 C& G. n, R 命令: /Statistics+ f8 X, X2 \% q; S9 P3 ^; o0 U
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
2 |" H" G6 s) o h" I 用法:2 z& Z* v) o+ z5 p C7 H5 S; m
dnscmd ServerName /Statistics [Filter|/Clear]7 K" e% l- y5 w* N/ v$ H
参数:. m6 {/ y0 n, O5 T, M' }
ServerName - S6 `6 b# o& g( b0 O5 N2 J
服务器名称,含义同上。( m3 Q( z% e! t2 k$ J9 a4 Y# Q, k
可选参数介绍:9 R) l n/ a, J0 k0 Q8 T
共有两个参数,每次只能使用其中的一个。
/ x4 _2 p" Q5 p 1.过滤(Filter)2 {$ ^6 d$ t- d7 f% J' H, T
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
! g. S4 H- q7 a3 a# u0 F, X9 r可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: * @9 G8 G; n3 d! b
00000001 -- Time1 w* v# F$ ]+ z2 ?1 y/ @9 t" f
00000002 -- Query/ ` M% v/ q$ l5 Y% o8 B
00000004 -- Query2
7 ?, Y8 w7 \1 U( L3 F" A% r' q4 U; v 00000008 -- Recurse; l l3 c2 g: }$ {9 p
00000010 -- Master& z5 \5 E) R6 b5 K0 F+ q# z( j$ @
00000020 -- Secondary
, m' d. \5 x* Q. V8 R 00000040 -- Wins4 k: @6 n) j, W u. ?/ L
00000100 -- Update
& [- [% Q/ F- i) H. s( ~9 v8 b( x 00000200 -- SkwanSec
, t0 S8 f9 z; V0 |- C g/ h: N# a 00000400 -- Ds
' y9 A1 G2 W W/ x; R 00010000 -- Memory
' ~2 A# j l% o3 J' T6 I' y) c 00100000 -- PacketMem
/ E. x5 X% J( @, y% o 00040000 -- Dbase& T0 ~7 d8 {/ N' c& c2 P
00080000 -- Records0 B! m0 U' ~5 O4 S9 R& A
00200000 -- NbstatMem3 W; w/ L( L) L9 N. R/ j/ I0 ?! E
2.清除 /Clear
A+ d- ?4 b' V8 P+ n4 p: Z 这个参数用来清除统计信息。
. ]: y) E7 a) F' `/ a& P/ j) T 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
7 e3 C5 V5 `0 S# |
4 W) C! r4 y/ K& ?
; ~$ ^" e% f7 U" L: Z7 T
# N5 i8 y* \; p s |