本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。3 ?1 @- t0 r) L% P
命令: /Info " k [8 ?: o" r8 v/ T0 y+ p
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
/ r5 D3 D' }3 {$ Y3 o 用法:: D2 H7 p# x5 Z; a
dnscmd ServerName /Info [Property] - u2 p, x `3 r: v" ?: p* U8 G1 H. p
参数:
$ m& [/ x3 u- N& L ServerName
D; M. i! J2 B# y 服务器名称在上一篇中已经介绍过,此处省略。
0 T" B4 x) d. j/ ~ [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。9 J) J/ ~# M. L- U9 f m) d
下面是该命令使用的一个比较完整的例子:
# h( _$ M- C# l 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
3 x: d# R( P: t4 ~, C. `dnscmd 172.16.12.1 /info 只使用命令而不使用参数 f/ D- i7 P" t* B& W& V
输出的信息:' f6 V9 }. H+ i0 G% }% Z
DNS Server 172.16.12.1 Information:
4 l3 |% J' v9 {% gC:\>dnscmd 172.16.12.1 /info
0 r9 M! T# c3 ?* \1 M- I. gQuery result: 查询结果
5 P" n& V9 ?% G1 q; j4 \4 ]Server info: 服务器信息
9 r7 J F$ v# ~+ V# r" F; r ptr = 00074718 端口, V' ^* s/ @9 J8 v$ I
server name = myserver.microsoft.com 服务器名称
5 j( @+ W6 b9 D1 k. ~ version = C2000005 版本
6 f7 Z' e8 |, U$ v! d DS container = c DS“容器”) D/ X3 Z; H# ?, \2 q; k
Configuration: 配置信息 这些信息的含义请参考有关资料. _6 a; `, s* C, n: P+ j) W) S) ?" f7 r
dwLogLevel = 00000000$ c1 s6 F0 O Y
dwDebugLevel = 00000000
- w/ b' p% {* W dwRpcProtocol = FFFFFFFF
1 ]9 f3 A, ?% @0 p' G% X dwNameCheckFlag = 00000002
& n% j0 F) x3 Y# [" S* G cAddressAnswerLimit = 04 d6 k, ]) r4 f* U( a" b4 f
dwRecursionRetry = 34 _; v/ `" M. I) w
dwRecursionTimeout = 15
" A8 Q, k) H. j) g R dwDsPollingInterval = 300
3 S7 o4 g2 g) |! @$ I Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
& I T# L$ a% A4 e7 q) q1 O3 OfBootMethod = 3 8 B) O! w( L! Q0 V
fAdminConfigured = 1
5 }$ ? y) z% w, k9 RfAllowUpdate = 1
. ]6 T$ `; {+ _7 a) q3 r% T' u7 hfDsAvailable = 1
' B8 G; q# {5 e# \2 T0 r5 vfAutoReverseZones = 1
3 S7 g' a7 u3 t) k, hfAutoCacheUpdate = 0 $ ?9 O& E- e$ K1 W% Y2 r) N8 ^3 T
fSlave = 0 % t4 p0 m* z! o# a: w
fNoRecursion = 0
7 E* W& O% \- o; R6 Q7 qfRoundRobin = 1
# Z, |# v* u% c# JfLocalNetPriority = 1 4 J# \' B2 K& n8 Y
fStrictFileParsing = 0
$ |- G4 i9 Z5 OfLooseWildcarding = 0 + L0 @) d0 g! f1 e& D D! ~+ ]
fBindSecondaries = 1 : t& S4 J, Q# Q4 [+ `8 [
fWriteAuthorityNs = 0
& ?: {5 {, U; `* ^2 {Aging Configuration:
7 U2 L3 g" C* ^ {; kScavengingInterval = 0 ' ~- p, [& P( H$ s
DefaultAgingState = 0
! G% H6 {- r/ v. c2 `DefaultRefreshInterval = 168 , F) F2 K# a+ @' j1 ~' p; Q
DefaultNoRefreshInterval = 168
5 s, P$ x1 a( h6 D ServerAddresses: $ [* W0 n5 C& p' N$ h: T
Addr Count = 1+ B1 J; C2 [) G2 g ^
Addr[0] => 172.16.12.1% z$ E3 R+ D' {/ O+ l m' W6 f
ListenAddresses:1 n3 I3 B! G* r7 s# Q
NULL IP Array.
! @+ @9 r; K$ s8 t1 E* a- L Forwarders:" [; U9 e& ~2 n% J. M! i' D; m
Addr Count = 1
' K$ d6 I5 v- z" f) |0 R9 ~# L Addr[0] => 172.16.4.3
4 d/ \& }8 b( e, r ?" A8 v4 g forward timeout = 5
) y& ], \' J+ }* G9 A slave = 0
0 G2 w" n% K$ N1 p% m' d/ zCommand completed successfully.命令顺利执行完毕
- m+ w- b' {' l; S; i 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
: W4 B* ?/ |' h 命令:/Config6 l3 Y& e" k# {0 I, K/ v5 V$ n7 C
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
0 p4 e# ~- K+ B2 L; u2 _+ q+ n0 K9 K4 J% X9 Y3 Y! |5 T5 S
用法:$ H' z+ o; v0 r6 p$ J3 |
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
# c0 H1 I: V) U0 \9 T 参数( d2 Y2 i0 d# M0 `' N8 t( d1 r
ServerName :服务器名称,意义同上 0 P+ U x! A' g4 w" w( }. c
ZoneName:
; S! i& O5 E" Q( s 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ; x1 H; K1 e5 l9 x
Property:
( l: ?1 N \1 B0 D4 t0 ` 这个参数是属性。这里所说的属性有:
" Z! }! }, `5 x V5 M 与服务器有关的属性:例如:! b+ j8 o1 p, n, _
/EnableRegistryBoot# |: Y' W0 p' v! p
/RpcProtocol$ T8 ?0 `) h- t! S
/LogLevel; O$ A3 P% P- k
/EventlogLevel 等等 (限于篇幅未能全部列出)# g2 D+ b: U5 J$ ?
与Zone 有关的属性,例如:
: k' [# B- j2 f! {3 q /SecureSecondaries/ o8 q7 w7 a. p" \/ c. }1 f
/AllowUpdate. b# [- J9 N7 m) z. ?9 b7 R
/Aging" b' p: ^7 A* o$ O3 X: y
/RefreshInterval Value7 ?& w3 N. Z% d9 H
/NoRefreshInterval Value
* A$ y, c5 @# r" ] f 属性值:& z p% ]+ q1 _2 J( M' {. Q5 Q
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。 p: c( m! R6 m
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。9 A3 X7 {% H D
命令: /Statistics
7 t( x# n% ]; r$ w5 S 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。" L: t7 U/ [) b' n3 ]
用法:& t5 T$ U; i% v& v; L3 T
dnscmd ServerName /Statistics [Filter|/Clear] h, o2 q, o7 R$ d) a
参数:4 R+ ^0 f: P H; V1 S# M
ServerName
: c6 Q" ?/ v! A2 e% e6 a服务器名称,含义同上。( F; A5 R: J* f
可选参数介绍:
2 [! Y& V8 U+ V# D. k) L共有两个参数,每次只能使用其中的一个。
( w4 M" D3 D! S! x7 L4 I$ g7 w+ ` 1.过滤(Filter)0 p/ Q4 O0 y2 ?" Y+ X) k
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
- U2 L9 K) |- c: @$ P* c4 ^可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: - x# D* ?2 L8 u0 I1 H
00000001 -- Time
$ `4 z9 X! a" p! s, A8 }4 m3 ~7 W 00000002 -- Query
& ?- n8 b0 L) V7 Z8 o 00000004 -- Query2
" E* V. W: l q9 l. V* G5 Q- s0 u 00000008 -- Recurse
7 j% d$ x" u5 s! d7 ~* q 00000010 -- Master
1 O* S: X+ d% o! C' G, [, i: H$ K 00000020 -- Secondary. i5 ?% ~2 e' c9 O! u6 F6 b) g
00000040 -- Wins
1 g4 Z& z- U# Z: M 00000100 -- Update
5 A- Q3 c; ?2 O9 T9 V; E6 V6 _ 00000200 -- SkwanSec
9 y* f0 x; c: r 00000400 -- Ds
7 e: p- l. X9 G7 Q 00010000 -- Memory2 g m; b9 R: m+ a6 x0 v
00100000 -- PacketMem G6 Y2 B. Z% o3 }3 H
00040000 -- Dbase
) q- m8 h2 r5 n; }( T 00080000 -- Records
4 a3 o1 m8 {7 |9 S& }# d 00200000 -- NbstatMem
- J3 ]( H0 c' k1 _- Q; Y4 c 2.清除 /Clear
# t1 D, j1 k3 _( Y# c) N7 A, v 这个参数用来清除统计信息。' G0 |* b: p0 m1 B" P! n% l
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
+ E" S4 H) v2 e& Z, v9 m' l1 B8 K! }. ]* f, Y
8 b7 I8 O8 R" z$ z% w: b# S$ {3 \; _
( p) e' I8 k% A8 Y5 t! d) i5 @ |