本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
- P) i5 z6 K5 O 命令: /Info
) o5 A3 t$ N6 x) K; _ 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
0 j6 H) ?! y2 h# R' F0 I" E 用法:
9 p1 y7 u4 j& g2 ^' W dnscmd ServerName /Info [Property] 4 A1 L8 n3 z5 W1 J, m, R
参数:! }5 ~; d+ A' I! U
ServerName
) G, k ]/ U, y# t5 [ 服务器名称在上一篇中已经介绍过,此处省略。 ! f- D" E0 _4 L' q0 D2 ?; X7 {
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。# v4 L6 W$ Q# R$ O0 Q
下面是该命令使用的一个比较完整的例子:
; ^% \0 ^3 r9 ` r7 Z/ l9 n- r% w8 Q 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:1 F9 _. l% {1 f- q1 y
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
7 G; C) ~% j9 Y# H2 T9 G输出的信息:7 [/ `; _9 [8 |0 q9 ?3 H7 U
DNS Server 172.16.12.1 Information:7 E. x3 @% J# O
C:\>dnscmd 172.16.12.1 /info
" C7 `1 Z. p5 K9 J. d/ d. wQuery result: 查询结果% M0 F% M! n2 i9 @# Q+ t, x& g
Server info: 服务器信息
' g. ^, V u; r; ` ptr = 00074718 端口7 Y: `, [" U3 k' W7 L
server name = myserver.microsoft.com 服务器名称
: \4 e! j/ o" M5 X version = C2000005 版本
! M. B3 Z8 A. Y/ b" d DS container = c DS“容器”
! }1 ?! ^6 H6 ~) A$ I$ f% ^# n Configuration: 配置信息 这些信息的含义请参考有关资料$ T) l- ]) L+ Y9 Y8 F& R- E
dwLogLevel = 00000000
, [+ t8 y2 z5 v( @, J$ g+ n dwDebugLevel = 00000000' O& F& W, i% @
dwRpcProtocol = FFFFFFFF+ b$ V- T1 |, K5 k% a& p1 P
dwNameCheckFlag = 00000002
# c3 i- p: M' [# K R k o cAddressAnswerLimit = 0 ?/ L2 B" T; M; B/ X0 C
dwRecursionRetry = 3
; f" O6 L& W( D5 ?5 m+ P dwRecursionTimeout = 15
& Z+ g! v; D+ R4 M' B+ V6 j dwDsPollingInterval = 300/ R' a1 w4 @- y+ H
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
' P+ O) l, @) Y+ g( mfBootMethod = 3
( ?' w, g0 r! K% z1 |9 c( l% N8 j5 EfAdminConfigured = 1
6 Z$ H, @, P9 Q% u9 TfAllowUpdate = 1 # X+ i. x' T# y$ L2 J) c7 r
fDsAvailable = 1 , W a& [- b, s
fAutoReverseZones = 1
; q% N/ t3 ]+ H" Y% ffAutoCacheUpdate = 0
, ]2 W) E# }. n+ RfSlave = 0
1 H! c; X# E) N" _9 UfNoRecursion = 0 ) i! H! A; Q, q$ Z% E
fRoundRobin = 1 ( R/ c5 \ @# e# v" ~5 z
fLocalNetPriority = 1 " C: ]5 m! L1 p0 `% e$ }9 |
fStrictFileParsing = 0
7 J& [4 Q, e! d, T x8 D( LfLooseWildcarding = 0
; G- J$ l0 w [, |$ I/ DfBindSecondaries = 1 2 ^: v3 x X" [1 M: L1 S+ |/ P' {) ]
fWriteAuthorityNs = 0
5 e" ^8 L' F; ~9 F) XAging Configuration:
( z X+ h+ N, [8 N7 m6 T2 s; SScavengingInterval = 0
! O8 v; g8 L7 ?, _$ F1 [DefaultAgingState = 0
3 I" J2 \% L& z9 n$ E0 ]% ]DefaultRefreshInterval = 168
: k Y l, [/ D) k0 v* I/ ] M. @+ yDefaultNoRefreshInterval = 168 ( v( O" l% f. P$ y( L! w
ServerAddresses:
8 D( A4 e1 G$ }1 } Addr Count = 1' A" P5 k6 G* u$ P5 K
Addr[0] => 172.16.12.18 U; I2 a9 ?% q
ListenAddresses:3 [) H, h$ l8 N/ M
NULL IP Array.
* V8 M' g: P2 W* k0 ? Forwarders:* P: h- z6 e0 y
Addr Count = 1
6 U/ {. h$ g6 j" ]9 W Addr[0] => 172.16.4.3
. O2 A+ k g6 H( ? forward timeout = 5
7 S. O4 E m% _( s7 k% o' L slave = 0% [! Z# D& ~6 [) Q# a7 z$ b1 i" d6 z
Command completed successfully.命令顺利执行完毕 " H* c' K1 b; r
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 1 q& t# z! W2 a( p8 s
命令:/Config
8 E' }0 Y" W0 U. U4 _. R3 u 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。' ^* Z0 D5 Y; Q
' v" q1 [5 E: Y6 J% b
用法:
6 Y5 i6 ~1 \$ |. e2 k dnscmd ServerName /Config [ZoneName |..AllZones] Property Value% R: S J+ W2 \1 C# G$ g
参数
. ?2 l1 G7 `8 P9 Y$ a ServerName :服务器名称,意义同上 0 z: V9 z8 |! x# d6 V
ZoneName:0 q7 \( _4 W( ^) y
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
9 K4 L! R: N, g' H8 a! _ Property:
' B, H4 f/ R; @+ s 这个参数是属性。这里所说的属性有:2 r- M( `8 V: K* g( Y
与服务器有关的属性:例如:
, `" Z* a* ?2 n5 a; m- ~/EnableRegistryBoot! L4 i6 K/ c" T% q6 M% L+ t: M
/RpcProtocol- ?9 I1 Y6 [ s1 L" d$ B1 N7 J1 V: Z
/LogLevel: q- _: g4 y, ]
/EventlogLevel 等等 (限于篇幅未能全部列出)
) V3 n+ z4 I' W" K( q W) D与Zone 有关的属性,例如:
; Q8 p2 y3 S! z8 i) w2 t2 s /SecureSecondaries% X- H% J' {, a8 c) c: G8 M j
/AllowUpdate
& ?& b! E$ [# P& L! d/ E { /Aging
6 X! J9 W" L3 ~3 x* P* b /RefreshInterval Value, K$ s( s T! L, O; `! ]' j
/NoRefreshInterval Value8 O: b: b) f) ?5 K! d! c1 l
属性值:
( H& B6 q8 m v" G+ C% V% f9 K 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。: K4 f8 k- V# Q4 E9 R
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
0 o* a- ]' l- F3 [/ x0 x8 P 命令: /Statistics
Y3 X' `8 z/ d) F8 H 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。! Q+ W& _* J% D7 _) t( G) s+ s( w
用法:
% J5 M" C) S8 {6 n/ A2 R" [, V a dnscmd ServerName /Statistics [Filter|/Clear]
' Q5 K! p) F0 ?; l! m. a 参数:
. p$ S D9 [) F" L6 L; ?! NServerName ( j1 { d$ r( [9 \
服务器名称,含义同上。
! P4 S9 X- K, A8 K8 i$ c9 c, j可选参数介绍:
; J1 o7 U; c- ~# s共有两个参数,每次只能使用其中的一个。' q, k: l1 I( p; q5 c" Z
1.过滤(Filter)3 v: X5 s6 M! n% Q$ w5 `
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
2 T W' S ^1 }, y1 E. L, @4 V可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
' f: S- Q& f5 Z* q 00000001 -- Time
) \! v; c" D R$ q# X1 J 00000002 -- Query
5 U7 B" j7 T+ m) e& h 00000004 -- Query27 c: R* a+ }. ]9 Z( `! ?8 v
00000008 -- Recurse
* v2 B& ~+ C( \0 h d/ R; s' j9 S. h, ^ 00000010 -- Master
1 m$ J$ \6 I, A/ V" v) _ 00000020 -- Secondary0 M; ^# }$ R% @" K
00000040 -- Wins
6 q2 E6 H& L# Z0 a7 R$ l) j 00000100 -- Update Z' U# J6 y2 ?
00000200 -- SkwanSec) k: }4 G% }, r% P7 K+ F( |; m
00000400 -- Ds
; i1 D5 s/ @+ Y- e) {; t9 P 00010000 -- Memory
$ s9 f3 G7 j2 H$ n# j 00100000 -- PacketMem
# ?/ z w2 z! O+ p1 g/ z 00040000 -- Dbase S3 J: C& _; h) t- c7 b
00080000 -- Records. G. \ B1 Q8 E7 ?3 j& l" l6 S9 i- Q. j
00200000 -- NbstatMem( v' o ~/ N P2 g+ B9 n1 |
2.清除 /Clear
* P5 r# k V$ T/ ^! Z! {$ l 这个参数用来清除统计信息。 [; p1 ~; t! l# @+ X/ b
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。7 A4 E3 x H* |4 L M6 i
3 R0 ?: R" U* ^6 v6 u/ D. M + M' p, f: K3 R/ ]- O9 C
( ~7 g% Z0 p8 G) ?0 A
|