本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
# |8 M' E% D0 s6 w4 i 命令: /Info
1 W) M* J7 a. _ 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。) A4 a' G, F0 [6 |+ g" O8 d
用法:- T3 B: z5 Z4 ?+ g
dnscmd ServerName /Info [Property] / H N; m# g7 A$ X
参数:
7 O* m: B# J, _! Y ServerName 0 d6 j- }! I* o7 u h: R7 i1 I
服务器名称在上一篇中已经介绍过,此处省略。 7 ~! I B! y ^
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
1 T5 G: N1 X' }* k f+ S# g8 y2 @ 下面是该命令使用的一个比较完整的例子:
( A6 W' u" j) |5 l' ?+ v 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
$ b* c% U; z8 F+ W) g' ndnscmd 172.16.12.1 /info 只使用命令而不使用参数
* m' C" j: K' N# Z输出的信息:
# E1 [, w. y, T& x( ADNS Server 172.16.12.1 Information:
& M& v% N" ?# R8 P3 b% U1 nC:\>dnscmd 172.16.12.1 /info! ]1 j. m0 s) `! q+ b k
Query result: 查询结果
$ c: l1 `9 k! W5 T8 a+ w( ?% P; `Server info: 服务器信息- ]: |( ?; c3 u/ B! g
ptr = 00074718 端口
# c7 E" i3 J4 H. }. h( y server name = myserver.microsoft.com 服务器名称
# S* O1 T0 g/ U. B version = C2000005 版本* [* x/ y( E( F! m( Z2 U4 h
DS container = c DS“容器”2 q! \7 S8 u9 f) p+ @/ e; ]4 s( |
Configuration: 配置信息 这些信息的含义请参考有关资料' x; L$ ~& a6 }6 W
dwLogLevel = 00000000
5 ?# Y& C/ s3 l7 \* f3 O& T; u* N dwDebugLevel = 00000000
9 L" b2 w- a4 [. h8 f' Z* ]6 j( ^ dwRpcProtocol = FFFFFFFF, Z6 i) A4 E4 F' F! |. _7 h: Q- o
dwNameCheckFlag = 000000027 k* U9 S0 E& k6 \$ X
cAddressAnswerLimit = 0
0 c6 y7 d) n$ x/ Q( | dwRecursionRetry = 31 q4 ^; b* S: h$ o
dwRecursionTimeout = 153 {4 ~' W. O1 X' _) D- d+ A
dwDsPollingInterval = 300- w, E& W/ z) f1 q1 R7 _. X
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
# _" X& f) a" D# x3 _$ d( jfBootMethod = 3
- K" q! S [( v2 w# yfAdminConfigured = 1 - D" [% f% ]/ G! h
fAllowUpdate = 1 . s4 N# Q2 Q. H9 i% d; { s' x
fDsAvailable = 1
' `- i! V, w, S: M1 kfAutoReverseZones = 1 / a2 z) \! s/ N# a5 t+ u2 M$ ^+ v
fAutoCacheUpdate = 0
0 c* d. h; _: z8 DfSlave = 0
: C9 `, t; \0 m, _1 ~, |& bfNoRecursion = 0
' v# t) J7 p! L' Y4 U8 S6 d" O; u0 lfRoundRobin = 1
7 Q \3 j. ~) [fLocalNetPriority = 1
: A; j' O$ ~' [3 |) \! ?4 e% tfStrictFileParsing = 0
2 H+ n5 B& N. @. ], C* yfLooseWildcarding = 0
/ |3 l4 m) A# UfBindSecondaries = 1 # o5 N9 A! W# i b
fWriteAuthorityNs = 0
9 e4 p S- b* x' }" x. nAging Configuration: 9 a0 h& _* S; _, I. S# j
ScavengingInterval = 0
( G4 R" D' W2 n" J' |DefaultAgingState = 0 1 E: C0 i) r7 B' I Z. p! p# L# ]5 m* i
DefaultRefreshInterval = 168 ' ^7 b; d" O( ]) K
DefaultNoRefreshInterval = 168
6 P5 p7 U1 `. m' J# F' s9 \ ServerAddresses:
8 l, a. b& i5 T: V m1 g9 H! A# v( x) ^* b Addr Count = 1
1 M) g$ ]0 m% o) W$ f' h" t Addr[0] => 172.16.12.13 B6 O4 C" a3 W; F
ListenAddresses:
1 L! ^. h& h1 P6 `8 V9 @ NULL IP Array.
, W6 y5 {: K/ r. ~* v1 L Forwarders:
$ ^9 S L n8 }3 \3 y Addr Count = 1
6 d9 M0 L3 H1 a9 |4 ?+ |7 ` Addr[0] => 172.16.4.3
+ ]# O9 `0 ~; g8 B forward timeout = 5
) T ^6 l# v5 @7 m slave = 0- x3 i- i$ u6 q5 ~* y
Command completed successfully.命令顺利执行完毕 % q6 h" o# j/ E/ [. I* a1 K
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
, q' ]$ p. Z [" f, s% i# a 命令:/Config
! \: a0 [1 E& y2 a+ u# ?' U0 l 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
' c! T, s) J( u R! d
, z( g% V+ Z4 Q- p5 ?/ @( x 用法:4 m/ i: h) D- f: ~0 z, _# w
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
. q% w+ ^4 I# J5 P% A/ ?8 q6 E" _' N1 m$ Y 参数% U7 t: d: \* S. ]( g
ServerName :服务器名称,意义同上
; k& b8 W0 O) L1 t9 l7 ^" p! C ZoneName:6 U1 n+ K# R% Q
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 % V( j, P! J% G; z( Y4 I9 l
Property: + ]4 [4 f$ n9 |/ ~: d/ v
这个参数是属性。这里所说的属性有:
& ~8 D V" M5 |# g& p0 } 与服务器有关的属性:例如:- I$ ]3 f1 O7 T) U1 U% a9 C
/EnableRegistryBoot
8 o8 r5 i( c9 z# p" Y/RpcProtocol0 {1 X0 K5 K" B/ |. w7 D+ i. u
/LogLevel
, U [5 f# I& H8 e/EventlogLevel 等等 (限于篇幅未能全部列出)
7 s5 a; o$ t+ [0 E. s与Zone 有关的属性,例如:0 {1 f7 i* d" x. A
/SecureSecondaries
. X8 L' G: r8 F8 D% S /AllowUpdate
0 e& e( P% P z /Aging
+ ~7 a7 I0 \/ o: l /RefreshInterval Value
& ~8 J! n& D$ j$ @% {$ _ /NoRefreshInterval Value" z& @& V ~) h) P/ O
属性值:
/ j/ }+ n, ~% D! y8 a" p, w% H 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
+ o/ e: S" W) v& K, S1 a, m从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
" r% [' p- ^5 c0 i' N 命令: /Statistics& h* g$ x& F0 e% X+ b, ]5 v: J# p
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。; J) x$ B- h/ l# Z# O$ g
用法:
* Q& Q, @+ o9 z: w dnscmd ServerName /Statistics [Filter|/Clear]
: {* L/ b0 A. G: C 参数:
7 J$ u& n8 Z6 O1 p$ A% T* g6 P& LServerName
- U) ~5 S( x$ j! I' B4 B服务器名称,含义同上。
8 l5 k" Z( X. H2 s0 `8 k可选参数介绍:" @& K4 w8 ~ J% {
共有两个参数,每次只能使用其中的一个。# }- p7 t$ w1 s0 r) H
1.过滤(Filter)& ?- o! K( S- y# u/ U% _' L9 s
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。; F; g, a( E; i" `, G( y# ^3 O
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
! H$ c- O+ u- W 00000001 -- Time
( T& g- u9 o3 t" K# H5 } S 00000002 -- Query
T) e$ |. s" k" a: y" q6 f 00000004 -- Query2
( y- w- c) a0 I4 b( W/ q 00000008 -- Recurse
: Z( X8 v$ i1 D5 w 00000010 -- Master
' s8 p% f4 e8 O' d }# Y 00000020 -- Secondary
. `* d' B6 H# N7 Q8 e/ W 00000040 -- Wins" r; k3 P( w; r( g! B) ~
00000100 -- Update
4 l% q+ x6 }' P 00000200 -- SkwanSec
/ a$ t$ G& r" i1 r' G5 l1 m5 w 00000400 -- Ds
+ O& {9 e7 c9 }. g* [" h. l 00010000 -- Memory) z) L4 j8 c5 }& D1 k% g2 ?6 i
00100000 -- PacketMem
' G6 d5 V: ]3 \- M/ g! f9 A 00040000 -- Dbase
3 O+ l; G6 M# k/ ` 00080000 -- Records1 ]9 o9 A4 X' {$ \8 \7 I
00200000 -- NbstatMem$ X5 ]- e9 i% u& Z
2.清除 /Clear 9 q A. B8 F" x& Z7 L# U6 h( S9 n
这个参数用来清除统计信息。, u7 _% ^8 m1 N0 `. P# a/ i( L, l
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
3 ]# e! @- s: b& u/ k% h7 p
# e/ F# K' q7 y0 F7 h & C# I/ H' P# b
! V! H* x3 ~0 N {% z% |+ k( D! v
|