本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
: x- U! H; m, }9 d 命令: /Info 5 T! t6 A: o/ {& x8 b
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
: v( `6 R. s# q; E. C 用法:5 w/ W2 C b6 q5 q9 \ [
dnscmd ServerName /Info [Property]
2 a+ g5 R/ c, C( z! I8 _ 参数:
D4 u3 k4 g8 k* \: I; ] ServerName 5 h/ M# {& e' L ~& e3 |) Y
服务器名称在上一篇中已经介绍过,此处省略。 y! ]8 ^3 X- \# V$ C
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
# w8 Q2 t$ o- P/ m9 c 下面是该命令使用的一个比较完整的例子:
/ ^$ m% M6 \% B7 A0 h# x 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
$ d8 V! c1 j, L) O7 v+ mdnscmd 172.16.12.1 /info 只使用命令而不使用参数
; W- V! }% _: R1 I5 R$ y输出的信息:
! i; K1 A/ `+ V6 K% Z( QDNS Server 172.16.12.1 Information:
3 |$ Q2 \. `# D2 m$ Z8 M. AC:\>dnscmd 172.16.12.1 /info
) Z/ L. U# S8 |4 D' i! _Query result: 查询结果
" G8 u1 B/ G* f" _, E* p, Z5 mServer info: 服务器信息8 L) v% q2 P( `( m! v5 X
ptr = 00074718 端口( X. R: m0 V3 X
server name = myserver.microsoft.com 服务器名称
0 m8 E. }) |8 A+ X version = C2000005 版本
5 {1 O* _ J8 @3 Z$ u9 _) b- u DS container = c DS“容器”
+ V8 s Z3 Z4 i* Z6 } Configuration: 配置信息 这些信息的含义请参考有关资料8 ~5 {! {( A4 y n: o# ~1 y
dwLogLevel = 000000008 I% e: R. G5 h, ]3 E
dwDebugLevel = 000000008 n7 J0 i; b; _% K9 I
dwRpcProtocol = FFFFFFFF* j- B. R) @% [( b
dwNameCheckFlag = 000000029 F* c7 n* {# N# }& i3 k4 T
cAddressAnswerLimit = 0
$ z% P" p. |. a/ Z. J# H dwRecursionRetry = 3: k( q9 X, O' ~) ~5 ^' ]) P
dwRecursionTimeout = 15
' L/ r* S. k8 G# \5 m8 J& R dwDsPollingInterval = 300
5 ~ E; I0 K8 C Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料% M9 e% a) k% Q0 d! N5 K
fBootMethod = 3
' V6 G8 B# D' C0 Z% i4 |fAdminConfigured = 1
2 G4 S# q8 P8 [0 @4 zfAllowUpdate = 1 # U% v: r* O: W- J5 N2 o7 [
fDsAvailable = 1 " T' U) w/ s. O' F
fAutoReverseZones = 1
3 p, F3 _/ v5 l. yfAutoCacheUpdate = 0 : f/ c* Z' k* {, _3 z
fSlave = 0 ' O+ }, X8 }0 n/ p7 p% X9 ?
fNoRecursion = 0
l( n# l" ^1 B; J2 I! ~fRoundRobin = 1
; Q, P- T* I/ b9 V3 p$ m! E. CfLocalNetPriority = 1
) e/ d# M# R# @1 ]" j! w% WfStrictFileParsing = 0 % W9 R# }* {0 k4 Z
fLooseWildcarding = 0 ' E5 N2 Y, T$ `( A; A
fBindSecondaries = 1 6 p" J% q8 W( B) q5 n
fWriteAuthorityNs = 0
+ c/ k. E. n7 E' Q5 mAging Configuration: + s& O' E0 Z( t) L0 h
ScavengingInterval = 0 , W- }# D: ^1 Y% s2 c* c0 \$ h
DefaultAgingState = 0 4 z. Z- Y$ k( M
DefaultRefreshInterval = 168
6 l7 u4 J/ O7 @* a, L; sDefaultNoRefreshInterval = 168
3 m; [3 Z/ j( W" k* F2 V ServerAddresses:
1 b1 Z8 [, E: Y0 v k Addr Count = 11 ?( [" J4 p' i
Addr[0] => 172.16.12.12 y# \8 O- ~, n; ?
ListenAddresses:
* K+ Y! ?4 @5 z8 }& ~3 } NULL IP Array.' @9 E: u. w ~1 g
Forwarders:
" Z; l" f* g2 v g2 y1 ~ Addr Count = 1
. V3 v7 P3 v( l" n0 b Addr[0] => 172.16.4.3
) v! `4 A& u+ f- ?1 A" V forward timeout = 5
5 v4 D* c8 X3 a slave = 0; {5 f: ^2 \) J! [
Command completed successfully.命令顺利执行完毕
" {1 j s% y: S1 K' C5 g/ h 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
Y) i( a+ i# S) z6 |5 \) Q- v 命令:/Config
w1 a9 F' D' t& r v3 C 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
' T, P% x$ S3 J6 k$ c5 a# E
2 c. U) q# t/ t; I+ C 用法:" V; j! s8 d4 t) R) L5 F
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
) Q8 Y* K' ]8 g5 p 参数 {" [, K% |6 `' p* l' K
ServerName :服务器名称,意义同上 V$ u( C7 T0 b: E% \
ZoneName:' o0 I- n4 A- j
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
( g* p1 \& ^9 { Property:
7 \6 y* X$ J5 k" b2 s" H' D, M 这个参数是属性。这里所说的属性有:
0 V3 B8 l& i5 j# e8 F: q" w 与服务器有关的属性:例如:! W) r( T- @( h3 E i* q5 Q
/EnableRegistryBoot! l+ k6 \7 O7 X) E( {& W
/RpcProtocol
3 q% A) H. q6 ]6 H/LogLevel$ T' S7 T( s: t' e5 ~
/EventlogLevel 等等 (限于篇幅未能全部列出)
) R2 J" @. U" j' W与Zone 有关的属性,例如:3 }9 t& N0 W- u' l0 w; C
/SecureSecondaries( q0 D+ L7 O7 m! {+ X& K
/AllowUpdate2 k) L! G5 M/ M4 w8 d& E" v, _
/Aging
+ [) R4 F9 a$ i" u* c4 L" i /RefreshInterval Value, E8 ~4 w6 G+ c9 K
/NoRefreshInterval Value
/ w2 I& a- h5 u" v 属性值:: A! P% j$ t! z7 I* r
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
+ ~6 Y- G' e2 N% P! E' L# M从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。( Y! i' E* `: V7 I
命令: /Statistics9 v* h6 L% V- Q$ r6 O/ D
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。- b# m! e' `4 G- g
用法:
& G$ z% U( e. Q; ?& J, C dnscmd ServerName /Statistics [Filter|/Clear]: W& `1 C) o/ Q
参数:
3 ^9 q% i1 T% C/ r! u% EServerName
0 b! F/ l0 M/ a( A7 t% W# P J服务器名称,含义同上。
- J5 Z( }8 P/ }可选参数介绍:
+ D0 l9 N% j% W共有两个参数,每次只能使用其中的一个。
v0 B2 U& y* E$ {# ~ 1.过滤(Filter)
9 \0 d" `( B3 o5 D5 B, c 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
D: v1 F# }+ B$ K: O- Z/ I; d' L9 G可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
- L' r2 j3 B! p( M# | R 00000001 -- Time# j; V+ X I0 S+ R9 n
00000002 -- Query
5 o' x2 d d z% |! R3 ~9 ~% d& Z 00000004 -- Query2
p1 G- h/ `2 w$ @8 S' p- U 00000008 -- Recurse
5 o/ A4 P- p8 q( W' B7 W% Q& ?( r/ | 00000010 -- Master; `7 t: @$ \) E c1 }
00000020 -- Secondary+ {$ ]8 T3 ?2 D( t/ g: j" k5 b
00000040 -- Wins
# B$ j% C) g6 @ 00000100 -- Update
, s' C, U$ D& ~ 00000200 -- SkwanSec) L) o. S; M6 d% }
00000400 -- Ds7 f0 D6 z" z$ B9 y! M9 u
00010000 -- Memory' f$ K! L+ ]/ O# _/ R
00100000 -- PacketMem* H. C6 d2 v: i
00040000 -- Dbase. }- r5 `+ i& r) Z2 I: J* A1 B
00080000 -- Records3 X3 w( c1 n. _5 V7 `, b# ^, J
00200000 -- NbstatMem
% y9 X& v$ }3 T( d9 C- j 2.清除 /Clear 1 n0 P8 M: X' p; T3 L
这个参数用来清除统计信息。
& K( ^' M; z/ W0 l0 O 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
# H' I) m6 R0 U3 U: [) S
( y/ ?, P! y) t! j# A+ V4 q- n; [ . a; N C6 S5 h! }; y
: A6 x- I! f. \% v; Q( P/ Q
|