本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
! w8 Q* [0 z: z% W* I" w' N5 W 命令: /Info
2 q" l$ C6 R6 a4 F$ W( C% X0 ] 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。& o1 J% z2 p% v+ \0 M" P% W
用法:
9 p# b1 U! d5 Q6 `! l3 }* U0 }" L9 Q dnscmd ServerName /Info [Property] ) b: R% ]5 ^7 [# k' S
参数:
( a+ m. ^) I7 G" O ServerName % p5 R1 F+ }% J9 H0 k P
服务器名称在上一篇中已经介绍过,此处省略。 " G W4 i: a2 S7 C1 D. h' }
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。! V; s; m S0 g0 i2 |" }( }$ u; ?- \
下面是该命令使用的一个比较完整的例子:
1 q$ c3 @, m7 \$ ]! ~ 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
' o+ [) J# }9 o: ^dnscmd 172.16.12.1 /info 只使用命令而不使用参数
: N- w% @0 [" V3 Q3 J. M输出的信息:
( H. z! q! v$ j; M: l' {DNS Server 172.16.12.1 Information:
6 e# W: g& Y9 _5 u$ i3 [1 FC:\>dnscmd 172.16.12.1 /info! U5 y! H& U9 l
Query result: 查询结果0 {( [) p3 t+ A: T# l% U9 d
Server info: 服务器信息! F% J% t) X; d& P
ptr = 00074718 端口$ {5 v1 \4 Y: Q' _
server name = myserver.microsoft.com 服务器名称9 v+ t5 ~0 c" _- y3 S- G& b* Y7 [& d
version = C2000005 版本) `. |( P6 u! V
DS container = c DS“容器”9 m; a7 c) f$ h1 r6 S2 A E
Configuration: 配置信息 这些信息的含义请参考有关资料
0 U; g b( N# u3 y dwLogLevel = 000000006 z( H+ }$ ~; O I }8 B
dwDebugLevel = 00000000
: I% a- _' N& S: ?% [ dwRpcProtocol = FFFFFFFF
5 V. a% g8 |9 ^$ [/ X( n s dwNameCheckFlag = 000000025 c0 T3 `- H; Q8 q( }5 a
cAddressAnswerLimit = 0
! u4 l5 W Q2 k; ]1 a( C# R dwRecursionRetry = 3
9 k' ~0 f1 W5 P* w# D+ G dwRecursionTimeout = 15
5 k9 \6 n$ X' | dwDsPollingInterval = 3006 C2 ]# e/ e. U; C) m* H9 o! k
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
1 n# _2 h& ]3 A( v( ^1 {. O4 c. \5 dfBootMethod = 3 8 e g& ~8 X. Z$ c, A# ]4 _7 t
fAdminConfigured = 1 5 P6 C% ]7 \0 {
fAllowUpdate = 1
2 K, o. c5 o( | ^fDsAvailable = 1 5 l. b) T& T4 I/ i( s7 }
fAutoReverseZones = 1
- w( w, j" s9 ^) zfAutoCacheUpdate = 0 ) c ? o3 r; X
fSlave = 0 & W- x/ b" e* Y: ?6 p+ W) ]
fNoRecursion = 0
/ V: t; }. H) [" ofRoundRobin = 1 # S3 F8 Q$ l. r! m/ G
fLocalNetPriority = 1 - Y/ y6 a' I. Q. o6 k7 g) h
fStrictFileParsing = 0 - y% h) g* K' u# _
fLooseWildcarding = 0 , J9 t. x9 r4 O0 J8 M" x
fBindSecondaries = 1
- u( s2 i. d% P* ~, ZfWriteAuthorityNs = 0 1 I0 u7 r* _9 ^
Aging Configuration: $ y; `4 a: n) \- i/ T
ScavengingInterval = 0
1 L4 R j3 L( [- X! RDefaultAgingState = 0 . X0 l- a5 _8 O" u3 A
DefaultRefreshInterval = 168 ( p+ C* [$ Z: b& t$ O: ]
DefaultNoRefreshInterval = 168
8 {+ ]6 R$ H# W! q! n ServerAddresses:
7 D1 I. I7 m* _ I: c Addr Count = 1: e) f0 v! c" a7 {
Addr[0] => 172.16.12.1- b# c5 [6 |! N' V) S; ~% W Z* {
ListenAddresses:0 V% \& w. H0 W$ |. ?! N v
NULL IP Array.
) h# }7 f$ d& T Forwarders:, d) O3 w2 t: \, C. G
Addr Count = 1
' O+ j1 |1 r+ n8 H: S) r5 V* R Addr[0] => 172.16.4.3% q* B: L. p, D# ^ c
forward timeout = 5+ ]9 L( {8 x% M/ O
slave = 0) ?& j0 h2 B. n$ e; }. C7 S7 z
Command completed successfully.命令顺利执行完毕 V' Q3 @7 p; B" O c0 l
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 % B! `% r/ U r- `4 q
命令:/Config& A* C/ S- }6 }3 i1 o: b2 C
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。- x% }& d* V S! X+ x% k0 W$ b* R {
% V9 H) r1 v) I: C* T 用法:7 i% I& G1 `! ?1 {
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
' T7 }7 X. ]- K2 V* ^! }% p* ?$ f) H j 参数
# F" ]6 a/ `4 B6 \ ServerName :服务器名称,意义同上
& F. r7 `: B9 o; d ZoneName:
$ k5 w+ a: F0 m& } 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 . p) f& e% a2 R4 M4 X
Property: ! i% f/ s4 q- V! e* ~5 @
这个参数是属性。这里所说的属性有:
% ?1 d* b* A# n% g; ^2 n; T 与服务器有关的属性:例如:2 Q: e' [% J7 x+ j1 ~' J5 c
/EnableRegistryBoot
6 }3 O5 l: S9 \8 H/RpcProtocol
$ q2 g, N. |7 J+ ?/LogLevel/ }. @, o1 f+ h) v4 F# a& B; D
/EventlogLevel 等等 (限于篇幅未能全部列出)
8 ~6 A3 T# `2 t+ r) v l1 D2 Y与Zone 有关的属性,例如:
! H; G& @1 j! ` w8 r$ r /SecureSecondaries
1 ^$ ~; }- ^$ B) K% l. u( c /AllowUpdate* e6 c; P U9 s
/Aging* N9 d) l p: e ?: F- ~
/RefreshInterval Value
7 d) G" d( \3 t8 d /NoRefreshInterval Value
1 i& W5 m5 R1 O6 X) r& Z* F% b 属性值:
4 l, t$ B6 h+ T7 M( W1 [ 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
! L! m- B5 T8 Q5 P从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。" w1 g! l% O* r- G
命令: /Statistics" l! R B0 T3 o' V" I& d: q
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。& H1 u& `/ ~+ w) |
用法:
7 H) t7 l) I8 `% r( a3 i dnscmd ServerName /Statistics [Filter|/Clear]
6 R; y: ^, }6 j 参数:5 J# a- M& w4 t3 ~, v [' p$ i
ServerName . R4 F3 }! L5 {: z( K
服务器名称,含义同上。) V. _6 M& c2 N( \" y
可选参数介绍:2 w- N3 |& w( d9 X3 \/ B4 C, Y
共有两个参数,每次只能使用其中的一个。 w1 {8 p, ?. D1 [! ~/ n8 }# N- z
1.过滤(Filter)
C8 u, G2 ~# y3 q 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。$ e- z' {* _3 R$ n& _
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 1 x @9 j+ v, T+ y
00000001 -- Time
0 h/ H& h) C. J5 b( C' H 00000002 -- Query" [8 `: v( M# H% Y5 W) ]
00000004 -- Query2
/ v" v) S' b0 H1 \7 y6 `9 ` 00000008 -- Recurse
* O# b0 x) X; q1 p/ | 00000010 -- Master
5 p, H, P4 U5 b, u* `; Y0 H$ C 00000020 -- Secondary/ `0 {; z2 u; s9 J8 K8 B% y% J/ X
00000040 -- Wins; c4 c! _; z! ^+ O( d% J" _& F
00000100 -- Update) ]" d7 T- K$ A, B, G
00000200 -- SkwanSec
; B. L O# X; z; } 00000400 -- Ds+ Q+ f7 E# g1 e3 P- m- M
00010000 -- Memory
4 q' ]2 U4 \/ Z% x( ?5 A# ` 00100000 -- PacketMem
1 U0 ?8 q1 |' o/ V& |6 t 00040000 -- Dbase
3 |1 A7 Q& I2 E' C 00080000 -- Records) k$ ?. Q; v2 k6 r' L
00200000 -- NbstatMem
! U0 A; k$ U& {9 V9 ?/ O d 2.清除 /Clear
! i1 h- _4 Q3 x" y 这个参数用来清除统计信息。
6 y/ k$ i# W. F0 ^# ?" w; ?& S 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
& F2 R( z. I1 d* P+ p
* t1 N0 E1 t+ @0 q* R. Q
$ Y" I; g# ?5 Y4 u' g' f+ b5 ~6 u- ]% |
|