本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
/ @6 E1 |" W( y- D+ }3 b9 [ 命令: /Info , q8 m$ O/ r( U# A! |- u; m" w1 {
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。! F: E I3 ^% d+ k* B" a# y4 [
用法:
# w' s- V" L8 u8 V6 L8 V8 j dnscmd ServerName /Info [Property]
$ V% Y5 _1 h6 Y, Z6 ~ z 参数:
- c) y& p& \ t6 x ServerName
9 K4 Z; Z u* m( `3 m4 ~ 服务器名称在上一篇中已经介绍过,此处省略。 ' s& s/ @. Z$ v9 T8 c/ r
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
* C0 U4 l5 ^) R* @' a/ s- ~6 I 下面是该命令使用的一个比较完整的例子:( r8 c" k/ f& m2 o8 z% c
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
, x }6 t `- s- i* P) bdnscmd 172.16.12.1 /info 只使用命令而不使用参数
) a) ?9 Q0 K4 K) L输出的信息:
7 D5 e, V+ ^- YDNS Server 172.16.12.1 Information:. C% ? O7 L3 o# M$ k
C:\>dnscmd 172.16.12.1 /info
8 I7 _3 c& k6 q0 r9 ^ j$ v" \Query result: 查询结果
- g- [ D, B/ W/ s" d+ D3 S/ x7 y6 dServer info: 服务器信息& _( W$ ~! ?( y* R2 u6 Z$ l* `
ptr = 00074718 端口* q9 V; T1 d% v+ F3 B
server name = myserver.microsoft.com 服务器名称; A2 `' x# T4 L6 `9 w: A
version = C2000005 版本
5 }$ t- H) A3 h* X! | DS container = c DS“容器”! v5 n3 \% @9 U1 o4 l6 `" q- ~
Configuration: 配置信息 这些信息的含义请参考有关资料! [' l5 e6 [! O4 B1 c' `
dwLogLevel = 00000000
8 o% {& I6 n; J: @; M dwDebugLevel = 00000000
- Q, c, y# V" S, v' ]9 O7 ~; G dwRpcProtocol = FFFFFFFF
4 |) Q! x m% a- S7 Z1 {- I: D+ A dwNameCheckFlag = 00000002
6 b+ Y) C7 O, T7 _ cAddressAnswerLimit = 0) J$ H+ y8 o- @
dwRecursionRetry = 3' j% S/ @0 s; Y+ `8 O3 M
dwRecursionTimeout = 155 ?! g" R8 X: F9 w! l
dwDsPollingInterval = 300% y' v* O) ?: V9 j
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
+ o( |& s" _5 w+ G2 _fBootMethod = 3
' I* H) _& k" d; d* jfAdminConfigured = 1
3 \5 N% Y _" G6 u( F$ X' \fAllowUpdate = 1 3 k$ k! L. [" \) V" N2 b! M
fDsAvailable = 1 , S9 u M& D* h+ ^/ m
fAutoReverseZones = 1 , x1 L6 |4 n1 Z5 o* R0 k
fAutoCacheUpdate = 0 8 e$ p4 B9 u& ]7 V4 I# y# Q
fSlave = 0 9 _8 J6 _) W+ l& \4 H4 q
fNoRecursion = 0 1 ~8 |' B2 v% T/ \
fRoundRobin = 1
2 K+ t$ q' T k! k+ j7 ZfLocalNetPriority = 1
* }* O% z% \3 I s- o: J& ?+ C* RfStrictFileParsing = 0
9 c8 m2 O1 }$ d1 x& r9 y) hfLooseWildcarding = 0 5 @7 o% S* R: h. m. X
fBindSecondaries = 1 : _+ F/ E* D# E n% {& R' u
fWriteAuthorityNs = 0 # U4 b. i! ` L. k
Aging Configuration:
, Z7 X& P3 u( ? i5 r6 w; C. M2 RScavengingInterval = 0
5 z- C7 {6 U8 B+ O+ ~* K) J/ dDefaultAgingState = 0
6 k2 b1 ]9 X! J3 q' c& o; n0 ~DefaultRefreshInterval = 168 7 k: {* S! a& Z
DefaultNoRefreshInterval = 168
( `) K1 X% W9 H2 z8 v ServerAddresses: 3 d# Y2 Z. j, @9 Y& @" p1 d
Addr Count = 1
1 x) w, j; H/ u0 V: `) K3 g0 o Addr[0] => 172.16.12.1) x6 P0 M! U. q2 B- C
ListenAddresses:
8 m+ W6 o: p7 \ NULL IP Array.+ L! C: c- ~9 N$ Y! }, d
Forwarders:2 |4 e. s2 ~ Z: s+ ?. C
Addr Count = 1
+ V) Y- k7 Y9 \+ i# ] Addr[0] => 172.16.4.3
( Q6 I) Q/ s+ H& d/ F forward timeout = 5
2 T9 f& U! Z; u. i, l( E% ^5 E slave = 0
4 O' M4 Z& L# ?0 ^" O4 [: RCommand completed successfully.命令顺利执行完毕
% v# Z1 }" v y, c; W 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 # k1 k; X$ g. v
命令:/Config3 k1 P8 [2 r5 a& D$ R
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
- W7 ~. E a) I* f6 w! S8 A6 ?
4 F ^4 r; @% ^ c0 K! J5 ^. M 用法:5 Y; D+ Q) ] L
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value3 c" }* a2 R% b7 R/ X
参数
1 S+ K0 b g0 d7 N ServerName :服务器名称,意义同上
' ^, J& V4 E; ^2 c G2 X( s" O ZoneName:
3 n( E; m) r4 J" q4 O! ?# D' H 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
! {8 l i, k3 O. c" @" m Property:
/ v6 o1 j# H. j- ? 这个参数是属性。这里所说的属性有:
% X: G! V' b, t& I0 J- P 与服务器有关的属性:例如:
. ?3 G& f/ N! S A0 V. w& y/EnableRegistryBoot
3 W j' O2 N) E h1 Y/RpcProtocol h# w* u. `3 c P% E
/LogLevel" o& h" {, V4 W$ h# b- h) g4 I
/EventlogLevel 等等 (限于篇幅未能全部列出)
1 ?/ M: _& T) R2 ]& E; w. M与Zone 有关的属性,例如:# a! |4 P4 h4 D9 u5 y% U1 P. n8 F5 f. H
/SecureSecondaries8 |2 M: `5 r' [+ X/ F) O8 f) u" Y8 v
/AllowUpdate7 y! J8 L& t" d8 n+ A6 O
/Aging, b) q4 ~; }% I+ d8 f4 F
/RefreshInterval Value
, b/ H& t! q4 K( h0 a9 K /NoRefreshInterval Value- {0 g5 `4 x0 U [
属性值:; t8 {& [* [; ?5 U
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。/ [) _" L. ~3 [" w! L
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
7 \5 Q7 `$ \; h& l 命令: /Statistics
4 }4 V* P/ v* B! u 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。 c3 G8 c2 R2 z' p1 e! h
用法:
7 C! S2 i3 q9 U dnscmd ServerName /Statistics [Filter|/Clear]2 Y, G0 \8 e2 u0 A8 G7 k; K* J z+ O$ u
参数:- ^8 L. J9 P5 t* ?4 h; d
ServerName
) S5 ^' X- U8 j) ?服务器名称,含义同上。8 S! w' V$ j: f
可选参数介绍:# r$ `, d1 U0 Y; o& `
共有两个参数,每次只能使用其中的一个。3 `+ s e; P6 g
1.过滤(Filter)
/ { i# C; G6 p% {( D# W& \ 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
1 c7 c' X9 ]6 A4 X5 G可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: - Y- l. J6 a5 B: G' V: B
00000001 -- Time7 a% u% |$ E7 B g# v0 `
00000002 -- Query
7 _9 e2 Y' R- _ Q 00000004 -- Query22 Y9 G& `! h( r9 X, I0 x- t- G7 T2 k
00000008 -- Recurse: ^) Z1 E" V5 M
00000010 -- Master
& H" h: ~/ J q( Y 00000020 -- Secondary
! h9 K( f( H& Q6 c 00000040 -- Wins7 r& r& o; J* j" |# g
00000100 -- Update
% v! M2 n8 E/ z! ? r C3 V 00000200 -- SkwanSec r; D" K2 N) [- T+ Z( `
00000400 -- Ds
( `7 S4 g. ^# a0 Z3 d 00010000 -- Memory u8 f' o( e* O1 M4 f* E6 o8 f
00100000 -- PacketMem; a- \5 z+ s, W: u2 a0 F
00040000 -- Dbase
8 `8 K! R* z9 b& _ 00080000 -- Records
( [7 s4 L q% s5 e+ j! N 00200000 -- NbstatMem+ \: z0 |; e" ^3 H( X
2.清除 /Clear
_+ f. E0 E3 F7 z5 B$ I$ n# j 这个参数用来清除统计信息。
. e, M% j! V( ]/ l# m6 \ 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
0 E3 ~5 w& j) B- i
. D3 Q0 J& g' Y, U/ U ' [. b3 A, R2 A9 y4 [* T2 l4 y0 g
) p6 i. M+ f. F2 r" ~; @ |