本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
+ |8 L$ t& s1 S# `% F" y8 t 命令: /Info ) E) H0 g0 A. V. }
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。+ l0 I9 `2 |1 {2 Q1 x
用法:2 r/ f/ O* ]; `) _' x
dnscmd ServerName /Info [Property] : ^9 @- j6 O- Z
参数:9 z. Z, x, ?$ q$ }3 [
ServerName
$ a. S: W3 C& V. Y8 l 服务器名称在上一篇中已经介绍过,此处省略。
2 H0 e& p* j3 j: `9 W [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。# Y- J. I G4 v+ N+ l' W" g: U5 z
下面是该命令使用的一个比较完整的例子:: n& U5 x C$ A: j% n8 C7 r
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
( H# x; R2 \' x5 Odnscmd 172.16.12.1 /info 只使用命令而不使用参数& {3 V( c+ {) @& m4 o) I' b9 X
输出的信息:
6 |4 y% C. {0 F. h7 ~3 DDNS Server 172.16.12.1 Information:
) s, {' _4 {# ~0 b6 e# XC:\>dnscmd 172.16.12.1 /info; r: ?* ^ v4 N7 s
Query result: 查询结果. ^# h- T- J4 t% ]$ w3 R
Server info: 服务器信息) A- @# b) U5 s# o ^5 P( R
ptr = 00074718 端口
0 J( G7 b& t$ P. D- T6 h$ D server name = myserver.microsoft.com 服务器名称
. D; {+ r( i! x" y5 V$ I version = C2000005 版本+ u2 ~8 d; s" z# j& s) S0 h! W
DS container = c DS“容器”
: B: ~: c3 d- S' z# n, v Configuration: 配置信息 这些信息的含义请参考有关资料2 y8 L" J' u* Q3 c
dwLogLevel = 00000000
! B2 j9 u- F& m3 X" u% G dwDebugLevel = 00000000) S% ?' T2 B3 ~9 _" o$ ^7 e
dwRpcProtocol = FFFFFFFF
4 V6 F! i* M4 k) c u dwNameCheckFlag = 00000002
+ v+ }$ s, D# O3 d+ m0 k cAddressAnswerLimit = 03 O/ B: ]8 f; w; G$ L
dwRecursionRetry = 3 v! Q, i$ G7 v2 ?. `
dwRecursionTimeout = 15
" r$ u# ?2 c) C$ ` dwDsPollingInterval = 300) \/ c. N( ^( ]# u9 W( @
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
9 R3 h9 A- m) q' G( P' ufBootMethod = 3
3 G4 W+ t/ S4 R8 J0 Q& L8 GfAdminConfigured = 1 ' W, x/ H$ ~; w
fAllowUpdate = 1 4 ]) n6 U9 O) |) s1 F
fDsAvailable = 1 ' {* ?8 y5 O( j! o
fAutoReverseZones = 1 4 O7 V: K. w4 Y
fAutoCacheUpdate = 0 7 L( w" a" n7 P' m. b" G6 {
fSlave = 0 0 G, q# g- h; c$ j3 c( J$ B; o
fNoRecursion = 0 & j' @7 a2 _ T1 C
fRoundRobin = 1 6 h: B9 L8 ?9 h, v( K
fLocalNetPriority = 1
0 C7 e$ |! ]/ K' _! _0 ffStrictFileParsing = 0
2 R/ n6 Q5 |5 k. Q9 H' a- AfLooseWildcarding = 0
6 O& a: ]: i, @3 tfBindSecondaries = 1 ' S( y. I# V' w
fWriteAuthorityNs = 0
1 U; \* M- z0 BAging Configuration:
6 B" I" A3 r) e0 l6 \0 BScavengingInterval = 0
5 y+ A/ p6 K0 C e( ~$ Z4 IDefaultAgingState = 0
' h! o7 g, F. V9 \DefaultRefreshInterval = 168
1 m0 `( d$ G& G; U" UDefaultNoRefreshInterval = 168 5 w4 D! R7 y f# P; t1 w8 C; C
ServerAddresses:
+ p% v/ L: U+ g! {" o4 b5 r* n Addr Count = 18 G; R3 o; }( z+ [- m
Addr[0] => 172.16.12.1
: e& i, x: H! }4 _! A& K5 | ListenAddresses:# T5 S) _: D6 w# Y8 R
NULL IP Array.
0 M2 G, Z C2 h Forwarders:! e1 ?! Z% d g/ G1 Z, P
Addr Count = 1" d3 ]- K# c. i3 r6 W f/ P& K
Addr[0] => 172.16.4.3) K u; z+ q& T8 \
forward timeout = 5/ W" Z' T9 A& R' ?2 C9 Z& i
slave = 0
, {: U( L: q2 J. ?; e$ e% tCommand completed successfully.命令顺利执行完毕 7 l7 \- y$ U/ z% h
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
1 G! n' c6 y+ u* f* I, [ 命令:/Config7 e; T7 t0 c. G% d& o1 f
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。8 F, L4 x+ }/ T1 I g9 p
0 y% i1 N7 _$ g5 Q( t9 S0 w5 Q
用法:; _3 [2 D3 O- Z* C
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value/ Y2 Y! H8 E9 `+ ], d, O7 y; N
参数4 X* M% W; P5 [/ f6 U' k1 B9 f9 B# d
ServerName :服务器名称,意义同上
2 w4 X+ D4 N2 N ZoneName: r) m0 Y) s+ d* U4 O$ R
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 4 D9 i9 [) o: ?2 ?4 F2 ^
Property:
2 K: v6 {: @# U% Z$ p$ C/ T0 Q 这个参数是属性。这里所说的属性有:
& k) A% E1 L" J$ P( x 与服务器有关的属性:例如:
: p6 X% f. ^' r5 M7 i+ s9 M. g/EnableRegistryBoot
7 P. ]6 b- d* T }, P7 S& o/ @/RpcProtocol
% I# A7 y( i4 R: x/ F5 k6 ]/LogLevel
2 A7 `) ^9 J: s: \/ |$ J/EventlogLevel 等等 (限于篇幅未能全部列出)8 B' x! a$ @& C" r& y) ~' w
与Zone 有关的属性,例如:1 i& [( z D) @" _. M, C( D
/SecureSecondaries
( @3 A" T8 h$ W9 h; e o3 ]& V /AllowUpdate
* R j$ J2 n: u1 j) W7 v) @, I /Aging
8 X+ [0 o1 s: J) K3 ?5 A7 O5 R /RefreshInterval Value
" I# N ?% z5 q2 g; b /NoRefreshInterval Value
# I2 R3 N& S( ?* b- Z( X: B% \ `& O6 l 属性值:' b2 O% ^" D( z% r6 ~. ]
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。1 W0 u7 z$ i' Y# k
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
e9 O; E! G! R- h9 I 命令: /Statistics
) a9 N. {# G, _ 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
/ V% u. L. W0 x! } 用法:
2 ^( I5 d2 Q; H+ \. z dnscmd ServerName /Statistics [Filter|/Clear]
5 a0 J5 y. E y9 H 参数:
( P4 o; U$ n6 r6 E6 TServerName 0 _) }9 X# w: N6 m6 q3 p
服务器名称,含义同上。
) j# G3 F4 k0 M1 Q可选参数介绍:2 \& r2 ~# I8 A/ @0 v( `# f I: }
共有两个参数,每次只能使用其中的一个。
P: }- u9 @" i" T4 O8 R 1.过滤(Filter)2 c! V& f( H) p6 T9 p( X A
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
! U2 D0 O) h, m9 N! K$ r可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
0 g: d; |; n0 z1 S; z: F: z2 V* ` 00000001 -- Time* M, X1 p6 b i+ E- v$ {
00000002 -- Query' m$ v4 Z; D1 J2 [
00000004 -- Query2- r$ p3 O8 G5 ?5 H8 ^$ |
00000008 -- Recurse
) a' x7 G% z3 C 00000010 -- Master
2 `; T+ z+ T' a2 I 00000020 -- Secondary
, i& ^1 F5 O- e- E. q) k/ I: P" o 00000040 -- Wins! w! ] K& v! W$ c4 T' m g" W
00000100 -- Update$ u! m3 G3 b; J0 y0 r
00000200 -- SkwanSec
! r. |5 p5 u6 L3 m& x 00000400 -- Ds
0 _" ^8 B; }6 k h8 x 00010000 -- Memory3 D! \2 O/ V) C( R4 U8 c* t
00100000 -- PacketMem
) \# F9 \) e j" ] 00040000 -- Dbase
+ }7 L/ `9 Y8 y7 B& H! u; k: n' K 00080000 -- Records
- w( J& a" K( Q+ n 00200000 -- NbstatMem
( O6 W+ R6 U" A" w$ M 2.清除 /Clear
6 q+ ]! o; R3 ~, i6 r 这个参数用来清除统计信息。$ O5 G. B: B0 C9 ~. h( r' W
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。5 s- a3 J; |& y- b5 I2 {
4 Z# p: K( c6 U) @0 C, `! V
: @2 V9 K7 H. i: X
[9 c1 E6 v) y! G8 G$ n o |