本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。0 F" @. e9 M2 \* J" H
命令: /Info 0 o, X+ n- f2 I$ ?
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。# V* P% P, m9 t6 T
用法:$ u% r& w7 z2 _- \% K5 j9 W, g: ]
dnscmd ServerName /Info [Property]
; v2 ^# o% o/ y# s+ W 参数:
0 _' ?$ G7 g! h% t, E G ServerName
2 b2 r+ E9 }5 p7 {( H* \1 R9 k 服务器名称在上一篇中已经介绍过,此处省略。 9 }$ w3 r7 x0 p( \9 ~. c
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
! {/ K1 Y# G3 e 下面是该命令使用的一个比较完整的例子:
$ \3 C- V( u2 u. D 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
& }0 a {% D' r6 e6 k0 wdnscmd 172.16.12.1 /info 只使用命令而不使用参数9 E! \. s9 ]! w$ v
输出的信息:
1 c5 L3 X; r& N$ Q: ~; ~) G. d6 E8 JDNS Server 172.16.12.1 Information:) Y8 f! x6 x) E3 Q
C:\>dnscmd 172.16.12.1 /info
8 H0 {. S, e& S6 R$ L7 u. kQuery result: 查询结果
* \/ i$ j0 \2 ]Server info: 服务器信息
: O/ v: }9 I9 d9 `$ Z9 J ptr = 00074718 端口
/ P# L- d3 O, @& T( D# \2 s& m S5 p server name = myserver.microsoft.com 服务器名称
, J5 }& @* ?( P* ^ version = C2000005 版本
* r: q5 f3 r. D: q; ~1 O! [6 r DS container = c DS“容器”9 z$ P8 O; x1 I4 @; Q$ \( J0 N7 c
Configuration: 配置信息 这些信息的含义请参考有关资料. f, e% O! h, h" |& C# b0 H. p
dwLogLevel = 00000000
% o E1 M( p: B3 C& f6 \/ K dwDebugLevel = 00000000
( t! A$ ]( Y0 R( [6 @ dwRpcProtocol = FFFFFFFF1 [! Z% a9 N' j; @& J) L
dwNameCheckFlag = 00000002
* L: a' V& E5 g8 N6 a1 T" C8 V' }" r cAddressAnswerLimit = 0+ ^# M2 [2 e7 P. J% \
dwRecursionRetry = 3
2 ^' x! j- c0 Q# }) U) v- i dwRecursionTimeout = 154 U4 o) p. A/ s0 i2 e0 g ~
dwDsPollingInterval = 300
) w4 t3 g4 M: h Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
7 k8 ^( _3 X/ J7 l5 W6 QfBootMethod = 3
, S/ f( j2 Y0 n- SfAdminConfigured = 1 : J8 K) E* ^, Q3 \9 k
fAllowUpdate = 1
( o" U: e- ?9 b1 X, Y3 ?0 efDsAvailable = 1
d m7 D3 y# E: P. U, XfAutoReverseZones = 1 & E8 ?3 |! d4 q% o; G8 r* H
fAutoCacheUpdate = 0 " c& s. d) L6 X5 m$ |7 P
fSlave = 0 4 a% @" z/ P% i# f
fNoRecursion = 0 ' t* K9 t6 S* I. L: n3 W
fRoundRobin = 1
* |4 S7 {8 w) f0 {! WfLocalNetPriority = 1 7 h& w1 G l7 V5 h" f
fStrictFileParsing = 0
3 x; _! f; c9 p% `# T4 e6 LfLooseWildcarding = 0 3 H% {+ B. O/ T) L9 n
fBindSecondaries = 1
X3 L6 ~) d- G) R$ I% DfWriteAuthorityNs = 0 2 }5 \" d5 O& o2 ~, e- l
Aging Configuration: \+ {: U( k: M
ScavengingInterval = 0 Z4 R; |( P) U1 e F( _1 H
DefaultAgingState = 0
& V; i2 O$ x/ ?6 k. s0 }DefaultRefreshInterval = 168
8 C$ x3 e( I# dDefaultNoRefreshInterval = 168
/ t3 i3 f9 q8 Y% p8 B* ^: e ServerAddresses: # U" r! x( b/ [- L, t8 z
Addr Count = 1
( \- l4 G G5 R( a& M' R9 G |4 s Addr[0] => 172.16.12.1
! @ _/ J" o( A# P2 Q ListenAddresses:
( K% }1 D R$ h5 {9 ]7 Y NULL IP Array.
8 a4 b1 b7 Z; J% p Forwarders:
4 H- O! {3 @0 x Addr Count = 1
|* b2 N$ A' ^, \3 E Addr[0] => 172.16.4.3. O* n" |, d7 k/ M e+ j: L
forward timeout = 5
# _% R- Y4 ~& j# Y+ k- w$ R slave = 0
+ b# J; {2 \* T4 B% b$ S; e$ x/ Y4 ?Command completed successfully.命令顺利执行完毕 ' Y3 n- B5 u9 p5 l
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
" T3 U O& M2 F! B8 y2 E/ @ W/ ] 命令:/Config8 k0 l+ R j+ K$ D
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。 b$ J8 `( n5 A" K
5 d9 B9 R3 y, u5 u
用法:5 C$ O" Y! F+ d( i
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value0 @, U4 y2 S* n" `' U( n) x
参数" r. |6 V3 v4 \/ ?" a
ServerName :服务器名称,意义同上
( X8 O, K# p* ~$ j ZoneName:
# A0 g) j1 [2 v! h 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 % j s2 ^- A9 c
Property: ( X4 `" H4 a, j! h* f
这个参数是属性。这里所说的属性有:7 W0 ^3 A/ r: ?8 a" z' A
与服务器有关的属性:例如:
; @1 v5 u' ^% l$ X- Z, j( j( r# _/EnableRegistryBoot- d% u* O' Q3 V8 b! }. F5 G
/RpcProtocol$ O4 a8 w7 \* d3 e2 L; c" y* D; l8 S
/LogLevel
+ N6 ]8 h3 k( n1 N4 d0 v: a( r& R/EventlogLevel 等等 (限于篇幅未能全部列出), w- Z0 u+ p6 c% {; S
与Zone 有关的属性,例如:7 r$ T2 z! Y: G! `# \! [; M
/SecureSecondaries
' ?' D" x$ h* {: ?, [! \) E; K /AllowUpdate) U- H. s/ d. B
/Aging& G" c* P8 c: c) x0 J, Q* c# e1 g* h3 o
/RefreshInterval Value
5 _5 s' \6 v* J4 Q R/ Q /NoRefreshInterval Value
' |! m/ V4 y- W" ^9 e 属性值:
; i& R, E2 j6 |3 Y; k7 p4 o- {% n 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
" j5 \9 Z! K- G, k从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
9 t' R# t8 W5 o8 _, {$ ]& R 命令: /Statistics
. T+ |3 X1 E# W; c 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。3 d" B7 {6 p# b2 B/ O
用法:
: \ m) {* c9 q9 G dnscmd ServerName /Statistics [Filter|/Clear] M: m7 |3 L R
参数:
3 Z' @0 H: _! @/ l) ^ServerName ' y6 i/ }$ M1 m' w
服务器名称,含义同上。0 Q8 Q3 A9 R7 Q8 {; V! v
可选参数介绍:+ Z% Q6 b, ]) H" {7 E$ A
共有两个参数,每次只能使用其中的一个。. l3 ~! r) p# {- N
1.过滤(Filter)' P. W4 Y0 Z' V0 _# K
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
4 l& E0 w5 X2 A5 [1 n可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
- R: z* c# o; W9 X 00000001 -- Time; x5 A! Y S4 y/ e+ ~8 g) z+ o. O
00000002 -- Query5 V* A* E1 a5 W
00000004 -- Query2
4 N4 [$ k* O( x$ d- Q8 J- c8 N 00000008 -- Recurse1 v; U& o. u Q9 Z, N; X4 |1 I
00000010 -- Master
+ R- n. D2 f' i+ ~; Q5 k) I% c 00000020 -- Secondary
3 y4 z4 I3 H2 V 00000040 -- Wins
/ A6 I+ D$ R. |9 g9 V, G1 w 00000100 -- Update
! {, b9 I5 ^2 |" Y/ x- p7 ] 00000200 -- SkwanSec
] K D. X8 n) t 00000400 -- Ds
- N% t$ I9 ?+ q% P 00010000 -- Memory
( v: p. ?) ]. _3 t' M& c 00100000 -- PacketMem
" g0 x3 T) H$ P' f$ w 00040000 -- Dbase
2 H9 e! a5 |. d& b% X 00080000 -- Records. d+ f, z# I- y! H
00200000 -- NbstatMem
t8 }5 ]6 Z' a: ~5 F8 F9 G 2.清除 /Clear / V: k0 M" V6 k5 K) R
这个参数用来清除统计信息。1 s# U) \+ y( t1 k7 d8 u' A& K
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。7 E" E9 y n# s( F
8 S% Z; D1 _4 q: B8 L7 a7 I
4 z5 m+ ~ {$ `) ~% N4 h, r5 s, Q% O5 A& K
|