本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
1 [8 {. [. A( P% n, y+ r 命令: /Info
+ M7 j1 U( ^9 i2 a" h$ P! Z 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
$ u. n9 a* G; U; j- } 用法: l6 H8 O d! P" h/ X; d
dnscmd ServerName /Info [Property] # @ r ^4 G; T z3 {2 s, F# `
参数:
8 b- g7 X' u4 b# Q# r ServerName
, T. G8 Y0 p G 服务器名称在上一篇中已经介绍过,此处省略。 ; p4 ^) _% G/ o [; j
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
; {; u( Z! u3 O3 R! o# Z 下面是该命令使用的一个比较完整的例子:
3 B" o6 K7 w1 B5 L' N# t; v 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
. K$ n0 }4 I7 }7 |+ adnscmd 172.16.12.1 /info 只使用命令而不使用参数
* ?2 S( C9 @# d输出的信息:
: n' C) c$ F3 C8 h" I/ V0 tDNS Server 172.16.12.1 Information:
- `/ d A$ z6 K( h" I1 ~C:\>dnscmd 172.16.12.1 /info
+ d6 X9 \ d, n1 ^9 Z# E% L" YQuery result: 查询结果* a8 m2 a; I2 a% ~' |' c6 u) y/ @( Z @
Server info: 服务器信息2 y# q% H4 X0 m9 H
ptr = 00074718 端口
) _; v3 Y0 x# f4 [6 g server name = myserver.microsoft.com 服务器名称
' v0 P! @; a6 S, Y. E version = C2000005 版本
+ G* Y& s/ M) i6 A# D4 C I; n+ I DS container = c DS“容器”
# L2 P3 Q$ V3 y8 S( } i Configuration: 配置信息 这些信息的含义请参考有关资料: Y! j9 T9 v2 a2 w. ]/ w9 b7 q: ~
dwLogLevel = 000000009 O, R( [5 m" F7 `. ~/ e1 k
dwDebugLevel = 00000000+ G) L" M) \. l- u
dwRpcProtocol = FFFFFFFF: p4 S1 q) G$ G; T4 `! `
dwNameCheckFlag = 000000028 M7 @5 x2 w7 K7 {; w
cAddressAnswerLimit = 05 |& ]' N1 J7 i9 R0 j
dwRecursionRetry = 3- f3 _0 S, k; [8 [% X2 H
dwRecursionTimeout = 15# t8 P; U& S7 s- [
dwDsPollingInterval = 300
% j$ c8 g0 q4 I Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料/ Z% R$ f/ X% w+ e
fBootMethod = 3
# y1 e$ M( X& [: \fAdminConfigured = 1
- t# \1 h( P- a0 X9 GfAllowUpdate = 1
8 L+ Y+ ^2 @8 T' F& PfDsAvailable = 1
- c, }- ?6 h; `8 G- A8 t' JfAutoReverseZones = 1
8 G8 ~4 _; [( SfAutoCacheUpdate = 0 9 d8 A. s5 j2 I3 ~% Q1 A
fSlave = 0 3 j. M/ l" {. j3 B0 e% W4 R) y5 [; N
fNoRecursion = 0 ! d7 M) [5 N' T! d" y5 u
fRoundRobin = 1 % A6 k: o* }& k5 x0 Y: s
fLocalNetPriority = 1 2 T! Q, x, @, i: `
fStrictFileParsing = 0 7 s3 Z0 u7 _. S
fLooseWildcarding = 0
, c" s0 v& U( H4 ~5 sfBindSecondaries = 1 : b5 w4 F& k/ N
fWriteAuthorityNs = 0
$ F3 a1 }! [/ P5 sAging Configuration: ) V) g3 t! M2 g- o7 a0 b4 A( F
ScavengingInterval = 0
* `* Q* l6 k( T/ p* `% w9 EDefaultAgingState = 0 ( F0 @" v) M$ B" ~
DefaultRefreshInterval = 168
2 S, b& C6 V% i; }) v& Y- m N8 yDefaultNoRefreshInterval = 168 + C' K+ _" \% M+ A( W, t
ServerAddresses: 8 U8 O" A! g; F; S# M! j8 o0 `7 p
Addr Count = 1( B! n; q" X0 V/ A2 M$ }8 k/ M/ V( Q
Addr[0] => 172.16.12.1' R4 B) C f& A; I- Y* c! t0 I$ t
ListenAddresses:
2 Q: q' K2 R& e; w* J9 e# S* e NULL IP Array.' C- d7 b7 ?% L, X: N7 M
Forwarders:% g1 p7 z8 q' e5 B- f" V8 p0 z
Addr Count = 1
' D- G3 @3 M& U; S Addr[0] => 172.16.4.39 M( K: ~6 X3 C3 g
forward timeout = 5
6 {0 k9 R$ }1 }" i slave = 09 l* j) ^* L4 {2 C% \; W3 b
Command completed successfully.命令顺利执行完毕
4 ~7 @* Q4 S! E# T" }4 S& M1 ~* W5 C 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
* z. L9 g- z. N1 i/ y$ a C 命令:/Config
2 L- f3 f- j6 p5 z$ l" w5 G 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。* W! [% A% q+ L4 q, e8 Q" P" f
# c& v( e* E S ~ 用法:
/ p0 p$ v3 t, j8 ~ dnscmd ServerName /Config [ZoneName |..AllZones] Property Value- m4 F+ D7 ^: U* O! l, h2 P
参数) |: z3 E. B' R' b' O8 T# J" T6 J! ~
ServerName :服务器名称,意义同上 + i6 I' ~( y1 [0 y
ZoneName:6 {* B- N* \: D( D( [
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 - ?1 H6 y9 Y+ t6 ~$ B7 e, j
Property: . Q) r( n5 y/ k3 o5 p2 u8 g) x8 E, h
这个参数是属性。这里所说的属性有:
% f# i7 U; H- Q9 ]; b# O: k 与服务器有关的属性:例如:
6 k1 a3 ^5 { r; W# h& K/EnableRegistryBoot Y# n3 J, }6 T$ b5 B
/RpcProtocol; k5 J! t4 b2 a- `1 N
/LogLevel" S* k8 @3 |& R! [8 c: z) j* R* x- g- w
/EventlogLevel 等等 (限于篇幅未能全部列出)
" ^4 V; D2 ~) K" z, M/ E与Zone 有关的属性,例如:
3 x5 L3 V3 r7 P; p7 w0 g3 f /SecureSecondaries. H) P: G; W2 C
/AllowUpdate. Q4 {( m" y7 z7 w( @4 l0 L
/Aging2 e* S2 s7 A9 ^' I6 G
/RefreshInterval Value: l+ q7 ~, s( R, p Z [2 ~
/NoRefreshInterval Value
% [6 [1 x$ N4 k1 x% R- w 属性值:6 S$ A: G/ J8 \( P$ O
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
" [0 W/ V" V' A( N从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
5 q1 C, H1 _8 o( R 命令: /Statistics( b# U: S9 z8 V% t
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
% h" u H8 ~8 v0 q \* ^6 @7 R 用法:# ^8 Y4 ^& \4 u3 E1 [4 E! C" E
dnscmd ServerName /Statistics [Filter|/Clear]
, X8 S1 N7 P8 z1 s 参数:
( p: h6 y2 ]! ?/ d# KServerName + T" G8 d" q! ~4 p2 h0 U& A, _7 C6 j
服务器名称,含义同上。
6 J; {, m n/ ^/ J2 I2 ^" O3 U+ j可选参数介绍:
3 [0 h: `: ]' U' ~; m共有两个参数,每次只能使用其中的一个。$ c7 Z6 c# T" \: A# B
1.过滤(Filter)
+ E4 v% \6 j+ M ^ 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。& k6 {- O* N. M* L5 o% `9 }0 X( a
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
/ N/ u' [) S1 M7 t# U* O7 _ 00000001 -- Time
9 }% I1 h' Z* z3 x: L2 w/ r5 U: R 00000002 -- Query0 w1 B% e2 W, ~- x* f
00000004 -- Query20 Q. g0 }) d/ N( N
00000008 -- Recurse; x8 h5 S1 ]( D3 D9 o' M) ~2 a
00000010 -- Master
! |0 }: l- U% }+ R }4 P# ^- Q 00000020 -- Secondary8 F3 s! p; i3 O* k, X3 L2 e
00000040 -- Wins2 G1 C$ |6 t! ]% S; ~
00000100 -- Update
" { A$ @) O6 x' {) c" \9 _; X* y 00000200 -- SkwanSec. `' o; ^8 Y$ T! \ c
00000400 -- Ds
; `# p# a- T/ e- \' u 00010000 -- Memory0 V; M" ]7 B3 _, `
00100000 -- PacketMem V2 `, D B" S3 ^% _
00040000 -- Dbase+ |+ \1 G+ @& |& {) G: q" u7 ] J9 d4 B
00080000 -- Records- f8 n8 N2 L$ [( p5 u! C( H
00200000 -- NbstatMem( `3 ]2 [; q0 u: w) I* c- J6 `$ a
2.清除 /Clear
; M- T! l! w4 ^- A& Z 这个参数用来清除统计信息。( |4 V* ]9 ]) V: m) T
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
0 \) L) p$ A B3 v7 m
* v' t2 i! g1 ~( B9 T
: C6 P" x8 X; v, Q, ~6 {* f* j/ y/ l2 e8 L
|