本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
6 }: @) R: I! G! G, E 命令: /Info
4 o6 v+ u! T; l+ I( `- p% R 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。( _& C0 W8 F7 k b2 v
用法:
- h7 e+ Z) l* h, D5 d0 z. _ dnscmd ServerName /Info [Property]
" i* j( f+ d4 A$ u- L2 z 参数:
X& S" d' R9 F( N( y) h ServerName
8 w6 d3 A0 [" @6 n, l# r 服务器名称在上一篇中已经介绍过,此处省略。 & ? j: E6 Q! e8 n) b, ?( K
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。7 W% ^7 Y5 f" [* B, O
下面是该命令使用的一个比较完整的例子:- I5 c$ A" l# a6 V
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
9 F3 A# {: u" L" `4 Q/ zdnscmd 172.16.12.1 /info 只使用命令而不使用参数4 u( b& X- {$ i1 E, {" P
输出的信息:
/ v' I/ _; S5 Y, N m0 K. UDNS Server 172.16.12.1 Information:8 c0 W+ o; A8 g$ K" \/ x# n
C:\>dnscmd 172.16.12.1 /info
6 A* R+ L& A9 d( |1 h! qQuery result: 查询结果
, G4 F0 _" g- t# a0 YServer info: 服务器信息
6 J. v# I2 f! W/ R( ]6 _" P. B7 X4 L8 Z ptr = 00074718 端口5 S7 L! z/ [5 d, _
server name = myserver.microsoft.com 服务器名称
1 |. Q7 I/ q' W+ N7 C# w version = C2000005 版本
( f; K* J% O! J2 U7 y! R0 m( Z& F9 r' k DS container = c DS“容器”
' E3 H' ?, ]7 n2 X# T" A/ w3 v Configuration: 配置信息 这些信息的含义请参考有关资料) l- u9 o0 K' U3 v
dwLogLevel = 00000000
' l Q' i; g6 m/ o+ g dwDebugLevel = 00000000# Y0 g' S$ I8 h1 u
dwRpcProtocol = FFFFFFFF! w# P1 s5 X" I8 J
dwNameCheckFlag = 000000024 t" o2 ^0 S/ t
cAddressAnswerLimit = 05 a+ j2 F4 O0 q2 V* v
dwRecursionRetry = 3. L# J `& D% x
dwRecursionTimeout = 15 e3 X" E0 c& D9 `3 o
dwDsPollingInterval = 300
) A) n5 V& E0 y7 s' V- B4 ] Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料1 B p* [7 t" g* G+ j6 e3 o8 R
fBootMethod = 3 & ]* I- @( ?4 I, ^
fAdminConfigured = 1 9 x( y6 f! G1 G& e: p ~
fAllowUpdate = 1 . R; D4 T' G( L1 E3 w, T/ b( o
fDsAvailable = 1
; b9 s3 ~3 v) j$ O" ?6 z: M2 a7 gfAutoReverseZones = 1
% w+ Q1 O7 K: R( t: J" ZfAutoCacheUpdate = 0
! i$ a7 k* R: e8 PfSlave = 0
* }3 ^! s7 d- I' n5 afNoRecursion = 0
! Y p" n* I# q5 ?' ]' |0 k) B% F- GfRoundRobin = 1 ) m R ~' d' o& l: M. t
fLocalNetPriority = 1 + c* C0 ^, C- y- k4 L: ?; x
fStrictFileParsing = 0 & U" P9 D5 ^. R8 d( `
fLooseWildcarding = 0 * {: z3 k0 d2 E) [0 i9 e+ l
fBindSecondaries = 1
1 C9 D. i; @- J% `fWriteAuthorityNs = 0
/ U# k2 _8 U8 q/ a, c& [7 xAging Configuration: & h/ Y, s7 j6 j E/ G3 g% g
ScavengingInterval = 0 & q% x2 Q1 R; ~1 X% L, j
DefaultAgingState = 0 7 Y/ P! r# }' n2 f) ^2 N, I
DefaultRefreshInterval = 168 $ r& ?, I( j8 R# [1 K9 H7 S# o
DefaultNoRefreshInterval = 168 z( k$ q6 g* y4 I
ServerAddresses: , U! G0 }' Q2 a, z3 _; F D; z- O
Addr Count = 1
- m7 R. B8 N( l2 ~5 ]+ y% } Addr[0] => 172.16.12.1
1 `- f8 Z: T# V2 b' Z' L ListenAddresses:
/ Q, t* A2 s, I0 c# f2 Z NULL IP Array." k9 j3 x* b- S: O& E; {. X- @0 ~
Forwarders:" D' }, B2 c/ H6 G+ l
Addr Count = 1* D9 f9 B( X- x" C! _# |" F4 A
Addr[0] => 172.16.4.3
$ U* g0 o2 I4 g forward timeout = 5
$ `$ o5 M, i2 B* Y+ h7 o! J slave = 0
$ t$ T7 Y/ s# a9 MCommand completed successfully.命令顺利执行完毕 ! w! U/ @3 q0 X6 a r+ f/ H
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
" N& Y* n' C" T9 f# A+ S' d 命令:/Config
- ^* t7 }7 v& `) u% F 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。 q. F. w9 i6 H% k& n, E3 o
1 C: G6 i3 B6 o% z3 Z 用法:
3 v5 U. O% ]7 Z5 F dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
2 Z) O4 Z1 J; m 参数
+ l! d; {& Y5 _+ b ServerName :服务器名称,意义同上
0 }# O$ s& h" _- }+ [ ZoneName:
8 [% C2 j8 y f6 e1 O, e 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
4 \$ n; t+ i* k0 C Property: 2 P4 n4 J6 P( O6 U" R& x
这个参数是属性。这里所说的属性有:
0 _, I* \7 y _( x2 q 与服务器有关的属性:例如:8 D5 F. I, e0 H4 Q! c
/EnableRegistryBoot
2 H$ f& |" a9 p% y$ F$ s- p0 T1 j/RpcProtocol L, E! d/ P, g% t, K
/LogLevel
1 Y3 l6 ~; `1 m1 S/EventlogLevel 等等 (限于篇幅未能全部列出)
/ F4 x9 ]2 Z/ ^ i2 \与Zone 有关的属性,例如:
1 I2 [) @; I' g1 o, B1 o /SecureSecondaries
( t; u- ~7 u6 j) ] /AllowUpdate. Q. v! z5 n! {
/Aging
- P$ J0 A" y8 |& ^( H0 q /RefreshInterval Value& ^* y" E, e! s$ a
/NoRefreshInterval Value0 D, W/ `5 {4 E" u! @
属性值:
: l1 ]$ N9 |8 I$ S$ M b 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
, n/ o& P& h& z从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。! S1 e Z6 c3 D( d1 ^' V
命令: /Statistics& E7 R- v. M3 M! d
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。% u1 z1 O- n2 y4 \
用法:/ A) p6 e; c/ ~
dnscmd ServerName /Statistics [Filter|/Clear]1 R6 u3 n0 y J; N0 W
参数:% O* ]4 X" D t7 N+ G# i
ServerName
3 L% }7 a4 |% i. k5 O服务器名称,含义同上。8 w# b! R9 Y' Q* u
可选参数介绍:0 p8 f3 ]1 M0 h7 @
共有两个参数,每次只能使用其中的一个。
5 M/ H$ ]& d4 F- R 1.过滤(Filter); \. H( {* [! `7 K1 F/ S- y* D
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。1 ?3 a0 C' |4 W: l/ F
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: $ d( G! X' N9 W5 D d* v/ w+ S
00000001 -- Time
. i R7 N( s+ [0 C& w' q 00000002 -- Query
3 W" {2 C. |( B d' T 00000004 -- Query21 H6 l: Y; n h; v+ K( ]3 c
00000008 -- Recurse: k9 B! |$ F+ }
00000010 -- Master
7 P- p v# X9 I0 ?4 o 00000020 -- Secondary
* F6 ?% s7 G5 W9 j 00000040 -- Wins* r" C H, g& T! `5 M9 P2 m
00000100 -- Update
. e- `, M g- U4 E" A5 A q 00000200 -- SkwanSec
! U* P z) \8 P' i R4 ~- m, O7 B 00000400 -- Ds
G7 W2 [2 v) E, M4 u/ s- ]! O 00010000 -- Memory
2 Q" h/ h/ U0 g- N: q 00100000 -- PacketMem' v. g9 f* L3 O' b6 P
00040000 -- Dbase) L; p$ ?8 y5 z) W$ n
00080000 -- Records
6 i+ q. X8 G' L* Z: V 00200000 -- NbstatMem
5 U: d) U& u- A3 `2 h- \, s/ E a; ] 2.清除 /Clear " ]8 F6 M0 [2 e, g- U W
这个参数用来清除统计信息。
7 A) G) u5 H6 d! K 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。) t9 ? i! I% ?3 p+ d. o5 O; L) h
: q O$ l) W& }2 N) M6 K ; m+ @; K \8 U6 x& ?
9 I, H" T$ L4 P0 r- g+ R0 { |