本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
' f m5 n& D5 U; ^ 命令: /Info
+ x% f2 n9 ?, g3 o7 ` 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。! v( r4 ~) a- _7 g
用法:! l r' s% i/ P0 Y h4 u0 X2 _
dnscmd ServerName /Info [Property]
/ \$ P. T- r6 X 参数:
* v9 C5 O' P" x% ~9 I9 Y: ~ ServerName ' ~) }- j0 [/ [) [
服务器名称在上一篇中已经介绍过,此处省略。 ; B9 A( a1 u9 Z
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
; k" s2 c5 K+ o6 q 下面是该命令使用的一个比较完整的例子: e' c U$ |2 d6 U1 o! W4 F! M8 w
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
% X! b8 S' t4 gdnscmd 172.16.12.1 /info 只使用命令而不使用参数3 L1 M$ I( q, n3 |. G; T# P' ~) F
输出的信息:
: D# H, r. ]7 `; ~2 DDNS Server 172.16.12.1 Information:
+ R5 Z; R* g) f6 T" `& uC:\>dnscmd 172.16.12.1 /info0 n# I$ ]$ R0 H0 {
Query result: 查询结果; R- k6 M' a/ v. ?" h! o1 N
Server info: 服务器信息4 Q; ]7 Z" q( I
ptr = 00074718 端口" [( E7 ^. U5 C7 x X7 G) u
server name = myserver.microsoft.com 服务器名称
& s0 `; o. d8 x" _# V version = C2000005 版本. x _2 s4 P6 T
DS container = c DS“容器”" @% H% E9 Q: S7 ~
Configuration: 配置信息 这些信息的含义请参考有关资料
8 ]0 S( q5 X- s4 M dwLogLevel = 00000000
4 m* s% \7 N0 a& U6 v9 ] dwDebugLevel = 00000000
) W+ Z" A' ^: L6 P dwRpcProtocol = FFFFFFFF
6 \) m2 v& U7 N# Z) q/ M+ ` dwNameCheckFlag = 00000002+ O) J' C4 f9 ?6 Q
cAddressAnswerLimit = 0
3 ^3 ~- `2 K, l dwRecursionRetry = 3
- C9 m2 I% l' y% s$ K5 v; {- A dwRecursionTimeout = 15
' F3 X5 L5 y5 B: K0 i* W4 O$ T dwDsPollingInterval = 3007 F7 k- J3 L: o
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
3 Y+ ]- B v2 P! B2 D' p, zfBootMethod = 3 ) E' i- k, d5 M+ o+ Y3 g# i
fAdminConfigured = 1
1 @* h$ S1 f* k$ f% y/ B5 R7 mfAllowUpdate = 1 D8 a" s/ _8 p2 H9 I* r# Z- m
fDsAvailable = 1 # P$ @. A1 V9 z0 p- A1 v7 f4 L: k
fAutoReverseZones = 1
8 Y. l r( }# pfAutoCacheUpdate = 0 + u1 [/ u1 t! B8 c9 z* `
fSlave = 0
) E; G) F! g8 \5 [fNoRecursion = 0
* y; {' X" G6 KfRoundRobin = 1
# o- l3 D6 @, a! C( kfLocalNetPriority = 1 ; x9 V' I5 D2 \% n/ } G
fStrictFileParsing = 0
7 N6 ]: d+ [0 pfLooseWildcarding = 0 # ]& X6 ^) A8 m" v$ t5 e& W
fBindSecondaries = 1
) q7 p2 l$ D, ffWriteAuthorityNs = 0
2 T' H9 Z0 @8 J4 e$ b( I+ sAging Configuration:
+ G3 M1 L& S R! S9 rScavengingInterval = 0 ( b/ {# P+ j; n4 S5 E+ e
DefaultAgingState = 0
# H* b O+ o8 U5 T0 C$ PDefaultRefreshInterval = 168
. R+ s* k: K/ ] ^2 yDefaultNoRefreshInterval = 168
- u9 E4 a# G8 P1 ^' R. L9 D ServerAddresses: / m! Q5 A/ N q/ Y6 o+ S/ W
Addr Count = 1+ R% X B( f6 y3 O. ?& e. N
Addr[0] => 172.16.12.1# O2 D3 A/ {5 S1 F0 Q( a
ListenAddresses:
m1 ?: j9 J/ p NULL IP Array.) S4 E+ E; j( { s' @
Forwarders:
" d2 O5 U U* {2 ^' y Addr Count = 1
* A: N: n1 p) o* Z* S Addr[0] => 172.16.4.30 C ~5 v) J* J5 G
forward timeout = 5
" ]9 |- q' y* o# O2 n3 ^ slave = 0) H- d/ M `2 h' x- |& Q' D
Command completed successfully.命令顺利执行完毕
/ R; F U* T: B! K1 ?, w* Z1 A1 o 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ! r, \4 a# R( n, F) `+ G
命令:/Config
' J2 ^" G# ]: I4 |( O' e4 W 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
/ X( p6 y. ?* \! r0 g' F/ `" d9 R* x% t' M) ~3 H8 Y
用法:
& i0 B' n: S/ W& ^ dnscmd ServerName /Config [ZoneName |..AllZones] Property Value7 I" c t' l4 v: z
参数
\ Z" U* }2 f5 ]$ O ServerName :服务器名称,意义同上 ; s0 |4 P3 ]/ v2 O5 }) ^; D9 ?+ h+ b
ZoneName:* p5 \. X4 P4 \- K$ c, ?3 x% `! X
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
3 y) a- H* L9 K) V2 W9 c0 ~ Property: 2 H5 z7 }7 Y. k' e% `
这个参数是属性。这里所说的属性有:
' L. w# A, z' y9 C 与服务器有关的属性:例如:, r/ Q: A' E! Q7 w: x9 f3 X
/EnableRegistryBoot1 \: S/ B, t. [( G! Z. B
/RpcProtocol5 q; @/ S( ?& \2 ~; J
/LogLevel
" [; L* |7 }* ?& S/EventlogLevel 等等 (限于篇幅未能全部列出). \0 P/ h: E, S* X
与Zone 有关的属性,例如:" l$ u2 b. I8 h4 ~
/SecureSecondaries, M0 K9 y6 z( m
/AllowUpdate
3 x# |2 o l6 O9 e+ J+ n7 { /Aging
3 X4 H* n* k- c /RefreshInterval Value. g/ N. \; k* V& V
/NoRefreshInterval Value8 ?8 R/ h4 k% c; v* r2 j |
属性值:
9 t# @& ]9 X3 f# g @! Q2 @ 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。; g; ^: V9 O! ~" k# S2 x, F2 V3 J( n
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。- T; h4 F1 b+ p& {/ s' M' q
命令: /Statistics$ C" C+ b2 A( T) q
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。% o% Z' W8 g* b
用法:# _/ z& ]( Q' B
dnscmd ServerName /Statistics [Filter|/Clear]
/ |: \! y6 q$ m- J 参数:
4 t5 Y3 w) A, i2 gServerName
/ O: u% C6 X& A2 b+ F8 _8 `1 H服务器名称,含义同上。
& m$ Y( V7 L6 P Q' M- ~4 a$ U可选参数介绍:
0 f$ _4 ]$ d+ I0 t4 U; W共有两个参数,每次只能使用其中的一个。
$ v8 B1 g' r5 o' i9 l2 M 1.过滤(Filter)
4 ?0 h$ p, [- a' r0 L- ] 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。9 o4 G( g3 `. U3 i
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: , O- M: r5 ^: W5 V% h2 L" E2 p: [
00000001 -- Time& L8 V( b: g3 N4 x/ i# H+ _
00000002 -- Query: d3 G! V1 |2 }+ A) z4 i: n
00000004 -- Query2- C8 j- U- u+ |6 Q* K
00000008 -- Recurse
9 }' O, F& l; ` 00000010 -- Master
8 E: d% d* A' G/ ] J& ]" C; N- Z 00000020 -- Secondary! G# [3 r, `7 M7 F: R$ S& m3 i
00000040 -- Wins0 k. ~" T. d2 K
00000100 -- Update
) C! ?; |7 E5 C1 x 00000200 -- SkwanSec- P# X. b7 X, ^# s, u" B7 v8 r9 J
00000400 -- Ds
5 g( Q4 O8 Y8 N3 z! W$ d W! B2 E 00010000 -- Memory
4 V; ~' i, ?/ G7 ?$ I 00100000 -- PacketMem
" Y4 }6 _* X4 h) Q 00040000 -- Dbase" s8 o$ ^8 c) Q5 o p4 l8 P9 z6 p
00080000 -- Records
5 Z5 v) \$ i4 W 00200000 -- NbstatMem
: W2 B2 U# B, _% A4 T; b ~# w 2.清除 /Clear 5 |, x8 z* h. I
这个参数用来清除统计信息。5 ?& o5 M* k1 w E5 N
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
$ T* n K% m- n G2 ?$ N& L' ^3 ~4 b+ N; s" _# t
/ a) a: a8 v7 d- s
9 Q4 V% _( p* H |