本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。) f3 h) } N5 \ @9 q4 u8 p ]
命令: /Info
" W) `/ d' E7 j5 u& `8 ?9 ? 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
4 r+ X( N& J0 F 用法:
# T/ x: ^8 p( z+ a dnscmd ServerName /Info [Property]
( Y2 B4 U7 ]9 }7 [* U4 q7 r 参数:$ [. e( p B; U2 M/ u5 v
ServerName / h/ P: V$ e. j6 ~; L2 i8 R7 N
服务器名称在上一篇中已经介绍过,此处省略。 3 F) d8 h* D! q; y( F# x0 v
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
# ]+ B: d9 T5 j6 y 下面是该命令使用的一个比较完整的例子:( V( i1 k' w" X( `2 x
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
1 B2 v, q8 n& _# t4 [2 mdnscmd 172.16.12.1 /info 只使用命令而不使用参数0 j) A" W' E* O# A) g1 x
输出的信息:, A( c# R6 K) X9 t2 `
DNS Server 172.16.12.1 Information:% J: V( I9 G. q* x& E$ o T
C:\>dnscmd 172.16.12.1 /info
& A+ D8 u1 x" l; ?Query result: 查询结果
2 ]" T% G1 [/ l5 u2 d/ C5 sServer info: 服务器信息
) A( i5 k$ h/ k& W ptr = 00074718 端口
+ ~8 O) `. X- f0 F, ~ server name = myserver.microsoft.com 服务器名称4 ^/ |# n* T4 Y' w' T0 x# `7 E
version = C2000005 版本
. k, h( q+ A( @$ } DS container = c DS“容器”
0 l5 C7 C5 l1 h3 i- z* r Configuration: 配置信息 这些信息的含义请参考有关资料" a1 K+ o/ |4 x# E! |) L6 Z
dwLogLevel = 00000000
" K# X& g6 c, z% ^ dwDebugLevel = 00000000% R3 g* W; K8 z% o* A
dwRpcProtocol = FFFFFFFF' P" J9 H/ @% H% z, r [8 x
dwNameCheckFlag = 00000002- V7 {, ^, t1 M3 A
cAddressAnswerLimit = 0* S9 ^ ^ _, H: C, N3 r* O# k
dwRecursionRetry = 3
* h, {) L2 I. `4 S- j9 [9 R* v dwRecursionTimeout = 15
3 k& i. T2 |5 D* o' u% Y. c dwDsPollingInterval = 300: f" Y- a1 @& a4 W# c; m
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料8 L. N3 U! k- k3 X% [1 y$ F
fBootMethod = 3
% l4 o" }- X! V& a1 u! sfAdminConfigured = 1 + h; A' L1 y' t
fAllowUpdate = 1 ) o, a* v1 q- U1 p. d+ K
fDsAvailable = 1
( l& Q7 B2 e* p( F# r; N# wfAutoReverseZones = 1
2 T; U% Z( E- m( r. nfAutoCacheUpdate = 0 4 j1 `4 [6 q$ @; P2 f( W4 U6 ^" ~
fSlave = 0
2 Z6 T) u2 j9 c% o. u7 l8 MfNoRecursion = 0
4 Y5 q- |; f9 o* m& lfRoundRobin = 1 + p( q! O5 b/ |: L
fLocalNetPriority = 1
- A, u$ }# Y* HfStrictFileParsing = 0
/ [' _, b) Q" [4 g& u) b* Q% kfLooseWildcarding = 0
; ?3 e4 A2 S. o8 q0 r$ x# ifBindSecondaries = 1
4 F F: }. i( \4 gfWriteAuthorityNs = 0 : W* c' k) V f8 y# R6 K$ x
Aging Configuration: # h. r* Y) V: {9 \/ \: G
ScavengingInterval = 0
) R. ~9 g' t% f0 `! u( oDefaultAgingState = 0
0 c4 x+ Z a' t, t; P/ MDefaultRefreshInterval = 168
+ V! I A8 c6 b U1 ]2 ?! dDefaultNoRefreshInterval = 168
/ ]8 m3 l+ p0 w2 m* p, G ServerAddresses:
2 I/ u! K# F* \2 E% P5 C. L' s Addr Count = 1
- n5 l; O+ K7 ^" \% s+ I2 ^; H Addr[0] => 172.16.12.1
0 x' i) Y* ? E ListenAddresses:
+ J+ F- d$ ?: ^+ a NULL IP Array.
% g) D, y2 b7 Q Forwarders:6 e) f: |/ a: ^. S0 I+ I
Addr Count = 1
" J" F3 z+ a' y( c/ E2 H Addr[0] => 172.16.4.3+ ]- j) N. U2 @) |
forward timeout = 5
. P7 e5 y# F# F" B9 Y+ U7 w# B slave = 0
4 T" u9 o( X) E4 GCommand completed successfully.命令顺利执行完毕 & a$ t' a: B9 G/ k& Q" Y" N
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
6 X/ y5 f4 q R, G$ h- i3 E 命令:/Config$ A" Z8 G/ z. E% P* s
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。8 L, f: S( Y8 T. a4 y* S( ?9 [
; _) U$ B+ p2 B9 v* `/ B) j/ |/ \ 用法:7 Z0 O9 R, Q3 t: F+ V! {: P
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
) w4 f2 _8 M% Z$ V+ `4 ? U/ t5 X 参数7 B! U! c6 l, r5 H' n8 e6 N
ServerName :服务器名称,意义同上 U Z1 c4 k! `; @' W
ZoneName:' t+ W8 W$ a* j8 |0 z7 i# V
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 6 N/ y$ H9 {5 M" K4 h9 Y8 u% k
Property: - F0 O/ x: n/ R2 g) W* a8 d3 e
这个参数是属性。这里所说的属性有:# L9 ], l& q& d+ r7 Q1 p
与服务器有关的属性:例如:
1 \4 M( S) z9 w9 F/EnableRegistryBoot
& A8 u0 m" [% g3 M/RpcProtocol* X- ~5 C$ F7 U$ V
/LogLevel' O. Z2 p& R% z% `
/EventlogLevel 等等 (限于篇幅未能全部列出)) F) _1 e. Q% l& e
与Zone 有关的属性,例如:
9 `9 |; v* Y& _# m /SecureSecondaries3 A) D7 D# w( j* {% |9 i
/AllowUpdate) c; y5 \! ?$ i- b* t9 s
/Aging% B8 @4 Y) G' a" f! j4 ]
/RefreshInterval Value
G# u* X& O5 g+ O" j% t$ X /NoRefreshInterval Value
; i+ [, }( ~: p: E2 |7 y 属性值:
{+ v6 A( g; o- ? 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。% A% \) o6 }+ i1 e/ w
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
* ]3 T+ [! _; t 命令: /Statistics! j# Q5 S8 `7 S9 ?7 @
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
. g5 }: @8 `; D9 O 用法:
+ b6 J. V4 R* a dnscmd ServerName /Statistics [Filter|/Clear]3 U; E# `) ~6 q
参数:
( {9 o% w: v2 m6 k+ O3 `ServerName 5 Y0 x, p9 ^4 H$ _
服务器名称,含义同上。
5 i' _% |: r6 p4 U) x6 M* c' Z5 N可选参数介绍:
' Z. l% n( M' c" O& {+ s" H7 i( Q共有两个参数,每次只能使用其中的一个。
! n+ M$ O& P# \4 u 1.过滤(Filter)
, J8 v1 Q3 z8 i8 G9 M6 b 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
2 o& N; p8 u' F8 Q1 A8 z可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
$ w8 P, A5 x6 {2 D 00000001 -- Time: |. E( ]$ y8 ~) k7 e+ t% s& \+ n% S
00000002 -- Query2 \8 `. |! K J' m
00000004 -- Query2
& l8 p+ O. t7 Y% U7 L2 o- R 00000008 -- Recurse" z2 \2 Y2 B y
00000010 -- Master
" E6 O2 }6 B7 ^' e6 N* ` 00000020 -- Secondary% e- _4 E5 K, V$ `# R
00000040 -- Wins
% i( V/ y! v8 _' X 00000100 -- Update
5 h" I. \! o; A. K 00000200 -- SkwanSec
, G4 i1 h _3 ?$ z 00000400 -- Ds
7 ?) P# P. Y$ ?0 ^/ h 00010000 -- Memory
* i! A6 h- @2 H) p5 x( P! v 00100000 -- PacketMem
4 n# F5 {% R( [% i4 i1 g4 o' l* L 00040000 -- Dbase) q+ E! `- g8 W0 h1 a
00080000 -- Records4 l. r% y B7 ?
00200000 -- NbstatMem: @% I3 E, I1 j9 {
2.清除 /Clear
8 x7 N9 y# k/ L0 D4 J B 这个参数用来清除统计信息。
6 G6 T: q3 t- a' s, `% r& h4 f( p5 q4 n 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
+ ~1 U7 m. m8 L: V# g0 ~
: n- h3 B+ ~- Q4 g" G% [
( V" ~% `' x3 z% V* C6 l5 v. n' u0 B) W0 `9 f9 w+ }/ J
|